diff --git a/packages/runtime-core/src/provider/host_endpoint/tests.rs b/packages/runtime-core/src/provider/host_endpoint/tests.rs index 664a892bd..2041accfc 100644 --- a/packages/runtime-core/src/provider/host_endpoint/tests.rs +++ b/packages/runtime-core/src/provider/host_endpoint/tests.rs @@ -306,11 +306,11 @@ fn accepted_stream_preserves_payload_and_half_close() { peer.write_all(b"reply").unwrap(); }); let mut stream = endpoint.connect(Duration::from_secs(2)).unwrap(); - stream.write_all(b"synthetic endpoint payload").unwrap(); - stream.shutdown(std::net::Shutdown::Write).unwrap(); stream .set_read_timeout(Some(Duration::from_secs(2))) .unwrap(); + stream.write_all(b"synthetic endpoint payload").unwrap(); + stream.shutdown(std::net::Shutdown::Write).unwrap(); let mut response = String::new(); stream.read_to_string(&mut response).unwrap(); assert_eq!(response, "reply"); diff --git a/packages/runtime-core/src/provider/relay_owner/managed.rs b/packages/runtime-core/src/provider/relay_owner/managed.rs index 95fc43f6e..976f6eaa3 100644 --- a/packages/runtime-core/src/provider/relay_owner/managed.rs +++ b/packages/runtime-core/src/provider/relay_owner/managed.rs @@ -2361,8 +2361,9 @@ mod tests { .unwrap(); let canceled = Arc::clone(&retry.0.canceled); drop(retry); - assert!(canceled.load(Ordering::Acquire)); + // The reactor may still hold the command clone after delivering its reply. fixture.owner.verify_alive().unwrap(); + assert!(canceled.load(Ordering::Acquire)); assert!(authenticate(&fixture.sockets[0], &fresh.credential).is_err()); assert!( fixture