serval-dna/tests
Andrew Bettison 2e0cb4e6dc Improve test framework error handling
If runTests() terminated with a FATAL condition, the cause was not
always apparent, because the error message usually got overwritten by
the test progress output on the user's terminal.  To fix this, the main
loop's standard error is now collected in a temporary file which is sent
to standard error just before exit.

The test framework was not always handling its internal FATAL error code
(255) correctly, so this has been fixed.

One cause of a FATAL termination was if a test's unique temporary
directory, which was based on its Process ID, already existed.  Anything
that left a temporary directory behind increased the likelihood of a
FATAL in a subsequent test run.  (For example, one keyring test case was
not killing its Serval DNA daemon, and the daemon was re-creating its
instance directory before eventually terminating itself.  This test case
has been fixed.)

The test framework now allocates its temporary directory by re-trying
different random numbers until mkdir(1) succeeds, and only fataling
after 20 failures.
2018-03-29 15:09:45 +10:30
..
testdata Add keyring back-compatibility test case 2013-04-29 15:11:04 +09:30
all Add Swift keyring client API with tests 2018-03-06 15:29:17 +10:30
alljava Add missing tests/alljava script 2018-03-06 18:31:26 +10:30
compatibility Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
config Detect Wifi and cabled ethernet on linux systems, allow matching by type in config 2017-11-07 16:53:19 +10:30
directory_service Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
dnahelper Fix test defs: pop_instance did not restore instance 2014-03-03 15:14:34 +10:30
dnaprotocol Migrate and refactor more interfaces from batphone 2014-02-19 15:35:08 +10:30
framework Improve test framework: assert_fork_is_running 2014-04-30 11:10:20 +09:30
jni Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
keyring Improve test framework error handling 2018-03-29 15:09:45 +10:30
keyringjava Update Java API to use new Keyring REST API 2018-03-19 18:07:33 +10:30
keyringrestful Refactor all REST API tests 2018-03-27 17:29:21 +10:30
keyringswift Add Swift keyring client API with tests 2018-03-06 15:29:17 +10:30
logging Rewrite logging system 2018-03-06 15:16:56 +10:30
mdp Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
meshmb Allow following a feed that isn't in rhizome yet, and override the displayed name 2017-06-20 12:17:57 +09:30
meshmbrestful Refactor all REST API tests 2018-03-27 17:29:21 +10:30
meshms Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
meshmsjava Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
meshmsrestful Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
msp Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
rhizomeall Add 'rhizomeall' test script 2015-12-01 00:51:15 +10:30
rhizomechannels Rearrange interface config to support unicast settings 2015-03-23 13:35:22 +10:30
rhizomejava Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
rhizomeops Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
rhizomeprotocol Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
rhizomerestful Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
rhizomestress Rearrange interface config to support unicast settings 2015-03-23 13:35:22 +10:30
routing Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30
server Move vomp console feature to test binary 2016-11-21 11:09:27 +10:30
vomp Use rigorous quoting throughout test scripts 2018-03-27 17:29:21 +10:30