message: don't hang forever on test panics
diff: @@ -8,9 +8,15 @@ use reqwest::{Client, Method, RequestBuilder};
  use std::sync::{Arc, Mutex, MutexGuard};
  pub(crate) fn wrapper(f: impl FnOnce(&TestEnvironment) -> Result<(), Error>) {
  + use std::panic;
  let env = TestEnvironment::new();
  - let result = f(&env);
  + // if we didn't catch the panic, the server would hang forever
  + let maybe_panic = panic::catch_unwind(panic::AssertUnwindSafe(|| f(&env)));
  env.cleanup();
  + let result = match maybe_panic {
  + Ok(r) => r,
  + Err(payload) => panic::resume_unwind(payload),
  + };
  if let Err(err) = result {
  eprintln!("the test failed: {}", err);
  