Description of problem: funit fails when frysk is installed from RPMs because it's looking in the original source and build directory for test source files. Version-Release number of selected component (if applicable): How reproducible: 100% Steps to Reproduce: 1. Build the RPMs: rpmbuild -bb frysk.spec 2. Install the resultant RPMs 3. Hide (by renaming) the frysk src dir used to build the RPMs. 4. cd /tmp 5. /usr/lib/frysk/funit frysk.stepping.TestSteppingEngine Actual results: Java.io.FileNotFoundException and failure. Expected results: All tests pass. Additional info: The fix is contained in two separate patch files, one for the frysk.spec file, the other for files in the source tree.
Created attachment 294390 [details] tarball containing two patches to fix this bug
The issue resolved by this patch is that the existing build process is insufficiently flexible to allow some of the frysk tests to locate sample source files in all the conditions under which the tests normally take place, principally locally with TestRunner from within the build tree, and from the directories into which the frysk RPMs install frysk. (In the first instance, a source path relative to the build tree is necessary; in the latter case an absolute path to the destination of the frysk-debuginfo RPM.) The patch included with this bug resolves this problem and affects both the frysk spec file and files within the frysk source tree. The patch allows the specification, via configuration option, of the appropriate source path. Without this patch, some funit tests in the RPM installation of frysk are guaranteed to fail for reasons having nothing to do with the proper execution of the code itself--the failures are due to a test environment different from that expected. With the patch, the affected tests will pass or fail on their own merits. (At present, with the version of the frysk code against which this patch was written (0.0.1.2008.01.18.rh1-1.fc8), all affected tests pass.)
frysk is dead