aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-04-07 23:22:41 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-04-07 23:22:57 +0300
commit25974892c779e994f9bc40ac357f40dc0b5e0347 (patch)
tree4998560c5039db2582cda42cde9cd5b2eeabd482 /tests
parent96f88c70e69d587e9c5821ea2777677c5fb1264c (diff)
fix: make pane run use bracketed-paste-aware send input
Diffstat (limited to 'tests')
-rw-r--r--tests/api_ping.rs22
-rw-r--r--tests/cli_wrapper.rs10
2 files changed, 29 insertions, 3 deletions
diff --git a/tests/api_ping.rs b/tests/api_ping.rs
index 84129752..9a7e3267 100644
--- a/tests/api_ping.rs
+++ b/tests/api_ping.rs
@@ -336,6 +336,28 @@ fn workspace_list_and_create_round_trip() {
.unwrap()
.contains("gamma"));
+ let send_input = send_request(
+ &socket_path,
+ &format!(
+ r#"{{"id":"req_12b","method":"pane.send_input","params":{{"pane_id":"{}","text":"echo delta","keys":["Enter"]}}}}"#,
+ pane_id
+ ),
+ );
+ assert_eq!(send_input["result"]["type"], "ok");
+
+ let waited_delta = send_request(
+ &socket_path,
+ &format!(
+ r#"{{"id":"req_12c","method":"pane.wait_for_output","params":{{"pane_id":"{}","source":"recent","lines":40,"match":{{"type":"substring","value":"delta"}},"timeout_ms":2000}}}}"#,
+ pane_id
+ ),
+ );
+ assert_eq!(waited_delta["result"]["type"], "output_matched");
+ assert!(waited_delta["result"]["matched_line"]
+ .as_str()
+ .unwrap()
+ .contains("delta"));
+
let waited_regex = send_request(
&socket_path,
&format!(
diff --git a/tests/cli_wrapper.rs b/tests/cli_wrapper.rs
index 97d309a4..3e9b9f31 100644
--- a/tests/cli_wrapper.rs
+++ b/tests/cli_wrapper.rs
@@ -126,7 +126,7 @@ fn send_request(socket_path: &Path, json: &str) -> serde_json::Value {
}
#[test]
-fn pane_run_sends_one_send_text_request_with_trailing_carriage_return() {
+fn pane_run_sends_one_send_input_request_with_enter_key() {
let base = unique_test_dir();
fs::create_dir_all(&base).unwrap();
let socket_path = base.join("herdr.sock");
@@ -179,9 +179,13 @@ fn pane_run_sends_one_send_text_request_with_trailing_carriage_return() {
let (first_line, second_line) = server.join().unwrap();
let first_request: serde_json::Value = serde_json::from_str(&first_line).unwrap();
- assert_eq!(first_request["method"], "pane.send_text");
+ assert_eq!(first_request["method"], "pane.send_input");
assert_eq!(first_request["params"]["pane_id"], "1-1");
- assert_eq!(first_request["params"]["text"], "echo hello\r");
+ assert_eq!(first_request["params"]["text"], "echo hello");
+ assert_eq!(
+ first_request["params"]["keys"],
+ serde_json::json!(["Enter"])
+ );
assert!(
second_line.is_none(),
"pane run sent an unexpected second request: {:?}",