mirror of
https://github.com/samba-team/samba.git
synced 2025-01-26 10:04:02 +03:00
1f523a628a
When executing a shell script code "foo | bar", if "bar" terminates early, then "foo" can get I/O error when writing to stdout. The tdbtool stub did not wait to read anything from stdin when it is expected to. This would cause tests to fail randomly under load when tdbtool process exited early. Similarly, debug function read from stdin only under certain conditions (higher debug and when not reading from tty). Otherwise, exited early. Thanks to Andrew Bartlett for noticing the problem and Catalyst Cloud (http://catalyst.net.nz/cloud) for providing resources to test fixes. Signed-off-by: Amitay Isaacs <amitay@gmail.com> Pair-Programmed-With: Martin Schwenke <martin@meltin.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Michael Adam <obnox@samba.org> Autobuild-Date(master): Fri Mar 20 16:26:37 CET 2015 on sn-devel-104
eventscript unit tests ====================== This directory contains some eventscript unit tests for CTDB. These tests can be run as a non-privileged user. There are a lot of stub implementations of commands (located in stubs/) used to make the eventscripts think they're running against a real system. Test case filenames look like: <eventscript>.<event>.NNN.sh The test helper functions will run <eventscript> with specified options. If using the simple_test() or iterate_test() helper functions then the 1st <event> argument is automatically passed. When simple_test_event() is used the event name must be explicitly passed as the 1st argument - this is more flexible and supports multiple events per test. Examples: * ../run_tests.sh . Run all tests, displaying minimal output. * ../run_tests.sh -s . Run all tests, displaying minimal output and a summary. * ../run_tests.sh -s ./10.interface.*.sh Run all the tests against the 10.interface eventscript. * ../run_tests.sh -v -s . Run all tests, displaying extra output and a summary. * ../run_tests.sh -sq . Run all tests, displaying only a summary. * ../run_tests.sh -X ./10.interface.startup.002.sh Run a test and have the eventscript itself run with "sh -x". This will usually make a test fail because the (undesirable) trace output will be included with the output of the eventscript. However, this is useful for finding out why a test might be failing.