aboutsummaryrefslogtreecommitdiffstats
path: root/tests/window_contents.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2019-11-05 16:49:46 -0500
committerJesse Luehrs <doy@tozt.net>2019-11-05 16:49:46 -0500
commit896a24f83585f0f30743e0db6b53e449b54d29f1 (patch)
tree68c40751137a2a266abe9c18c563bea174870547 /tests/window_contents.rs
parent9f9c519cbaa5384e666ffa2b5e1cf4f99780ba28 (diff)
downloadvt100-rust-896a24f83585f0f30743e0db6b53e449b54d29f1.tar.gz
vt100-rust-896a24f83585f0f30743e0db6b53e449b54d29f1.zip
reset attrs at the start of diffs
otherwise they might inherit the attrs state from the end of the previous state
Diffstat (limited to 'tests/window_contents.rs')
-rw-r--r--tests/window_contents.rs17
1 files changed, 13 insertions, 4 deletions
diff --git a/tests/window_contents.rs b/tests/window_contents.rs
index 32921b8..4f9ac2d 100644
--- a/tests/window_contents.rs
+++ b/tests/window_contents.rs
@@ -326,22 +326,31 @@ fn diff() {
let screen1 = parser.screen().clone();
parser.process(b"\x1b[5C\x1b[32m bar");
let screen2 = parser.screen().clone();
- assert_eq!(screen2.contents_diff(&screen1), b"\x1b[1;6H\x1b[32m bar");
+ assert_eq!(
+ screen2.contents_diff(&screen1),
+ b"\x1b[m\x1b[1;6H\x1b[32m bar"
+ );
compare_diff(&screen1, &screen2, b"");
parser.process(b"\x1b[H\x1b[31mfoo");
let screen3 = parser.screen().clone();
- assert_eq!(screen3.contents_diff(&screen2), b"\x1b[1;1H\x1b[31mfoo");
+ assert_eq!(
+ screen3.contents_diff(&screen2),
+ b"\x1b[m\x1b[1;1H\x1b[31mfoo"
+ );
compare_diff(&screen2, &screen3, b"\x1b[5C\x1b[32m bar");
parser.process(b"\x1b[1;7H\x1b[32mbaz");
let screen4 = parser.screen().clone();
- assert_eq!(screen4.contents_diff(&screen3), b"\x1b[1;9H\x1b[32mz");
+ assert_eq!(screen4.contents_diff(&screen3), b"\x1b[m\x1b[1;9H\x1b[32mz");
compare_diff(&screen3, &screen4, b"\x1b[5C\x1b[32m bar\x1b[H\x1b[31mfoo");
parser.process(b"\x1b[1;8H\x1b[X");
let screen5 = parser.screen().clone();
- assert_eq!(screen5.contents_diff(&screen4), b"\x1b[1;8H\x1b[X\x1b[C");
+ assert_eq!(
+ screen5.contents_diff(&screen4),
+ b"\x1b[m\x1b[1;8H\x1b[X\x1b[C"
+ );
compare_diff(
&screen4,
&screen5,