Opened 3 years ago
Closed 2 years ago
#1789 closed defect (fixed)
md5 egg doesn't run tests on the correct CHICKEN
Reported by: | sjamaan | Owned by: | Kon Lovett |
---|---|---|---|
Priority: | major | Milestone: | someday |
Component: | extensions | Version: | 5.2.0 |
Keywords: | Cc: | Kon Lovett | |
Estimated difficulty: | medium |
Description
The md5 egg's test suite will fail if you call chicken-install -test md5
when there is no csi
binary in $PATH
. I tried this just now while testing 5.3.0rc4
after installing it into a temporary directory.
This means if the CHICKEN binaries *are* in $PATH
but uses PROGRAM_PREFIX
or PROGRAM_SUFFIX
it won't work either.
Worse, if the csi
in $PATH
is a different one from the one corresponding to the chicken-install being called, the results may be misleading - either failure if the one installed there is buggy, or passing tests if the one installed there works even if the egg that was just installed is buggy.
I notice that there's a fallback to use $CHICKEN_CSI
and $CHICKEN_CSC
, but it appears that chicken-install
only passes those options to the build script, not the test script.
run.scm
is already loaded from the correct csi
, so for the interpreter I'd suggest just loading/including the test suite. But perhaps it's a good idea if chicken-install
would export those same environment variables when invoking the test suite... And/or have some way to figure out how to call the chicken binaries by exposing them from a module? (but that would be backwards incompatible, so the test suite would need to deal with older CHICKEN versions gracefully anyway).
Change History (3)
comment:1 Changed 3 years ago by
Cc: | Kon Lovett added; klovett removed |
---|---|
Owner: | changed from klovett to Kon Lovett |
comment:2 Changed 3 years ago by
comment:3 Changed 2 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
when env var not defined uses (pathname-directory (executable-pathname)) as the binary directory for csi/csc. (version 4.1.2)
egg version 4.1.2 has a possible solution