Tests trigger shotover shutdown and then unwrap the result of the join handle #139
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I figured out a solution to the problems I hinted at in #138
The solution to panicking in drops in test helpers is to check
std::thread::panicking
to tell if we are currently panicking. If we are panicking then we should not run any code that can panic.We could possibly simplify the code in the future by allowing double panics if rust-lang/rust#82850 is ever resolved. But the current implementation is fine and its probably desirable to never double panic regardless of rust-lang/rust#82850 anyway.
closes #134
This PR improves tests such that:
error!
DockerCompose
can no longer cause double panics.This PR improves the shutdown process by adding the trigger_shutdown broadcast channel so that we can trigger a shutdown from any source.
This PR supercedes #138 so we can just close 138 if we are happy with this one.