aboutsummaryrefslogtreecommitdiff
path: root/tests/client_mode.rs
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-05-07 21:41:13 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-05-07 21:48:50 +0300
commitb0aa7b2cddc57a55a1c0285a1ea82b59ac9783bd (patch)
tree866e4bd3322e69c4916457cde420c7e4b74792ef /tests/client_mode.rs
parentdcfe11a7588fcd42471159453810abc9b7720a57 (diff)
fix: preserve osc8 hyperlinks in client rendering
fixes #73
Diffstat (limited to 'tests/client_mode.rs')
-rw-r--r--tests/client_mode.rs40
1 files changed, 22 insertions, 18 deletions
diff --git a/tests/client_mode.rs b/tests/client_mode.rs
index 958b48a3..f35ee301 100644
--- a/tests/client_mode.rs
+++ b/tests/client_mode.rs
@@ -158,14 +158,17 @@ fn ping_socket(socket_path: &PathBuf) -> String {
response.trim().to_string()
}
+#[allow(dead_code)]
#[derive(Debug, Deserialize)]
struct FrameWire {
cells: Vec<CellWire>,
width: u16,
height: u16,
cursor: Option<CursorWire>,
+ hyperlinks: Vec<String>,
}
+#[allow(dead_code)]
#[derive(Debug, Deserialize)]
struct CellWire {
symbol: String,
@@ -173,6 +176,7 @@ struct CellWire {
bg: u32,
modifier: u16,
skip: bool,
+ hyperlink: Option<u32>,
}
#[derive(Debug, Deserialize)]
@@ -246,8 +250,8 @@ fn client_connects_and_receives_frame() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2, "server should report protocol version 2");
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3, "server should report protocol version 3");
assert!(
error.is_none(),
"handshake should not have error: {:?}",
@@ -326,8 +330,8 @@ fn client_sees_headless_startup_config_diagnostic() {
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
stream
@@ -375,8 +379,8 @@ fn client_input_forwarded_to_pane() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Send an Input message containing "echo hello\n".
@@ -429,8 +433,8 @@ fn client_resize_sends_message() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Drain the initial frame(s).
@@ -486,8 +490,8 @@ fn server_shutdown_sends_message_to_client() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Send SIGINT so the server takes the graceful shutdown path and
@@ -713,8 +717,8 @@ fn client_receives_frame_after_pane_output() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Read the initial frame (server renders immediately on client connect).
@@ -767,8 +771,8 @@ fn navigate_mode_keybind_dispatch_in_server() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Drain initial frames.
@@ -885,8 +889,8 @@ fn graceful_shutdown_sends_server_shutdown_to_client() {
// Connect and handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect to client socket");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Drain initial frame(s).
@@ -983,8 +987,8 @@ fn client_receives_notify_on_agent_state_change() {
// Connect as a client and perform handshake.
let mut stream = UnixStream::connect(&client_socket).expect("should connect");
let (version, error) =
- client_handshake(&mut stream, 2, 80, 24).expect("handshake should succeed");
- assert_eq!(version, 2);
+ client_handshake(&mut stream, 3, 80, 24).expect("handshake should succeed");
+ assert_eq!(version, 3);
assert!(error.is_none(), "{:?}", error);
// Drain initial frame(s).