aboutsummaryrefslogtreecommitdiff
path: root/src/server/headless/tests/mod.rs
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-07 16:14:46 +0300
committerGitHub <noreply@github.com>2026-09-07 15:14:46 +0200
commite7d8220788b4fa7c266a1e4457591b694478771c (patch)
tree272303d74e0b58c11f9c0c434dae8335d3d06703 /src/server/headless/tests/mod.rs
parent482818130407691154d1635d4029b95d0e730104 (diff)
fix: preserve sessions after interrupted pane exits (#3418)
* fix: preserve sessions when pane shells are signaled refs #3415 * fix: preserve shutdown checkpoints across platforms refs #3415 --------- Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com>
Diffstat (limited to 'src/server/headless/tests/mod.rs')
-rw-r--r--src/server/headless/tests/mod.rs21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/server/headless/tests/mod.rs b/src/server/headless/tests/mod.rs
index 5e0e5d01..63f7264d 100644
--- a/src/server/headless/tests/mod.rs
+++ b/src/server/headless/tests/mod.rs
@@ -3614,7 +3614,12 @@ async fn pane_death_reconciles_each_client_view_and_focus() {
server.clients.get_mut(&71).unwrap().outer_terminal_focus = Some(true);
server.clients.get_mut(&72).unwrap().outer_terminal_focus = Some(false);
- assert!(server.handle_internal_event_with_forwarding(AppEvent::PaneDied { pane_id: dead_pane }));
+ assert!(
+ server.handle_internal_event_with_forwarding(AppEvent::PaneDied {
+ pane_id: dead_pane,
+ exit_reason: crate::platform::ChildExitReason::Exited
+ })
+ );
assert_eq!(
server.shell_tab_id_for_client(71).as_deref(),
@@ -3678,7 +3683,12 @@ async fn pane_death_reapplies_controller_geometry() {
let shrunk = server.app.state.workspaces[0].test_runtimes[&first_pane].current_size();
assert!(shrunk.0 < 46);
- assert!(server.handle_internal_event_with_forwarding(AppEvent::PaneDied { pane_id: dead_pane }));
+ assert!(
+ server.handle_internal_event_with_forwarding(AppEvent::PaneDied {
+ pane_id: dead_pane,
+ exit_reason: crate::platform::ChildExitReason::Exited
+ })
+ );
let runtime = &server.app.state.workspaces[0].test_runtimes[&first_pane];
let grown = runtime.current_size();
@@ -3858,7 +3868,12 @@ fn expected_worktree_runtime_exit_does_not_release_agent() {
.pending_worktree_remove_runtime_exits
.insert(pane_id, 1);
- assert!(server.handle_internal_event_with_forwarding(AppEvent::PaneDied { pane_id }));
+ assert!(
+ server.handle_internal_event_with_forwarding(AppEvent::PaneDied {
+ pane_id,
+ exit_reason: crate::platform::ChildExitReason::Exited
+ })
+ );
assert_eq!(
server.app.state.terminals[&terminal_id].state,