Fix possible infinite loop when running syntax highlighting tests

Fixes #1347
This commit is contained in:
Max Brunsfeld 2021-08-29 15:03:53 -07:00
parent 81c724cea0
commit 8fa875b1a4
2 changed files with 40 additions and 41 deletions

View file

@ -17,6 +17,7 @@ fn test_highlight_test_with_basic_test() {
],
);
let source = [
"// hi",
"var abc = function(d) {",
" // ^ function",
" // ^ keyword",
@ -32,15 +33,15 @@ fn test_highlight_test_with_basic_test() {
assertions,
&[
Assertion {
position: Point::new(0, 5),
position: Point::new(1, 5),
expected_capture_name: "function".to_string()
},
Assertion {
position: Point::new(0, 11),
position: Point::new(1, 11),
expected_capture_name: "keyword".to_string()
},
Assertion {
position: Point::new(3, 9),
position: Point::new(4, 9),
expected_capture_name: "variable.parameter".to_string()
},
]
@ -53,12 +54,12 @@ fn test_highlight_test_with_basic_test() {
assert_eq!(
highlight_positions,
&[
(Point::new(0, 0), Point::new(0, 3), Highlight(2)), // "var"
(Point::new(0, 4), Point::new(0, 7), Highlight(0)), // "abc"
(Point::new(0, 10), Point::new(0, 18), Highlight(2)), // "function"
(Point::new(0, 19), Point::new(0, 20), Highlight(1)), // "d"
(Point::new(3, 2), Point::new(3, 8), Highlight(2)), // "return"
(Point::new(3, 9), Point::new(3, 10), Highlight(1)), // "d"
(Point::new(1, 0), Point::new(1, 3), Highlight(2)), // "var"
(Point::new(1, 4), Point::new(1, 7), Highlight(0)), // "abc"
(Point::new(1, 10), Point::new(1, 18), Highlight(2)), // "function"
(Point::new(1, 19), Point::new(1, 20), Highlight(1)), // "d"
(Point::new(4, 2), Point::new(4, 8), Highlight(2)), // "return"
(Point::new(4, 9), Point::new(4, 10), Highlight(1)), // "d"
]
);
}