------------------
Added
- unittests in "tests/test_build.py", which are concerned with testing the build process.
- unittests in "tests/test_config.py", which are concerned with testing the functionality exposed by the config module
- Added "FigureTestResult" which allows to add a matplotlib figure directly as the result of a test.
- Added camera test "RepeatedResetTest"
- Added camera test "RepeatedFrameTest"
- Added camera test "CalculatePairNoiseTest"
- Added camera test "RepeatedCalculatePairNoiseTest"
Changes
- The "serve" command now has the option "host" which enables the specification of a different host IP address to bind
the web server to.
- The joining of paths is now integrated into the "get_path" function within the config module.
- The "flash" command now provides more output and the command produces an accurate return code in the case of an error
- Renamed the main method of the BuildRunner from "build" to "run". Added the option to skip the clone and flash steps
(for testing purposes). Furhtermore the method does not return a build report anymore, it has to be seperately
constructed.
- Deprecated "execute_script" with new version "run_script"
- The "test" command now has better console output and actually returns a meaningful error code
- The "init" command now has a flag "update" which only replaced the static assets and leaves the rest of the
installation intact.
Fixes
- Fixed the ufotest unittests to work with the new system of using the TestContext to construct the TestRunner
- Now only importing matplotlib exactly before the frame is actually to be displayed, because previously the "frame"
command would break in a headless SSH session, even if the frame was not even intended to be displayed...
- The "ci build" command now actually uses the test suite which is passed as the argument. Previously it would always
use the default option defined within the config file.
- Attempting to release the build lock when it is not locked not raises the appropriate exception.
- Attempting to construct a test report from a test context without an actual test run being executed before now raises
the appropriate exceptions
- The build lock is now uses the correct folder which can be changed at runtime.
- The build process now properly fails when the flash command fails.
- BuildWorker process now does not crash when a KeyboardInterrupt is received.
- BuildWorker process does not crash when the build process fails and also not when the email sending fails.
- If test suite is currently processing, one cannot access the test archive list in the web interface
presumably because the test folder already exists but no reports have been saved to it. The best course for
fixing this would be to prevent a crash for an empty test folder alltogether.
- Build and test reports are now properly sorted by start date within the web interface
- FIXED: The test are not executed in the order in which they are specified in the config file
- FIXED: Not necessarily a bug with this code but with the way the camera works: I feel like there is a problem with how the
decoding of the images works. I feel like all the images accumulate within the internal buffer of the camera and they
are ALL being read out with each call to ipedecode?