aboutsummaryrefslogtreecommitdiffstats
path: root/tests/control.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/control.rs')
-rw-r--r--tests/control.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/control.rs b/tests/control.rs
index aba6915..8372cea 100644
--- a/tests/control.rs
+++ b/tests/control.rs
@@ -5,15 +5,31 @@ fn bel() {
let mut parser = vt100::Parser::default();
assert_eq!(parser.screen().audible_bell_count(), 0);
+ let screen = parser.screen().clone();
parser.process(b"\x07");
assert_eq!(parser.screen().audible_bell_count(), 1);
assert_eq!(parser.screen().audible_bell_count(), 1);
+ assert_eq!(parser.screen().contents_diff(&screen), b"\x07");
+ let screen = parser.screen().clone();
parser.process(b"\x07");
assert_eq!(parser.screen().audible_bell_count(), 2);
+ assert_eq!(parser.screen().contents_diff(&screen), b"\x07");
+ let screen = parser.screen().clone();
parser.process(b"\x07\x07\x07");
assert_eq!(parser.screen().audible_bell_count(), 5);
+ assert_eq!(parser.screen().contents_diff(&screen), b"\x07");
+
+ let screen = parser.screen().clone();
+ parser.process(b"foo");
+ assert_eq!(parser.screen().audible_bell_count(), 5);
+ assert_eq!(parser.screen().contents_diff(&screen), b"foo");
+
+ let screen = parser.screen().clone();
+ parser.process(b"ba\x07r");
+ assert_eq!(parser.screen().audible_bell_count(), 6);
+ assert_eq!(parser.screen().contents_diff(&screen), b"bar\x07");
}
#[test]