The method runInvivoTestingSession has locks and other synchronization
statements that may eventually neglect the execution of the in-vivo testing session.
In general during the test it is important to be (almost) sure that the runInvivoTestingSession is not skipped, otherwise it is likely that the tests will fail.
For example the tests in SimpleCarvingStateTest relies on an redefined version of runInvivoTestingSession.
Clearly the tests are still flaky, but somehow and hopefully their outcome should be a bit more stable.
If your build fail due to these kind of flacky tests, re-run them ... for the moment!
The method runInvivoTestingSession has locks and other synchronization
statements that may eventually neglect the execution of the in-vivo testing session.
In general during the test it is important to be (almost) sure that the runInvivoTestingSession is not skipped, otherwise it is likely that the tests will fail.
For example the tests in SimpleCarvingStateTest relies on an redefined version of runInvivoTestingSession.
Clearly the tests are still flaky, but somehow and hopefully their outcome should be a bit more stable.
If your build fail due to these kind of flacky tests, re-run them ... for the moment!