Exposes an additional logger that uses the test's root logger as the
parent for any TestCase instances constructor by the hook. The fixture
logger still continues to be the parent of the hook logger.
Also changes the CleanEveryN hook to explicitly get marked as a failure
if a ServerFailure exception is thrown, rather than relying on
TestReport.combine() to do so implicitly.
This prevents the FlushThread from running while the interpreter is
shutting down and the import machinery is uninitialized.
Also fixed an issue where a KeyboardInterrupt while running multiple
suites with --continueOnFailure would skip to the next suite, rather
than exiting resmoke.py.
Makes it so that a link to the logs for every test that ran is present
in the sidebar of the Evergreen UI. Multiple entries will appear for
the same test file when --repeat is used.
This also fixes an issue where the number of tests skipped would be
incorrect if the same test file was included multiple times in the
"roots" key.
Split out the passthrough tests into separate suites. The MongoDB
deployment is started up by resmoke.py so that we can record the
success/failure of each individual test in MCI.
Added support for parallel execution of tests by dispatching to
multiple MongoDB deployments.
Added support for grouping different kinds of tests (e.g. C++ unit
tests, dbtests, and jstests) so that they can be run together. This
allows for customizability in specifying what tests to execute when
changes are made to a particular part of the code.