aboutsummaryrefslogtreecommitdiff
path: root/src/app/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/app/api')
-rw-r--r--src/app/api/panes.rs26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/app/api/panes.rs b/src/app/api/panes.rs
index f1c3a667..9b9a28cc 100644
--- a/src/app/api/panes.rs
+++ b/src/app/api/panes.rs
@@ -2419,15 +2419,25 @@ mod tests {
),
);
- let response = app.handle_pane_selection_read(
- "req".into(),
- PaneSelectionReadParams {
- pane_id: public_pane_id.clone(),
- anchor: crate::api::schema::PaneTextPoint { row: 0, col: 0 },
- cursor: crate::api::schema::PaneTextPoint { row: 0, col: 4 },
- content_revision: None,
- },
+ let runtime = app
+ .state
+ .runtime_for_pane_in_workspace(&app.terminal_runtimes, 0, pane_id)
+ .unwrap();
+ let revision = runtime.content_seq();
+ runtime.test_process_pty_bytes(b"\r\nagent is still working");
+ assert_ne!(runtime.content_seq(), revision);
+ let mut params = PaneSelectionReadParams {
+ pane_id: public_pane_id.clone(),
+ anchor: crate::api::schema::PaneTextPoint { row: 0, col: 0 },
+ cursor: crate::api::schema::PaneTextPoint { row: 0, col: 4 },
+ content_revision: Some(revision),
+ };
+ assert_eq!(
+ app.pane_selection_text(&params).unwrap_err().0,
+ "stale_content"
);
+ params.content_revision = None;
+ let response = app.handle_pane_selection_read("req".into(), params);
let success: SuccessResponse = serde_json::from_str(&response).unwrap();
assert_eq!(