aboutsummaryrefslogtreecommitdiffstats
path: root/tests/escape.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2019-11-03 14:48:09 -0500
committerJesse Luehrs <doy@tozt.net>2019-11-03 15:50:45 -0500
commitb7ab7295dcb5e4252acc25aee7d4261ac9cbd60f (patch)
treeeedd82f7df37ad41617e4d4bf565073536d0b41c /tests/escape.rs
parentd79e96ca09562b07d40fc39d14938967ab908a64 (diff)
downloadvt100-rust-b7ab7295dcb5e4252acc25aee7d4261ac9cbd60f.tar.gz
vt100-rust-b7ab7295dcb5e4252acc25aee7d4261ac9cbd60f.zip
more tests
Diffstat (limited to 'tests/escape.rs')
-rw-r--r--tests/escape.rs25
1 files changed, 22 insertions, 3 deletions
diff --git a/tests/escape.rs b/tests/escape.rs
index d3eda71..6793b5c 100644
--- a/tests/escape.rs
+++ b/tests/escape.rs
@@ -99,7 +99,7 @@ fn ris() {
vt100::MouseProtocolEncoding::Sgr
);
- screen.process(b"\x1bc");
+ screen.process(b"\x07\x1bg\x1bc");
assert_eq!(screen.cursor_position(), (0, 0));
let cell = screen.cell(0, 0).unwrap();
@@ -126,8 +126,10 @@ fn ris() {
assert!(!screen.underline());
assert!(!screen.inverse());
- assert!(!screen.check_visual_bell());
- assert!(!screen.check_audible_bell());
+ // bell states don't change with reset
+ assert!(screen.check_visual_bell());
+ assert!(screen.check_audible_bell());
+
assert!(!screen.application_keypad());
assert!(!screen.application_cursor());
assert!(!screen.hide_cursor());
@@ -156,4 +158,21 @@ fn decsc() {
screen.contents(0, 0, 23, 79),
"foobaz\n\n\n bar\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
);
+ assert_eq!(screen.cursor_position(), (0, 6));
+
+ screen.process(b"\x1b[?47h\x1b[20;20H");
+ assert_eq!(
+ screen.contents(0, 0, 23, 79),
+ "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
+ );
+ assert_eq!(screen.cursor_position(), (19, 19));
+
+ screen.process(b"\x1b8");
+ assert_eq!(screen.cursor_position(), (0, 0));
+
+ screen.process(b"\x1b[?47l\x1b[20;20H");
+ assert_eq!(screen.cursor_position(), (19, 19));
+
+ screen.process(b"\x1b8");
+ assert_eq!(screen.cursor_position(), (0, 3));
}