Most of the tests (with the exception of search tests with searches for goal states) exit when they fail. It would be better if we ran tests through to completion by reporting failures with the failAndContinue method that was recently added. (Of course, some tests must fail because a precondition for continuing wasn't met.)
Additional requirements:
- Cleanup
BaseJUnitTest#failedSearchTest. It's no longer needed if failAndContinue exists.
- Failures should be printed as they happen so that the errors are in their proper context. They shouldn't be printed twice though. This might have to be done with a
static IdentityHashSet that tracks which exceptions have been printed. This isn't the current behavior of failAndContinue.
- Users should be able to disable this behavior and get all tests to fail fast with a flag to
run_tests.py.
Most of the tests (with the exception of search tests with searches for goal states) exit when they fail. It would be better if we ran tests through to completion by reporting failures with the failAndContinue method that was recently added. (Of course, some tests must fail because a precondition for continuing wasn't met.)
Additional requirements:
BaseJUnitTest#failedSearchTest. It's no longer needed iffailAndContinueexists.staticIdentityHashSetthat tracks which exceptions have been printed. This isn't the current behavior offailAndContinue.run_tests.py.