summaryrefslogtreecommitdiff
path: root/tests/test_spans.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_spans.rs')
-rw-r--r--tests/test_spans.rs15
1 files changed, 13 insertions, 2 deletions
diff --git a/tests/test_spans.rs b/tests/test_spans.rs
index e839f53..28342ea 100644
--- a/tests/test_spans.rs
+++ b/tests/test_spans.rs
@@ -213,9 +213,20 @@ fn doctype_id_spans() {
fn annotate_errors(html: &'static str) -> String {
let mut labels = Vec::new();
for token in tokenizer(html) {
- if let Token::Error { error, span } = token {
- labels.push((span, error.code()));
+ let Token::Error { error, span } = token else {
+ continue;
+ };
+
+ if span.start == span.end {
+ if span.start != html.len() {
+ panic!("empty error spans are only allowed at the very end of the source (for eof errors)");
+ }
+ } else {
+ assert!(span.start < span.end);
+ assert!(span.end <= html.len());
}
+
+ labels.push((span, error.code()));
}
annotate(html, labels)
}