diff --git a/crates/workspace-server/src/hosts.rs b/crates/workspace-server/src/hosts.rs index 4027b221a..18fe40e22 100644 --- a/crates/workspace-server/src/hosts.rs +++ b/crates/workspace-server/src/hosts.rs @@ -8866,7 +8866,14 @@ mod tests { }) .await .expect_err("closed session must reject local operation without another request"); - assert!(matches!(error, WorkdirError::Unavailable(_))); + assert!(matches!( + error.classification_source(), + WorkdirError::Unavailable(_) + )); + assert_eq!( + error.failure_reason(), + Some(workdir::WorkdirFailureReason::SessionClosed) + ); server.join().expect("mock remote server finished"); } diff --git a/crates/workspace-server/src/server.rs b/crates/workspace-server/src/server.rs index 76d394da4..c006bb28c 100644 --- a/crates/workspace-server/src/server.rs +++ b/crates/workspace-server/src/server.rs @@ -37791,9 +37791,13 @@ mod tests { ))) .unwrap(); } + let error = write + .await + .unwrap() + .expect_err("mismatched or lost mutation response must remain outcome-unknown"); assert!(matches!( - write.await.unwrap(), - Err(workdir::WorkdirError::OutcomeUnknown(_)) + error.classification_source(), + workdir::WorkdirError::OutcomeUnknown(_) )); } }