Mon 11 Sep 2017 10:49:45 PM UTC, original submission:
When running the full test suite under a minimal environment, I noticed this strange behavior. It took me a while to narrow it down to a small reproducible test case, and I'm still not sure I've captured it well. But I can reproduce with the following (either as a script or in the interpreter)
I can only reproduce this error when I've built Octave and run 'make install', but I am still running Octave out of the build directory. If I haven't run 'make install' yet, I get no error, but I do get a much different result from the 'pathdef' function than normal. If I run the actual installed Octave I get no error, everything works fine.
The actual legitimate use case where this error comes up is
and at this point the test suite just exits, never finishes the fixed test scripts. This is a very realistic thing to do on a headless build box.
Some tests run which bring up gnuplot figures. The test case for the 'run' function calls 'addpath' and 'rmpath'. And then the test cases for 'pathdef' and 'savepath' fail. And by the time it gets to bc-overloads.tst it can't even locate the file in its load path, and the test function exits with an error.
I cannot reproduce this on the stable branch, this looks like new behavior.
As a workaround, maybe we shouldn't have unit tests that modify the load path. I'll see if removing all of those commands fixes this for me also.
|