fix(html/parser): Fix error reporting (#4644)

This commit is contained in:
Alexander Akait 2022-05-14 04:43:52 +03:00 committed by GitHub
parent fbc10fc5c2
commit 1f945b9277
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1877 changed files with 9787 additions and 2700 deletions

View File

@ -1,3 +1,4 @@
<!doctype html>
<script type="text/javascript" defer>
console.log();
</script>

View File

@ -1,4 +1,4 @@
<html><head><script defer>
<!doctype html><html><head><script defer>
console.log();
</script>
<script>

View File

@ -1 +1,2 @@
<!doctype html>
<a href="#" tabindex=" 1 ">x</a><button tabindex=" 2 ">y</button>

View File

@ -1 +1 @@
<html><head></head><body><a href=# tabindex=1>x</a><button tabindex=2>y</button></body></html>
<!doctype html><html><head></head><body><a href=# tabindex=1>x</a><button tabindex=2>y</button></body></html>

View File

@ -1,3 +1,4 @@
<!doctype html>
<html>
<head>
<title>Party Coffee Cake</title>

View File

@ -1,4 +1,4 @@
<html><head>
<!doctype html><html><head>
<title>Party Coffee Cake</title>
<script type=application/ld+json>{"@context":"https://schema.org/","@type":"Recipe","author":{"@type":"Person","name":"Mary Stone"},"datePublished":"2018-03-10","description":"This coffee cake is awesome and perfect for parties.","name":"Party Coffee Cake","prepTime":"PT20M"}</script>
<script type=application/ld+json crossorigin=anonymous>{"@context":"https://schema.org/","@type":"Recipe","author":{"@type":"Person","name":"Mary Stone"},"datePublished":"2018-03-10","description":"This coffee cake is awesome and perfect for parties.","name":"Party Coffee Cake","prepTime":"PT20M"}</script>

View File

@ -138,6 +138,7 @@ impl Error {
"Eof in element that can contain only text".into()
}
ErrorKind::UnexpectedToken => "Unexpected token".into(),
ErrorKind::UnexpectedEof => "Unexpected end of file".into(),
}
}
@ -214,4 +215,5 @@ pub enum ErrorKind {
// Parser errors
UnexpectedToken,
UnexpectedEof,
}

View File

@ -1302,10 +1302,13 @@ where
// In any case, switch the insertion mode to "before html", then reprocess the
// token.
_ => {
// TODO ERROR about missing doctype and handle iframe
// TODO handle iframe
let is_iframe = false;
if !is_iframe {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MissingDoctype));
self.document_mode = DocumentMode::Quirks;
}
@ -1341,7 +1344,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A comment token
//
@ -1477,7 +1480,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -1564,7 +1567,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -1843,7 +1846,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -1966,7 +1969,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -2121,7 +2124,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -2339,7 +2342,7 @@ where
if errored {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedEof));
}
self.stopped = true;
@ -4057,7 +4060,7 @@ where
// token.
Token::Eof => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedEof));
self.open_elements_stack.pop();
self.insertion_mode = self.original_insertion_mode.clone();
self.process_token(token_and_info, None)?;
@ -4218,7 +4221,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "caption"
//
@ -4748,7 +4751,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -5088,10 +5091,8 @@ where
if matches!(tag_name.as_ref(), "tbody" | "tfoot" | "thead") =>
{
if !self.open_elements_stack.has_in_table_scope(tag_name) {
self.errors.push(Error::new(
token_and_info.span,
ErrorKind::EndTagWithoutMatchingOpenElement,
));
self.errors
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
} else if !self.open_elements_stack.has_in_table_scope("tr") {
// Ignore
@ -5286,7 +5287,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -5724,7 +5725,7 @@ where
self.stopped = true;
} else {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedEof));
self.open_elements_stack
.pop_until_tag_name_popped(&["template"]);
self.active_formatting_elements.clear_to_last_marker();
@ -5762,7 +5763,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -5828,7 +5829,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//
@ -5916,8 +5917,10 @@ where
Token::Eof => {
match self.open_elements_stack.items.last() {
Some(node) if get_tag_name!(node) != "html" => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::Eof));
self.errors.push(Error::new(
token_and_info.span,
ErrorKind::UnexpectedEof,
));
}
_ => {}
}
@ -5959,7 +5962,7 @@ where
// Parse error. Ignore the token.
Token::Doctype { .. } => {
self.errors
.push(Error::new(token_and_info.span, ErrorKind::MisplacedDoctype));
.push(Error::new(token_and_info.span, ErrorKind::UnexpectedToken));
}
// A start tag whose tag name is "html"
//

View File

@ -980,6 +980,11 @@ enum TestState {
NewErrors,
}
enum DocumentOrDocumentFragment {
Document(PResult<Document>),
DocumentFragment(PResult<DocumentFragment>),
}
#[testing::fixture("tests/html5lib-tests/tree-construction/**/*.dat")]
#[testing::fixture("tests/html5lib-tests-fixture/**/*.html")]
fn html5lib_test_tree_construction(input: PathBuf) {
@ -1116,7 +1121,7 @@ fn html5lib_test_tree_construction(input: PathBuf) {
fs::write(html_path, data.join("\n"))
.expect("Something went wrong when writing to the file");
let dom_snapshot_path = dir.join(file_stem + ".dom");
let dom_snapshot_path = dir.join(file_stem.clone() + ".dom");
let mut dom = document.join("\n");
@ -1125,7 +1130,13 @@ fn html5lib_test_tree_construction(input: PathBuf) {
}
fs::write(dom_snapshot_path, dom)
.expect("Something went wrong when writingto the file");
.expect("Something went wrong when writing to the file");
let errors = errors.join("\n");
let errors_snapshot_path = dir.join(file_stem + ".errors");
fs::write(errors_snapshot_path, errors)
.expect("Something went wrong when writing to the file");
counter += 1;
}
@ -1133,7 +1144,7 @@ fn html5lib_test_tree_construction(input: PathBuf) {
return;
}
// TODO improve errors tests
// TODO improve test for parsing `<template>`
testing::run_test2(false, |cm, handler| {
// Type annotation
if false {
@ -1149,8 +1160,7 @@ fn html5lib_test_tree_construction(input: PathBuf) {
let lexer = Lexer::new(SourceFileInput::from(&*fm), Default::default());
let config = ParserConfig { scripting_enabled };
let mut parser = Parser::new(lexer, config);
if file_stem.contains("fragment") {
let document_or_document_fragment = if file_stem.contains("fragment") {
let mut context_element_namespace = Namespace::HTML;
let mut context_element_tag_name = "unknown";
@ -1188,82 +1198,87 @@ fn html5lib_test_tree_construction(input: PathBuf) {
content: None,
};
let document_fragment = parser.parse_document_fragment(context_element);
match document_fragment {
Ok(mut document_fragment) => {
let actual_json = serde_json::to_string_pretty(&document_fragment)
.map(NormalizedOutput::from)
.expect("failed to serialize document");
actual_json.compare_to_file(&json_path).unwrap();
let mut dom_buf = String::new();
document_fragment.visit_mut_with(&mut DomVisualizer {
dom_buf: &mut dom_buf,
indent: 0,
});
let dir = input.parent().unwrap().to_path_buf();
NormalizedOutput::from(dom_buf)
.compare_to_file(&dir.join(file_stem + ".dom"))
.unwrap();
Ok(())
}
Err(err) => {
let mut d = err.to_diagnostics(&handler);
d.note(&format!("current token = {}", parser.dump_cur()));
d.emit();
panic!();
}
}
DocumentOrDocumentFragment::DocumentFragment(
parser.parse_document_fragment(context_element),
)
} else {
let document = parser.parse_document();
DocumentOrDocumentFragment::Document(parser.parse_document())
};
match document {
Ok(mut document) => {
let actual_json = serde_json::to_string_pretty(&document)
.map(NormalizedOutput::from)
.expect("failed to serialize document");
// TODO finish me
// let errors = parser.take_errors();
// let errors_path = input.parent().unwrap().join(file_stem.clone() +
// ".errors"); let contents =
// fs::read_to_string(errors_path).expect("Something went wrong reading the
// file"); let actual_number_of_errors = errors.len();
// let expected_number_of_errors = contents.lines().count();
actual_json.compare_to_file(&json_path).unwrap();
// println!("{:?}", errors);
// assert_eq!(actual_number_of_errors, expected_number_of_errors);
let parent_name = input.parent().unwrap().to_string_lossy();
let parent_name = input.parent().unwrap().to_string_lossy();
// Skip scripted test, because we don't support ECMA execution
// Skip `search` due https://github.com/whatwg/html/pull/7320, we should uncomment and fix logic it after it was merged
if parent_name.contains("scripted") || parent_name.contains("search") {
return Ok(());
}
match document_or_document_fragment {
DocumentOrDocumentFragment::Document(Ok(mut document)) => {
let actual_json = serde_json::to_string_pretty(&document)
.map(NormalizedOutput::from)
.expect("failed to serialize document");
let mut dom_buf = String::new();
actual_json.compare_to_file(&json_path).unwrap();
document.visit_mut_with(&mut DomVisualizer {
dom_buf: &mut dom_buf,
indent: 0,
});
let dir = input.parent().unwrap().to_path_buf();
NormalizedOutput::from(dom_buf)
.compare_to_file(&dir.join(file_stem + ".dom"))
.unwrap();
Ok(())
if parent_name.contains("scripted") || parent_name.contains("search") {
return Ok(());
}
Err(err) => {
let mut d = err.to_diagnostics(&handler);
d.note(&format!("current token = {}", parser.dump_cur()));
d.emit();
let mut dom_buf = String::new();
panic!();
document.visit_mut_with(&mut DomVisualizer {
dom_buf: &mut dom_buf,
indent: 0,
});
let dir = input.parent().unwrap().to_path_buf();
NormalizedOutput::from(dom_buf)
.compare_to_file(&dir.join(file_stem + ".dom"))
.unwrap();
Ok(())
}
DocumentOrDocumentFragment::DocumentFragment(Ok(mut document_fragment)) => {
let actual_json = serde_json::to_string_pretty(&document_fragment)
.map(NormalizedOutput::from)
.expect("failed to serialize document");
actual_json.compare_to_file(&json_path).unwrap();
if parent_name.contains("scripted") || parent_name.contains("search") {
return Ok(());
}
let mut dom_buf = String::new();
document_fragment.visit_mut_with(&mut DomVisualizer {
dom_buf: &mut dom_buf,
indent: 0,
});
let dir = input.parent().unwrap().to_path_buf();
NormalizedOutput::from(dom_buf)
.compare_to_file(&dir.join(file_stem + ".dom"))
.unwrap();
Ok(())
}
DocumentOrDocumentFragment::Document(Err(err))
| DocumentOrDocumentFragment::DocumentFragment(Err(err)) => {
let mut d = err.to_diagnostics(&handler);
d.note(&format!("current token = {}", parser.dump_cur()));
d.emit();
panic!();
}
}
})

View File

@ -1,6 +1,19 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <a>
| 0=""
| 1=""
@ -63,3 +76,8 @@
"
| <img>
| src="test"
| "
"

View File

@ -1,10 +1,20 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
<p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
<p title=" <!-- hello world --> ">x</p>
<tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
<br a=\u00A0 b="&nbsp;" c="\u00A0">
<img
src
=
"test"
/>
src
=
"test"
/>
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 272,
"end": 414,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 272,
"start": 17,
"end": 414,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 76,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 272,
"start": 77,
"end": 414,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 85,
"ctxt": 0
},
"value": "\n\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 76,
"start": 85,
"end": 160,
"ctxt": 0
},
"tagName": "a",
@ -491,8 +575,8 @@
{
"type": "Text",
"span": {
"start": 80,
"end": 81,
"start": 164,
"end": 165,
"ctxt": 0
},
"value": "\n"
@ -500,8 +584,8 @@
{
"type": "Element",
"span": {
"start": 81,
"end": 125,
"start": 165,
"end": 209,
"ctxt": 0
},
"tagName": "p",
@ -524,8 +608,8 @@
{
"type": "Text",
"span": {
"start": 124,
"end": 125,
"start": 208,
"end": 209,
"ctxt": 0
},
"value": "x"
@ -536,8 +620,8 @@
{
"type": "Text",
"span": {
"start": 129,
"end": 130,
"start": 213,
"end": 214,
"ctxt": 0
},
"value": "\n"
@ -545,8 +629,8 @@
{
"type": "Element",
"span": {
"start": 130,
"end": 165,
"start": 214,
"end": 249,
"ctxt": 0
},
"tagName": "p",
@ -569,8 +653,8 @@
{
"type": "Text",
"span": {
"start": 164,
"end": 165,
"start": 248,
"end": 249,
"ctxt": 0
},
"value": "x"
@ -581,8 +665,8 @@
{
"type": "Text",
"span": {
"start": 169,
"end": 170,
"start": 253,
"end": 254,
"ctxt": 0
},
"value": "\n"
@ -590,8 +674,8 @@
{
"type": "Element",
"span": {
"start": 170,
"end": 209,
"start": 254,
"end": 293,
"ctxt": 0
},
"tagName": "tag",
@ -628,8 +712,8 @@
{
"type": "Text",
"span": {
"start": 215,
"end": 216,
"start": 299,
"end": 300,
"ctxt": 0
},
"value": "\n"
@ -637,8 +721,8 @@
{
"type": "Element",
"span": {
"start": 216,
"end": 251,
"start": 300,
"end": 335,
"ctxt": 0
},
"tagName": "br",
@ -687,8 +771,8 @@
{
"type": "Text",
"span": {
"start": 251,
"end": 252,
"start": 335,
"end": 336,
"ctxt": 0
},
"value": "\n"
@ -696,8 +780,8 @@
{
"type": "Element",
"span": {
"start": 252,
"end": 272,
"start": 336,
"end": 396,
"ctxt": 0
},
"tagName": "img",
@ -718,6 +802,15 @@
],
"children": [],
"content": null
},
{
"type": "Text",
"span": {
"start": 396,
"end": 414,
"ctxt": 0
},
"value": "\n\n\n\n"
}
],
"content": null

View File

@ -1,196 +1,402 @@
x Document
,-[$DIR/tests/fixture/attribute/basic/input.html:1:1]
1 | ,-> <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
2 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
3 | | <p title=" <!-- hello world --> ">x</p>
4 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
5 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
6 | | <img
7 | | src
8 | | =
9 | | "test"
10 | `-> />
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
9 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
10 | | <p title=" <!-- hello world --> ">x</p>
11 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
12 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
13 | | <img
14 | | src
15 | | =
16 | | "test"
17 | | />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Child
x Element
x Child
x Element
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:1:1]
1 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Element
x DocumentType
,-[$DIR/tests/fixture/attribute/basic/input.html:1:1]
1 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
9 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
10 | | <p title=" <!-- hello world --> ">x</p>
11 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
12 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
13 | | <img
14 | | src
15 | | =
16 | | "test"
17 | | />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
9 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
10 | | <p title=" <!-- hello world --> ">x</p>
11 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
12 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
13 | | <img
14 | | src
15 | | =
16 | | "test"
17 | | />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Attribute
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:1:1]
1 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:1:1]
1 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
3 | <p title=" <!-- hello world --> ">x</p>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:2:1]
2 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
3 | <p title=" <!-- hello world --> ">x</p>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:3:1]
3 | <p title=" <!-- hello world --> ">x</p>
: ^
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:4:1]
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:4:1]
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:4:1]
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:4:1]
4 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:5:1]
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:5:1]
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:5:1]
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^
6 | <img
5 | </head>
: ^
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:5:1]
5 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^
6 | <img
5 | </head>
: ^
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:6:1]
6 | ,-> <img
7 | | src
8 | | =
9 | | "test"
10 | `-> />
6 | ,-> <body>
7 | |
8 | | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
9 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
10 | | <p title=" <!-- hello world --> ">x</p>
11 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
12 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
13 | | <img
14 | | src
15 | | =
16 | | "test"
17 | | />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:6:1]
6 | ,-> <img
7 | | src
8 | | =
9 | | "test"
10 | `-> />
6 | ,-> <body>
7 | |
8 | | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
9 | | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
10 | | <p title=" <!-- hello world --> ">x</p>
11 | | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
12 | | <br a=\u00A0 b="&nbsp;" c="\u00A0">
13 | | <img
14 | | src
15 | | =
16 | | "test"
17 | | />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:8:1]
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:8:1]
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:8:1]
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:8:1]
8 | <a 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z></a>
: ^
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
10 | <p title=" <!-- hello world --> ">x</p>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:9:1]
9 | <p title=" <![CDATA[ \n\n foobar baz ]]> ">x</p>
: ^
10 | <p title=" <!-- hello world --> ">x</p>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:10:1]
10 | <p title=" <!-- hello world --> ">x</p>
: ^
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:11:1]
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:11:1]
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:11:1]
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:11:1]
11 | <tag v-ref:vm_pv :imgs=" objpicsurl_ "></tag>
: ^
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:12:1]
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:12:1]
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:12:1]
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^
13 | <img
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:12:1]
12 | <br a=\u00A0 b="&nbsp;" c="\u00A0">
: ^
13 | <img
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:13:1]
13 | ,-> <img
14 | | src
15 | | =
16 | | "test"
17 | `-> />
`----
x Element
,-[$DIR/tests/fixture/attribute/basic/input.html:13:1]
13 | ,-> <img
14 | | src
15 | | =
16 | | "test"
17 | `-> />
`----
x Child
,-[$DIR/tests/fixture/attribute/basic/input.html:17:1]
17 | ,-> />
18 | |
19 | | </body>
20 | `-> </html>
`----
x Text
,-[$DIR/tests/fixture/attribute/basic/input.html:17:1]
17 | ,-> />
18 | |
19 | | </body>
20 | `-> </html>
`----

View File

@ -1,8 +1,23 @@
| <!-- test -->
| <!-- foo -->
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <!-- test -->
| "
"
| <!-- foo -->
| <div>
| "baz"
| <!-- bar
@ -24,3 +39,7 @@ moo -->
"
| <script>
| "alert('-->')"
| "
"

View File

@ -1,3 +1,9 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<!-- test -->
<!-- foo --><div>baz</div><!-- bar
@ -6,4 +12,6 @@ moo -->
<script><!-- alert(1) --></script>
<script>alert('<!--')</script>
<script>alert('<!-- foo -->')</script>
<script>alert('-->')</script>
<script>alert('-->')</script>
</body>
</html>

View File

@ -2,69 +2,162 @@
"type": "Document",
"span": {
"start": 1,
"end": 194,
"end": 294,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "Comment",
"type": "DocumentType",
"span": {
"start": 1,
"end": 14,
"end": 16,
"ctxt": 0
},
"data": " test "
},
{
"type": "Comment",
"span": {
"start": 16,
"end": 28,
"ctxt": 0
},
"data": " foo "
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 185,
"start": 17,
"end": 294,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 33,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 185,
"start": 77,
"end": 294,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 84,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Comment",
"span": {
"start": 84,
"end": 97,
"ctxt": 0
},
"data": " test "
},
{
"type": "Text",
"span": {
"start": 97,
"end": 99,
"ctxt": 0
},
"value": "\n\n"
},
{
"type": "Comment",
"span": {
"start": 99,
"end": 111,
"ctxt": 0
},
"data": " foo "
},
{
"type": "Element",
"span": {
"start": 28,
"end": 36,
"start": 111,
"end": 119,
"ctxt": 0
},
"tagName": "div",
@ -74,8 +167,8 @@
{
"type": "Text",
"span": {
"start": 33,
"end": 36,
"start": 116,
"end": 119,
"ctxt": 0
},
"value": "baz"
@ -86,8 +179,8 @@
{
"type": "Comment",
"span": {
"start": 42,
"end": 59,
"start": 125,
"end": 142,
"ctxt": 0
},
"data": " bar\n\nmoo "
@ -95,8 +188,8 @@
{
"type": "Text",
"span": {
"start": 59,
"end": 60,
"start": 142,
"end": 143,
"ctxt": 0
},
"value": "\n"
@ -104,8 +197,8 @@
{
"type": "Element",
"span": {
"start": 60,
"end": 85,
"start": 143,
"end": 168,
"ctxt": 0
},
"tagName": "script",
@ -115,8 +208,8 @@
{
"type": "Text",
"span": {
"start": 68,
"end": 85,
"start": 151,
"end": 168,
"ctxt": 0
},
"value": "<!-- alert(1) -->"
@ -127,8 +220,8 @@
{
"type": "Text",
"span": {
"start": 94,
"end": 95,
"start": 177,
"end": 178,
"ctxt": 0
},
"value": "\n"
@ -136,8 +229,8 @@
{
"type": "Element",
"span": {
"start": 95,
"end": 116,
"start": 178,
"end": 199,
"ctxt": 0
},
"tagName": "script",
@ -147,8 +240,8 @@
{
"type": "Text",
"span": {
"start": 103,
"end": 116,
"start": 186,
"end": 199,
"ctxt": 0
},
"value": "alert('<!--')"
@ -159,8 +252,8 @@
{
"type": "Text",
"span": {
"start": 125,
"end": 126,
"start": 208,
"end": 209,
"ctxt": 0
},
"value": "\n"
@ -168,8 +261,8 @@
{
"type": "Element",
"span": {
"start": 126,
"end": 155,
"start": 209,
"end": 238,
"ctxt": 0
},
"tagName": "script",
@ -179,8 +272,8 @@
{
"type": "Text",
"span": {
"start": 134,
"end": 155,
"start": 217,
"end": 238,
"ctxt": 0
},
"value": "alert('<!-- foo -->')"
@ -191,8 +284,8 @@
{
"type": "Text",
"span": {
"start": 164,
"end": 165,
"start": 247,
"end": 248,
"ctxt": 0
},
"value": "\n"
@ -200,8 +293,8 @@
{
"type": "Element",
"span": {
"start": 165,
"end": 185,
"start": 248,
"end": 268,
"ctxt": 0
},
"tagName": "script",
@ -211,14 +304,23 @@
{
"type": "Text",
"span": {
"start": 173,
"end": 185,
"start": 256,
"end": 268,
"ctxt": 0
},
"value": "alert('-->')"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 277,
"end": 294,
"ctxt": 0
},
"value": "\n\n\n"
}
],
"content": null

View File

@ -1,235 +1,441 @@
x Document
,-[$DIR/tests/fixture/comment/basic/input.html:1:1]
1 | ,-> <!-- test -->
2 | |
3 | | <!-- foo --><div>baz</div><!-- bar
4 | |
5 | | moo -->
6 | | <script><!-- alert(1) --></script>
7 | | <script>alert('<!--')</script>
8 | | <script>alert('<!-- foo -->')</script>
9 | `-> <script>alert('-->')</script>
`----
,-[$DIR/tests/fixture/comment/basic/input.html:1:1]
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <!-- test -->
8 | |
9 | | <!-- foo --><div>baz</div><!-- bar
10 | |
11 | | moo -->
12 | | <script><!-- alert(1) --></script>
13 | | <script>alert('<!--')</script>
14 | | <script>alert('<!-- foo -->')</script>
15 | | <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:1:1]
1 | <!-- test -->
: ^^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Comment
x DocumentType
,-[$DIR/tests/fixture/comment/basic/input.html:1:1]
1 | <!-- test -->
: ^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^^^^^
`----
x Comment
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <!-- test -->
8 | |
9 | | <!-- foo --><div>baz</div><!-- bar
10 | |
11 | | moo -->
12 | | <script><!-- alert(1) --></script>
13 | | <script>alert('<!--')</script>
14 | | <script>alert('<!-- foo -->')</script>
15 | | <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <!-- test -->
8 | |
9 | | <!-- foo --><div>baz</div><!-- bar
10 | |
11 | | moo -->
12 | | <script><!-- alert(1) --></script>
13 | | <script>alert('<!--')</script>
14 | | <script>alert('<!-- foo -->')</script>
15 | | <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Child
x Element
x Attribute
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | <!-- foo --><div>baz</div><!-- bar
: ^^^
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | ,-> <!-- foo --><div>baz</div><!-- bar
4 | |
5 | `-> moo -->
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Comment
,-[$DIR/tests/fixture/comment/basic/input.html:3:1]
3 | ,-> <!-- foo --><div>baz</div><!-- bar
4 | |
5 | `-> moo -->
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:5:1]
5 | moo -->
5 | </head>
: ^
6 | <script><!-- alert(1) --></script>
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:5:1]
5 | moo -->
5 | </head>
: ^
6 | <script><!-- alert(1) --></script>
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^
`----
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | ,-> <body>
7 | | <!-- test -->
8 | |
9 | | <!-- foo --><div>baz</div><!-- bar
10 | |
11 | | moo -->
12 | | <script><!-- alert(1) --></script>
13 | | <script>alert('<!--')</script>
14 | | <script>alert('<!-- foo -->')</script>
15 | | <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^
`----
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | ,-> <body>
7 | | <!-- test -->
8 | |
9 | | <!-- foo --><div>baz</div><!-- bar
10 | |
11 | | moo -->
12 | | <script><!-- alert(1) --></script>
13 | | <script>alert('<!--')</script>
14 | | <script>alert('<!-- foo -->')</script>
15 | | <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^
6 | <body>
: ^
7 | <!-- test -->
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^
7 | <script>alert('<!--')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:6:1]
6 | <script><!-- alert(1) --></script>
: ^
7 | <script>alert('<!--')</script>
6 | <body>
: ^
7 | <!-- test -->
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^^^^^^^^^
7 | <!-- test -->
: ^^^^^^^^^^^^^
`----
x Element
x Comment
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^^^^^^^^^
7 | <!-- test -->
: ^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^
7 | ,-> <!-- test -->
8 | `->
9 | <!-- foo --><div>baz</div><!-- bar
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^
8 | <script>alert('<!-- foo -->')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:7:1]
7 | <script>alert('<!--')</script>
: ^
8 | <script>alert('<!-- foo -->')</script>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^
9 | <script>alert('-->')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:8:1]
8 | <script>alert('<!-- foo -->')</script>
: ^
9 | <script>alert('-->')</script>
7 | ,-> <!-- test -->
8 | `->
9 | <!-- foo --><div>baz</div><!-- bar
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <script>alert('-->')</script>
: ^^^^^^^^^^^^^^^^^^^^
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^^^^^
`----
x Element
x Comment
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <script>alert('-->')</script>
: ^^^^^^^^^^^^^^^^^^^^
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <script>alert('-->')</script>
: ^^^^^^^^^^^^
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | <script>alert('-->')</script>
: ^^^^^^^^^^^^
9 | <!-- foo --><div>baz</div><!-- bar
: ^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | ,-> <!-- foo --><div>baz</div><!-- bar
10 | |
11 | `-> moo -->
`----
x Comment
,-[$DIR/tests/fixture/comment/basic/input.html:9:1]
9 | ,-> <!-- foo --><div>baz</div><!-- bar
10 | |
11 | `-> moo -->
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:11:1]
11 | moo -->
: ^
12 | <script><!-- alert(1) --></script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:11:1]
11 | moo -->
: ^
12 | <script><!-- alert(1) --></script>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^
13 | <script>alert('<!--')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:12:1]
12 | <script><!-- alert(1) --></script>
: ^
13 | <script>alert('<!--')</script>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^
14 | <script>alert('<!-- foo -->')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:13:1]
13 | <script>alert('<!--')</script>
: ^
14 | <script>alert('<!-- foo -->')</script>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^
15 | <script>alert('-->')</script>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:14:1]
14 | <script>alert('<!-- foo -->')</script>
: ^
15 | <script>alert('-->')</script>
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | <script>alert('-->')</script>
: ^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | <script>alert('-->')</script>
: ^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | <script>alert('-->')</script>
: ^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | <script>alert('-->')</script>
: ^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | ,-> <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----
x Text
,-[$DIR/tests/fixture/comment/basic/input.html:15:1]
15 | ,-> <script>alert('-->')</script>
16 | | </body>
17 | `-> </html>
`----

View File

@ -1,6 +1,18 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <div>
| "
"
@ -75,4 +87,5 @@ Test
| <div>
| "test"
| "
"

View File

@ -1,3 +1,9 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<div></div>
<div><div></div></div>
<div></div><div></div>
@ -25,3 +31,5 @@ Test
>
<div>test</div>
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 388,
"end": 486,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 388,
"start": 17,
"end": 479,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 6,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 388,
"start": 77,
"end": 479,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 84,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 6,
"start": 84,
"end": 89,
"ctxt": 0
},
"tagName": "div",
@ -58,8 +142,8 @@
{
"type": "Text",
"span": {
"start": 12,
"end": 13,
"start": 95,
"end": 96,
"ctxt": 0
},
"value": "\n"
@ -67,8 +151,8 @@
{
"type": "Element",
"span": {
"start": 13,
"end": 23,
"start": 96,
"end": 106,
"ctxt": 0
},
"tagName": "div",
@ -78,8 +162,8 @@
{
"type": "Element",
"span": {
"start": 18,
"end": 23,
"start": 101,
"end": 106,
"ctxt": 0
},
"tagName": "div",
@ -94,8 +178,8 @@
{
"type": "Text",
"span": {
"start": 35,
"end": 36,
"start": 118,
"end": 119,
"ctxt": 0
},
"value": "\n"
@ -103,8 +187,8 @@
{
"type": "Element",
"span": {
"start": 36,
"end": 41,
"start": 119,
"end": 124,
"ctxt": 0
},
"tagName": "div",
@ -116,8 +200,8 @@
{
"type": "Element",
"span": {
"start": 47,
"end": 52,
"start": 130,
"end": 135,
"ctxt": 0
},
"tagName": "div",
@ -129,8 +213,8 @@
{
"type": "Text",
"span": {
"start": 58,
"end": 59,
"start": 141,
"end": 142,
"ctxt": 0
},
"value": "\n"
@ -138,8 +222,8 @@
{
"type": "Element",
"span": {
"start": 59,
"end": 63,
"start": 142,
"end": 146,
"ctxt": 0
},
"tagName": "br",
@ -151,8 +235,8 @@
{
"type": "Text",
"span": {
"start": 63,
"end": 64,
"start": 146,
"end": 147,
"ctxt": 0
},
"value": "\n"
@ -160,8 +244,8 @@
{
"type": "Element",
"span": {
"start": 64,
"end": 70,
"start": 147,
"end": 153,
"ctxt": 0
},
"tagName": "br",
@ -173,8 +257,8 @@
{
"type": "Text",
"span": {
"start": 70,
"end": 71,
"start": 153,
"end": 154,
"ctxt": 0
},
"value": "\n"
@ -182,8 +266,8 @@
{
"type": "Element",
"span": {
"start": 71,
"end": 81,
"start": 154,
"end": 164,
"ctxt": 0
},
"tagName": "h:ællæ",
@ -195,8 +279,8 @@
{
"type": "Text",
"span": {
"start": 92,
"end": 93,
"start": 175,
"end": 176,
"ctxt": 0
},
"value": "\n"
@ -204,8 +288,8 @@
{
"type": "Element",
"span": {
"start": 93,
"end": 102,
"start": 176,
"end": 185,
"ctxt": 0
},
"tagName": "div",
@ -230,8 +314,8 @@
{
"type": "Text",
"span": {
"start": 108,
"end": 109,
"start": 191,
"end": 192,
"ctxt": 0
},
"value": "\n"
@ -239,8 +323,8 @@
{
"type": "Element",
"span": {
"start": 109,
"end": 121,
"start": 192,
"end": 204,
"ctxt": 0
},
"tagName": "some-tag-1",
@ -252,8 +336,8 @@
{
"type": "Element",
"span": {
"start": 134,
"end": 146,
"start": 217,
"end": 229,
"ctxt": 0
},
"tagName": "some-tag-2",
@ -265,8 +349,8 @@
{
"type": "Text",
"span": {
"start": 159,
"end": 160,
"start": 242,
"end": 243,
"ctxt": 0
},
"value": "\n"
@ -274,8 +358,8 @@
{
"type": "Element",
"span": {
"start": 160,
"end": 188,
"start": 243,
"end": 271,
"ctxt": 0
},
"tagName": "a",
@ -298,8 +382,8 @@
{
"type": "Element",
"span": {
"start": 180,
"end": 188,
"start": 263,
"end": 271,
"ctxt": 0
},
"tagName": "div",
@ -309,8 +393,8 @@
{
"type": "Text",
"span": {
"start": 185,
"end": 188,
"start": 268,
"end": 271,
"ctxt": 0
},
"value": "hey"
@ -324,8 +408,8 @@
{
"type": "Text",
"span": {
"start": 198,
"end": 199,
"start": 281,
"end": 282,
"ctxt": 0
},
"value": "\n"
@ -333,8 +417,8 @@
{
"type": "Element",
"span": {
"start": 199,
"end": 211,
"start": 282,
"end": 294,
"ctxt": 0
},
"tagName": "custom-tag",
@ -346,8 +430,8 @@
{
"type": "Element",
"span": {
"start": 224,
"end": 237,
"start": 307,
"end": 320,
"ctxt": 0
},
"tagName": "div",
@ -357,8 +441,8 @@
{
"type": "Text",
"span": {
"start": 229,
"end": 237,
"start": 312,
"end": 320,
"ctxt": 0
},
"value": "Hello :)"
@ -369,8 +453,8 @@
{
"type": "Text",
"span": {
"start": 243,
"end": 244,
"start": 326,
"end": 327,
"ctxt": 0
},
"value": "\n"
@ -378,8 +462,8 @@
{
"type": "Element",
"span": {
"start": 244,
"end": 257,
"start": 327,
"end": 340,
"ctxt": 0
},
"tagName": "div",
@ -389,8 +473,8 @@
{
"type": "Text",
"span": {
"start": 249,
"end": 257,
"start": 332,
"end": 340,
"ctxt": 0
},
"value": "\n\ntest\n\n"
@ -401,8 +485,8 @@
{
"type": "Text",
"span": {
"start": 263,
"end": 265,
"start": 346,
"end": 348,
"ctxt": 0
},
"value": "\n\n"
@ -410,8 +494,8 @@
{
"type": "Element",
"span": {
"start": 265,
"end": 284,
"start": 348,
"end": 367,
"ctxt": 0
},
"tagName": "div",
@ -436,8 +520,8 @@
{
"type": "Text",
"span": {
"start": 290,
"end": 291,
"start": 373,
"end": 374,
"ctxt": 0
},
"value": "\n"
@ -445,8 +529,8 @@
{
"type": "Element",
"span": {
"start": 291,
"end": 311,
"start": 374,
"end": 394,
"ctxt": 0
},
"tagName": "br",
@ -471,8 +555,8 @@
{
"type": "Text",
"span": {
"start": 311,
"end": 312,
"start": 394,
"end": 395,
"ctxt": 0
},
"value": "\n"
@ -480,8 +564,8 @@
{
"type": "Element",
"span": {
"start": 312,
"end": 331,
"start": 395,
"end": 414,
"ctxt": 0
},
"tagName": "br",
@ -506,8 +590,8 @@
{
"type": "Text",
"span": {
"start": 331,
"end": 332,
"start": 414,
"end": 415,
"ctxt": 0
},
"value": "\n"
@ -515,8 +599,8 @@
{
"type": "Element",
"span": {
"start": 332,
"end": 350,
"start": 415,
"end": 433,
"ctxt": 0
},
"tagName": "br",
@ -541,8 +625,8 @@
{
"type": "Text",
"span": {
"start": 350,
"end": 351,
"start": 433,
"end": 434,
"ctxt": 0
},
"value": "\n"
@ -550,8 +634,8 @@
{
"type": "Element",
"span": {
"start": 351,
"end": 363,
"start": 434,
"end": 446,
"ctxt": 0
},
"tagName": "div",
@ -561,8 +645,8 @@
{
"type": "Text",
"span": {
"start": 357,
"end": 363,
"start": 440,
"end": 446,
"ctxt": 0
},
"value": "\nTest\n"
@ -573,8 +657,8 @@
{
"type": "Text",
"span": {
"start": 370,
"end": 372,
"start": 453,
"end": 455,
"ctxt": 0
},
"value": "\n\n"
@ -582,8 +666,8 @@
{
"type": "Element",
"span": {
"start": 372,
"end": 381,
"start": 455,
"end": 464,
"ctxt": 0
},
"tagName": "div",
@ -593,8 +677,8 @@
{
"type": "Text",
"span": {
"start": 377,
"end": 381,
"start": 460,
"end": 464,
"ctxt": 0
},
"value": "test"
@ -605,11 +689,11 @@
{
"type": "Text",
"span": {
"start": 387,
"end": 388,
"start": 470,
"end": 479,
"ctxt": 0
},
"value": "\n"
"value": "\n\n"
}
],
"content": null

View File

@ -1,6 +1,19 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <p>
| " O'er all the hilltops"
| <br>
@ -26,4 +39,6 @@
Thou too shalt rest.
"
| "
"

View File

@ -1,3 +1,10 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<p> O'er all the hilltops<br>
Is quiet now,<br>
In all the treetops<br>
@ -7,3 +14,6 @@
Wait, soon like these<br>
Thou too shalt rest.
</p>
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 230,
"end": 330,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 230,
"start": 17,
"end": 323,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 4,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 230,
"start": 77,
"end": 323,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 85,
"ctxt": 0
},
"value": "\n\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 225,
"start": 85,
"end": 309,
"ctxt": 0
},
"tagName": "p",
@ -56,8 +140,8 @@
{
"type": "Text",
"span": {
"start": 4,
"end": 26,
"start": 88,
"end": 110,
"ctxt": 0
},
"value": " O'er all the hilltops"
@ -65,8 +149,8 @@
{
"type": "Element",
"span": {
"start": 26,
"end": 30,
"start": 110,
"end": 114,
"ctxt": 0
},
"tagName": "br",
@ -78,8 +162,8 @@
{
"type": "Text",
"span": {
"start": 30,
"end": 48,
"start": 114,
"end": 132,
"ctxt": 0
},
"value": "\n Is quiet now,"
@ -87,8 +171,8 @@
{
"type": "Element",
"span": {
"start": 48,
"end": 52,
"start": 132,
"end": 136,
"ctxt": 0
},
"tagName": "br",
@ -100,8 +184,8 @@
{
"type": "Text",
"span": {
"start": 52,
"end": 76,
"start": 136,
"end": 160,
"ctxt": 0
},
"value": "\n In all the treetops"
@ -109,8 +193,8 @@
{
"type": "Element",
"span": {
"start": 76,
"end": 80,
"start": 160,
"end": 164,
"ctxt": 0
},
"tagName": "br",
@ -122,8 +206,8 @@
{
"type": "Text",
"span": {
"start": 80,
"end": 97,
"start": 164,
"end": 181,
"ctxt": 0
},
"value": "\n Hearest thou"
@ -131,8 +215,8 @@
{
"type": "Element",
"span": {
"start": 97,
"end": 101,
"start": 181,
"end": 185,
"ctxt": 0
},
"tagName": "br",
@ -144,8 +228,8 @@
{
"type": "Text",
"span": {
"start": 101,
"end": 122,
"start": 185,
"end": 206,
"ctxt": 0
},
"value": "\n Hardly a breath;"
@ -153,8 +237,8 @@
{
"type": "Element",
"span": {
"start": 122,
"end": 126,
"start": 206,
"end": 210,
"ctxt": 0
},
"tagName": "br",
@ -166,8 +250,8 @@
{
"type": "Text",
"span": {
"start": 126,
"end": 165,
"start": 210,
"end": 249,
"ctxt": 0
},
"value": "\n The birds are asleep in the trees:"
@ -175,8 +259,8 @@
{
"type": "Element",
"span": {
"start": 165,
"end": 169,
"start": 249,
"end": 253,
"ctxt": 0
},
"tagName": "br",
@ -188,8 +272,8 @@
{
"type": "Text",
"span": {
"start": 169,
"end": 195,
"start": 253,
"end": 279,
"ctxt": 0
},
"value": "\n Wait, soon like these"
@ -197,8 +281,8 @@
{
"type": "Element",
"span": {
"start": 195,
"end": 199,
"start": 279,
"end": 283,
"ctxt": 0
},
"tagName": "br",
@ -210,8 +294,8 @@
{
"type": "Text",
"span": {
"start": 199,
"end": 225,
"start": 283,
"end": 309,
"ctxt": 0
},
"value": "\n Thou too shalt rest.\n"
@ -222,11 +306,11 @@
{
"type": "Text",
"span": {
"start": 229,
"end": 230,
"start": 313,
"end": 323,
"ctxt": 0
},
"value": "\n"
"value": "\n\n\n"
}
],
"content": null

View File

@ -1,241 +1,433 @@
x Document
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | | Thou too shalt rest.
16 | | </p>
17 | |
18 | | </body>
19 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <p> O'er all the hilltops<br>
2 | | Is quiet now,<br>
3 | | In all the treetops<br>
4 | | Hearest thou<br>
5 | | Hardly a breath;<br>
6 | | The birds are asleep in the trees:<br>
7 | | Wait, soon like these<br>
8 | | Thou too shalt rest.
9 | `-> </p>
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | | Thou too shalt rest.
16 | | </p>
17 | |
18 | `-> </body>
19 | </html>
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | | Thou too shalt rest.
16 | | </p>
17 | |
18 | `-> </body>
19 | </html>
`----
x Attribute
x Child
x Element
x Child
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <p> O'er all the hilltops<br>
2 | | Is quiet now,<br>
3 | | In all the treetops<br>
4 | | Hearest thou<br>
5 | | Hardly a breath;<br>
6 | | The birds are asleep in the trees:<br>
7 | | Wait, soon like these<br>
8 | `-> Thou too shalt rest.
9 | </p>
,-[$DIR/tests/fixture/element/br/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <p> O'er all the hilltops<br>
2 | | Is quiet now,<br>
3 | | In all the treetops<br>
4 | | Hearest thou<br>
5 | | Hardly a breath;<br>
6 | | The birds are asleep in the trees:<br>
7 | | Wait, soon like these<br>
8 | `-> Thou too shalt rest.
9 | </p>
,-[$DIR/tests/fixture/element/br/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | <p> O'er all the hilltops<br>
,-[$DIR/tests/fixture/element/br/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | | Thou too shalt rest.
16 | | </p>
17 | |
18 | `-> </body>
19 | </html>
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | | Thou too shalt rest.
16 | | </p>
17 | |
18 | `-> </body>
19 | </html>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <p> O'er all the hilltops<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <p> O'er all the hilltops<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | ,-> <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | `-> Thou too shalt rest.
16 | </p>
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | ,-> <p> O'er all the hilltops<br>
9 | | Is quiet now,<br>
10 | | In all the treetops<br>
11 | | Hearest thou<br>
12 | | Hardly a breath;<br>
13 | | The birds are asleep in the trees:<br>
14 | | Wait, soon like these<br>
15 | `-> Thou too shalt rest.
16 | </p>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | <p> O'er all the hilltops<br>
: ^^^^^^^^^^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | <p> O'er all the hilltops<br>
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | <p> O'er all the hilltops<br>
: ^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | <p> O'er all the hilltops<br>
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | <p> O'er all the hilltops<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | <p> O'er all the hilltops<br>
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | <p> O'er all the hilltops<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <p> O'er all the hilltops<br>
2 | `-> Is quiet now,<br>
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | ,-> <p> O'er all the hilltops<br>
9 | `-> Is quiet now,<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:1:1]
1 | ,-> <p> O'er all the hilltops<br>
2 | `-> Is quiet now,<br>
,-[$DIR/tests/fixture/element/br/input.html:8:1]
8 | ,-> <p> O'er all the hilltops<br>
9 | `-> Is quiet now,<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:2:5]
2 | Is quiet now,<br>
,-[$DIR/tests/fixture/element/br/input.html:9:5]
9 | Is quiet now,<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:2:5]
2 | Is quiet now,<br>
,-[$DIR/tests/fixture/element/br/input.html:9:5]
9 | Is quiet now,<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:2:5]
2 | ,-> Is quiet now,<br>
3 | `-> In all the treetops<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:9:5]
9 | ,-> Is quiet now,<br>
10 | `-> In all the treetops<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:2:5]
2 | ,-> Is quiet now,<br>
3 | `-> In all the treetops<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:9:5]
9 | ,-> Is quiet now,<br>
10 | `-> In all the treetops<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:3:5]
3 | In all the treetops<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:10:5]
10 | In all the treetops<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:3:5]
3 | In all the treetops<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:10:5]
10 | In all the treetops<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:3:5]
3 | ,-> In all the treetops<br>
4 | `-> Hearest thou<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:10:5]
10 | ,-> In all the treetops<br>
11 | `-> Hearest thou<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:3:5]
3 | ,-> In all the treetops<br>
4 | `-> Hearest thou<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:10:5]
10 | ,-> In all the treetops<br>
11 | `-> Hearest thou<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | Hearest thou<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:11:5]
11 | Hearest thou<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | Hearest thou<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:11:5]
11 | Hearest thou<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | ,-> Hearest thou<br>
5 | `-> Hardly a breath;<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:11:5]
11 | ,-> Hearest thou<br>
12 | `-> Hardly a breath;<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:4:5]
4 | ,-> Hearest thou<br>
5 | `-> Hardly a breath;<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:11:5]
11 | ,-> Hearest thou<br>
12 | `-> Hardly a breath;<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:5:5]
5 | Hardly a breath;<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:12:5]
12 | Hardly a breath;<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:5:5]
5 | Hardly a breath;<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:12:5]
12 | Hardly a breath;<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:5:5]
5 | ,-> Hardly a breath;<br>
6 | `-> The birds are asleep in the trees:<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:12:5]
12 | ,-> Hardly a breath;<br>
13 | `-> The birds are asleep in the trees:<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:5:5]
5 | ,-> Hardly a breath;<br>
6 | `-> The birds are asleep in the trees:<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:12:5]
12 | ,-> Hardly a breath;<br>
13 | `-> The birds are asleep in the trees:<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:6:5]
6 | The birds are asleep in the trees:<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:13:5]
13 | The birds are asleep in the trees:<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:6:5]
6 | The birds are asleep in the trees:<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:13:5]
13 | The birds are asleep in the trees:<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:6:5]
6 | ,-> The birds are asleep in the trees:<br>
7 | `-> Wait, soon like these<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:13:5]
13 | ,-> The birds are asleep in the trees:<br>
14 | `-> Wait, soon like these<br>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:6:5]
6 | ,-> The birds are asleep in the trees:<br>
7 | `-> Wait, soon like these<br>
`----
,-[$DIR/tests/fixture/element/br/input.html:13:5]
13 | ,-> The birds are asleep in the trees:<br>
14 | `-> Wait, soon like these<br>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:7:5]
7 | Wait, soon like these<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:14:5]
14 | Wait, soon like these<br>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/br/input.html:7:5]
7 | Wait, soon like these<br>
: ^^^^
`----
,-[$DIR/tests/fixture/element/br/input.html:14:5]
14 | Wait, soon like these<br>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:7:5]
7 | ,-> Wait, soon like these<br>
8 | `-> Thou too shalt rest.
9 | </p>
`----
,-[$DIR/tests/fixture/element/br/input.html:14:5]
14 | ,-> Wait, soon like these<br>
15 | `-> Thou too shalt rest.
16 | </p>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:7:5]
7 | ,-> Wait, soon like these<br>
8 | `-> Thou too shalt rest.
9 | </p>
`----
,-[$DIR/tests/fixture/element/br/input.html:14:5]
14 | ,-> Wait, soon like these<br>
15 | `-> Thou too shalt rest.
16 | </p>
`----
x Child
,-[$DIR/tests/fixture/element/br/input.html:9:1]
9 | </p>
: ^
`----
,-[$DIR/tests/fixture/element/br/input.html:16:1]
16 | ,-> </p>
17 | |
18 | `-> </body>
19 | </html>
`----
x Text
,-[$DIR/tests/fixture/element/br/input.html:9:1]
9 | </p>
: ^
`----
,-[$DIR/tests/fixture/element/br/input.html:16:1]
16 | ,-> </p>
17 | |
18 | `-> </body>
19 | </html>
`----

View File

@ -1,7 +1,22 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <button>
| <p>
| "x
"

View File

@ -1 +1,11 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<button><p></button>x
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 23,
"end": 123,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 23,
"start": 17,
"end": 116,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 9,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 23,
"start": 77,
"end": 116,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 85,
"ctxt": 0
},
"value": "\n\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 12,
"start": 85,
"end": 96,
"ctxt": 0
},
"tagName": "button",
@ -56,8 +140,8 @@
{
"type": "Element",
"span": {
"start": 9,
"end": 12,
"start": 93,
"end": 96,
"ctxt": 0
},
"tagName": "p",
@ -72,11 +156,11 @@
{
"type": "Text",
"span": {
"start": 21,
"end": 23,
"start": 105,
"end": 116,
"ctxt": 0
},
"value": "x\n"
"value": "x\n\n\n"
}
],
"content": null

View File

@ -1,50 +1,209 @@
x Document
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <button><p></button>x
9 | |
10 | | </body>
11 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----
x Attribute
x Child
x Element
x Child
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^^^^^^^^^^
,-[$DIR/tests/fixture/element/button/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^^^^^^^^^^
,-[$DIR/tests/fixture/element/button/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^^
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^
,-[$DIR/tests/fixture/element/button/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:1:1]
1 | <button><p></button>x
: ^^
,-[$DIR/tests/fixture/element/button/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <button><p></button>x
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <button><p></button>x
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | <button><p></button>x
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | <button><p></button>x
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | <button><p></button>x
: ^^^
`----
x Element
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | <button><p></button>x
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | ,-> <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----
x Text
,-[$DIR/tests/fixture/element/button/input.html:8:1]
8 | ,-> <button><p></button>x
9 | |
10 | `-> </body>
11 | </html>
`----

View File

@ -1,6 +1,18 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <popup-info>
| data-text="Your card validation code (CVC)
is an extra security feature — it is the last 3 or 4 numbers on the
@ -73,3 +85,6 @@
| "I'm in Shadow DOM. My markup was stamped from a <template>."
| "
"
| "
"

View File

@ -1,3 +1,9 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<popup-info img="img/alt.png" data-text="Your card validation code (CVC)
is an extra security feature — it is the last 3 or 4 numbers on the
back of your card."></popup-info>
@ -21,4 +27,6 @@
p { color: green; }
</style>
<p>I'm in Shadow DOM. My markup was stamped from a &lt;template&gt;.</p>
</template>
</template>
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 779,
"end": 878,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 768,
"start": 17,
"end": 871,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 168,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 768,
"start": 77,
"end": 871,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 84,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 168,
"start": 84,
"end": 251,
"ctxt": 0
},
"tagName": "popup-info",
@ -83,8 +167,8 @@
{
"type": "Text",
"span": {
"start": 181,
"end": 183,
"start": 264,
"end": 266,
"ctxt": 0
},
"value": "\n\n"
@ -92,8 +176,8 @@
{
"type": "Element",
"span": {
"start": 183,
"end": 214,
"start": 266,
"end": 297,
"ctxt": 0
},
"tagName": "custom-square",
@ -130,8 +214,8 @@
{
"type": "Text",
"span": {
"start": 230,
"end": 232,
"start": 313,
"end": 315,
"ctxt": 0
},
"value": "\n\n"
@ -139,8 +223,8 @@
{
"type": "Element",
"span": {
"start": 232,
"end": 258,
"start": 315,
"end": 341,
"ctxt": 0
},
"tagName": "app-drawer",
@ -177,8 +261,8 @@
{
"type": "Text",
"span": {
"start": 271,
"end": 273,
"start": 354,
"end": 356,
"ctxt": 0
},
"value": "\n\n"
@ -186,8 +270,8 @@
{
"type": "Element",
"span": {
"start": 273,
"end": 505,
"start": 356,
"end": 588,
"ctxt": 0
},
"tagName": "share-buttons",
@ -197,8 +281,8 @@
{
"type": "Text",
"span": {
"start": 288,
"end": 293,
"start": 371,
"end": 376,
"ctxt": 0
},
"value": "\n "
@ -206,8 +290,8 @@
{
"type": "Element",
"span": {
"start": 293,
"end": 344,
"start": 376,
"end": 427,
"ctxt": 0
},
"tagName": "social-button",
@ -230,8 +314,8 @@
{
"type": "Element",
"span": {
"start": 323,
"end": 344,
"start": 406,
"end": 427,
"ctxt": 0
},
"tagName": "a",
@ -254,8 +338,8 @@
{
"type": "Text",
"span": {
"start": 337,
"end": 344,
"start": 420,
"end": 427,
"ctxt": 0
},
"value": "Twitter"
@ -269,8 +353,8 @@
{
"type": "Text",
"span": {
"start": 364,
"end": 369,
"start": 447,
"end": 452,
"ctxt": 0
},
"value": "\n "
@ -278,8 +362,8 @@
{
"type": "Element",
"span": {
"start": 369,
"end": 416,
"start": 452,
"end": 499,
"ctxt": 0
},
"tagName": "social-button",
@ -302,8 +386,8 @@
{
"type": "Element",
"span": {
"start": 394,
"end": 416,
"start": 477,
"end": 499,
"ctxt": 0
},
"tagName": "a",
@ -326,8 +410,8 @@
{
"type": "Text",
"span": {
"start": 408,
"end": 416,
"start": 491,
"end": 499,
"ctxt": 0
},
"value": "Facebook"
@ -341,8 +425,8 @@
{
"type": "Text",
"span": {
"start": 436,
"end": 441,
"start": 519,
"end": 524,
"ctxt": 0
},
"value": "\n "
@ -350,8 +434,8 @@
{
"type": "Element",
"span": {
"start": 441,
"end": 484,
"start": 524,
"end": 567,
"ctxt": 0
},
"tagName": "social-button",
@ -374,8 +458,8 @@
{
"type": "Element",
"span": {
"start": 468,
"end": 484,
"start": 551,
"end": 567,
"ctxt": 0
},
"tagName": "a",
@ -398,8 +482,8 @@
{
"type": "Text",
"span": {
"start": 482,
"end": 484,
"start": 565,
"end": 567,
"ctxt": 0
},
"value": "G+"
@ -413,8 +497,8 @@
{
"type": "Text",
"span": {
"start": 504,
"end": 505,
"start": 587,
"end": 588,
"ctxt": 0
},
"value": "\n"
@ -425,8 +509,8 @@
{
"type": "Text",
"span": {
"start": 521,
"end": 523,
"start": 604,
"end": 606,
"ctxt": 0
},
"value": "\n\n"
@ -434,8 +518,8 @@
{
"type": "Element",
"span": {
"start": 523,
"end": 580,
"start": 606,
"end": 663,
"ctxt": 0
},
"tagName": "x-foo-with-markup",
@ -445,8 +529,8 @@
{
"type": "Text",
"span": {
"start": 542,
"end": 547,
"start": 625,
"end": 630,
"ctxt": 0
},
"value": "\n "
@ -454,8 +538,8 @@
{
"type": "Element",
"span": {
"start": 547,
"end": 575,
"start": 630,
"end": 658,
"ctxt": 0
},
"tagName": "b",
@ -465,8 +549,8 @@
{
"type": "Text",
"span": {
"start": 550,
"end": 575,
"start": 633,
"end": 658,
"ctxt": 0
},
"value": "I'm an x-foo-with-markup!"
@ -477,8 +561,8 @@
{
"type": "Text",
"span": {
"start": 579,
"end": 580,
"start": 662,
"end": 663,
"ctxt": 0
},
"value": "\n"
@ -489,8 +573,8 @@
{
"type": "Text",
"span": {
"start": 600,
"end": 602,
"start": 683,
"end": 685,
"ctxt": 0
},
"value": "\n\n"
@ -498,8 +582,8 @@
{
"type": "Element",
"span": {
"start": 602,
"end": 768,
"start": 685,
"end": 851,
"ctxt": 0
},
"tagName": "template",
@ -522,16 +606,16 @@
"content": {
"type": "DocumentFragment",
"span": {
"start": 602,
"end": 768,
"start": 685,
"end": 851,
"ctxt": 0
},
"children": [
{
"type": "Text",
"span": {
"start": 637,
"end": 642,
"start": 720,
"end": 725,
"ctxt": 0
},
"value": "\n "
@ -539,8 +623,8 @@
{
"type": "Element",
"span": {
"start": 642,
"end": 682,
"start": 725,
"end": 765,
"ctxt": 0
},
"tagName": "style",
@ -550,8 +634,8 @@
{
"type": "Text",
"span": {
"start": 649,
"end": 682,
"start": 732,
"end": 765,
"ctxt": 0
},
"value": "\n p { color: green; }\n "
@ -562,8 +646,8 @@
{
"type": "Text",
"span": {
"start": 690,
"end": 695,
"start": 773,
"end": 778,
"ctxt": 0
},
"value": "\n "
@ -571,8 +655,8 @@
{
"type": "Element",
"span": {
"start": 695,
"end": 763,
"start": 778,
"end": 846,
"ctxt": 0
},
"tagName": "p",
@ -582,8 +666,8 @@
{
"type": "Text",
"span": {
"start": 698,
"end": 763,
"start": 781,
"end": 846,
"ctxt": 0
},
"value": "I'm in Shadow DOM. My markup was stamped from a <template>."
@ -594,14 +678,23 @@
{
"type": "Text",
"span": {
"start": 767,
"end": 768,
"start": 850,
"end": 851,
"ctxt": 0
},
"value": "\n"
}
]
}
},
{
"type": "Text",
"span": {
"start": 862,
"end": 871,
"ctxt": 0
},
"value": "\n\n"
}
],
"content": null

View File

@ -1,6 +1,19 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <dialog>
| open=""
| "
@ -8,4 +21,9 @@
| <p>
| "Greetings, one and all!"
| "
"
| "
"

View File

@ -1,3 +1,13 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<dialog open>
<p>Greetings, one and all!</p>
</dialog>
</dialog>
</body>
</html>

View File

@ -2,51 +2,135 @@
"type": "Document",
"span": {
"start": 1,
"end": 59,
"end": 161,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 50,
"start": 17,
"end": 161,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 14,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 50,
"start": 77,
"end": 161,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 85,
"ctxt": 0
},
"value": "\n\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 50,
"start": 85,
"end": 134,
"ctxt": 0
},
"tagName": "dialog",
@ -69,8 +153,8 @@
{
"type": "Text",
"span": {
"start": 14,
"end": 19,
"start": 98,
"end": 103,
"ctxt": 0
},
"value": "\n "
@ -78,8 +162,8 @@
{
"type": "Element",
"span": {
"start": 19,
"end": 45,
"start": 103,
"end": 129,
"ctxt": 0
},
"tagName": "p",
@ -89,8 +173,8 @@
{
"type": "Text",
"span": {
"start": 22,
"end": 45,
"start": 106,
"end": 129,
"ctxt": 0
},
"value": "Greetings, one and all!"
@ -101,14 +185,23 @@
{
"type": "Text",
"span": {
"start": 49,
"end": 50,
"start": 133,
"end": 134,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 143,
"end": 161,
"ctxt": 0
},
"value": "\n\n\n\n"
}
],
"content": null

View File

@ -1,81 +1,259 @@
x Document
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <dialog open>
2 | | <p>Greetings, one and all!</p>
3 | `-> </dialog>
`----
x Child
x Element
x Child
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <dialog open>
9 | | <p>Greetings, one and all!</p>
10 | | </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <dialog open>
2 | `-> <p>Greetings, one and all!</p>
3 | </dialog>
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Element
x DocumentType
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <dialog open>
2 | `-> <p>Greetings, one and all!</p>
3 | </dialog>
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <dialog open>
9 | | <p>Greetings, one and all!</p>
10 | | </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | |
8 | | <dialog open>
9 | | <p>Greetings, one and all!</p>
10 | | </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Attribute
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <dialog open>
2 | `-> <p>Greetings, one and all!</p>
,-[$DIR/tests/fixture/element/dialog/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:1:1]
1 | ,-> <dialog open>
2 | `-> <p>Greetings, one and all!</p>
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
,-[$DIR/tests/fixture/element/dialog/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <dialog open>
9 | | <p>Greetings, one and all!</p>
10 | | </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:6:1]
6 | ,-> <body>
7 | |
8 | | <dialog open>
9 | | <p>Greetings, one and all!</p>
10 | | </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <dialog open>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:6:1]
6 | ,-> <body>
7 | `->
8 | <dialog open>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:8:1]
8 | ,-> <dialog open>
9 | `-> <p>Greetings, one and all!</p>
10 | </dialog>
`----
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:8:1]
8 | ,-> <dialog open>
9 | `-> <p>Greetings, one and all!</p>
10 | </dialog>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:8:1]
8 | ,-> <dialog open>
9 | `-> <p>Greetings, one and all!</p>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:8:1]
8 | ,-> <dialog open>
9 | `-> <p>Greetings, one and all!</p>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^^^^^^^^^^^^^^^^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
: ^
3 | </dialog>
`----
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^
10 | </dialog>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:2:5]
2 | <p>Greetings, one and all!</p>
: ^
3 | </dialog>
`----
,-[$DIR/tests/fixture/element/dialog/input.html:9:5]
9 | <p>Greetings, one and all!</p>
: ^
10 | </dialog>
`----
x Child
,-[$DIR/tests/fixture/element/dialog/input.html:10:1]
10 | ,-> </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----
x Text
,-[$DIR/tests/fixture/element/dialog/input.html:10:1]
10 | ,-> </dialog>
11 | |
12 | | </body>
13 | `-> </html>
`----

View File

@ -1,7 +1,21 @@
| <!DOCTYPE html>
| <html>
| lang="en"
| <head>
| <body>
| <p>
| <table>
| "
| "
"
| <title>
| "Document"
| "
"
| "
"
| <body>
| "
"
| <p>
| <table>
| "
"

View File

@ -1 +1,9 @@
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<p><table></table>
</body>
</html>

View File

@ -2,81 +2,164 @@
"type": "Document",
"span": {
"start": 1,
"end": 20,
"end": 119,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 20,
"start": 17,
"end": 119,
"ctxt": 0
},
"tagName": "html",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"attributes": [
{
"type": "Attribute",
"span": {
"start": 0,
"end": 0,
"ctxt": 0
},
"namespace": null,
"prefix": null,
"name": "lang",
"value": "en"
}
],
"children": [
{
"type": "Element",
"span": {
"start": 0,
"end": 4,
"start": 34,
"end": 69,
"ctxt": 0
},
"tagName": "head",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"children": [
{
"type": "Text",
"span": {
"start": 40,
"end": 45,
"ctxt": 0
},
"value": "\n "
},
{
"type": "Element",
"span": {
"start": 45,
"end": 60,
"ctxt": 0
},
"tagName": "title",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 52,
"end": 60,
"ctxt": 0
},
"value": "Document"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"ctxt": 0
},
"value": "\n"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 76,
"end": 77,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 0,
"end": 20,
"start": 77,
"end": 119,
"ctxt": 0
},
"tagName": "body",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 83,
"end": 84,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 1,
"end": 20,
"start": 84,
"end": 87,
"ctxt": 0
},
"tagName": "p",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Element",
"span": {
"start": 4,
"end": 11,
"ctxt": 0
},
"tagName": "table",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"content": null
},
{
"type": "Text",
"span": {
"start": 19,
"end": 20,
"ctxt": 0
},
"value": "\n"
}
],
"children": [],
"content": null
},
{
"type": "Element",
"span": {
"start": 87,
"end": 94,
"ctxt": 0
},
"tagName": "table",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [],
"content": null
},
{
"type": "Text",
"span": {
"start": 102,
"end": 119,
"ctxt": 0
},
"value": "\n\n\n"
}
],
"content": null

View File

@ -1,50 +1,197 @@
x Document
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^^^^^^^^^^^^^^^^^^^
1 | ,-> <!doctype html>
2 | | <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Child
x Element
x Child
x Element
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^^^^^^^^^^^^^^^^^^^
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^^^^^^^^^^^^^^^^^^^
,-[$DIR/tests/fixture/element/p-2/input.html:2:1]
2 | ,-> <html lang="en">
3 | | <head>
4 | | <title>Document</title>
5 | | </head>
6 | | <body>
7 | | <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Attribute
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^^^^^^^
,-[$DIR/tests/fixture/element/p-2/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^^^^^^^
,-[$DIR/tests/fixture/element/p-2/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^
,-[$DIR/tests/fixture/element/p-2/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:1:1]
1 | <p><table></table>
: ^
,-[$DIR/tests/fixture/element/p-2/input.html:3:1]
3 | ,-> <head>
4 | `-> <title>Document</title>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:4:5]
4 | <title>Document</title>
: ^
5 | </head>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:5:1]
5 | </head>
: ^
6 | <body>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:6:1]
6 | ,-> <body>
7 | | <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:6:1]
6 | ,-> <body>
7 | | <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:6:1]
6 | <body>
: ^
7 | <p><table></table>
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:6:1]
6 | <body>
: ^
7 | <p><table></table>
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | <p><table></table>
: ^^^
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | <p><table></table>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | <p><table></table>
: ^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | <p><table></table>
: ^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | ,-> <p><table></table>
8 | | </body>
9 | `-> </html>
`----
x Text
,-[$DIR/tests/fixture/element/p-2/input.html:7:1]
7 | ,-> <p><table></table>
8 | | </body>
9 | `-> </html>
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <body>

View File

@ -1 +1 @@
<html><ruby>a<rb>b<rt></ruby></html>
<!doctype html><html><ruby>a<rb>b<rt></ruby></html>

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 37,
"end": 52,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 1,
"end": 23,
"start": 16,
"end": 38,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 13,
"end": 28,
"ctxt": 0
},
"tagName": "head",
@ -35,7 +46,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 23,
"end": 38,
"ctxt": 0
},
"tagName": "body",
@ -45,8 +56,8 @@
{
"type": "Element",
"span": {
"start": 7,
"end": 23,
"start": 22,
"end": 38,
"ctxt": 0
},
"tagName": "ruby",
@ -56,8 +67,8 @@
{
"type": "Text",
"span": {
"start": 13,
"end": 14,
"start": 28,
"end": 29,
"ctxt": 0
},
"value": "a"
@ -65,8 +76,8 @@
{
"type": "Element",
"span": {
"start": 14,
"end": 19,
"start": 29,
"end": 34,
"ctxt": 0
},
"tagName": "rb",
@ -76,8 +87,8 @@
{
"type": "Text",
"span": {
"start": 18,
"end": 19,
"start": 33,
"end": 34,
"ctxt": 0
},
"value": "b"
@ -88,8 +99,8 @@
{
"type": "Element",
"span": {
"start": 19,
"end": 23,
"start": 34,
"end": 38,
"ctxt": 0
},
"tagName": "rt",

View File

@ -1,20 +1,32 @@
x Document
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
@ -27,60 +39,60 @@
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-1/input.html:1:1]
1 | <html><ruby>a<rb>b<rt></ruby></html>
: ^^^^
1 | <!doctype html><html><ruby>a<rb>b<rt></ruby></html>
: ^^^^
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <body>

View File

@ -1 +1 @@
<html><ruby>a<rb>b<rtc></ruby></html>
<!doctype html><html><ruby>a<rb>b<rtc></ruby></html>

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 39,
"end": 54,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 1,
"end": 39,
"start": 16,
"end": 54,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 13,
"end": 28,
"ctxt": 0
},
"tagName": "head",
@ -35,7 +46,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 39,
"end": 54,
"ctxt": 0
},
"tagName": "body",
@ -45,8 +56,8 @@
{
"type": "Element",
"span": {
"start": 7,
"end": 24,
"start": 22,
"end": 39,
"ctxt": 0
},
"tagName": "ruby",
@ -56,8 +67,8 @@
{
"type": "Text",
"span": {
"start": 13,
"end": 14,
"start": 28,
"end": 29,
"ctxt": 0
},
"value": "a"
@ -65,8 +76,8 @@
{
"type": "Element",
"span": {
"start": 14,
"end": 19,
"start": 29,
"end": 34,
"ctxt": 0
},
"tagName": "rb",
@ -76,8 +87,8 @@
{
"type": "Text",
"span": {
"start": 18,
"end": 19,
"start": 33,
"end": 34,
"ctxt": 0
},
"value": "b"
@ -88,8 +99,8 @@
{
"type": "Element",
"span": {
"start": 19,
"end": 24,
"start": 34,
"end": 39,
"ctxt": 0
},
"tagName": "rtc",
@ -104,8 +115,8 @@
{
"type": "Text",
"span": {
"start": 38,
"end": 39,
"start": 53,
"end": 54,
"ctxt": 0
},
"value": "\n"

View File

@ -1,20 +1,32 @@
x Document
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
@ -27,72 +39,72 @@
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby-2/input.html:1:1]
1 | <html><ruby>a<rb>b<rtc></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rtc></ruby></html>
: ^
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <body>

View File

@ -1 +1 @@
<html><ruby>a<rb>b<rb></ruby></html>
<!doctype html><html><ruby>a<rb>b<rb></ruby></html>

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 38,
"end": 53,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 1,
"end": 38,
"start": 16,
"end": 53,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 13,
"end": 28,
"ctxt": 0
},
"tagName": "head",
@ -35,7 +46,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 38,
"end": 53,
"ctxt": 0
},
"tagName": "body",
@ -45,8 +56,8 @@
{
"type": "Element",
"span": {
"start": 7,
"end": 23,
"start": 22,
"end": 38,
"ctxt": 0
},
"tagName": "ruby",
@ -56,8 +67,8 @@
{
"type": "Text",
"span": {
"start": 13,
"end": 14,
"start": 28,
"end": 29,
"ctxt": 0
},
"value": "a"
@ -65,8 +76,8 @@
{
"type": "Element",
"span": {
"start": 14,
"end": 19,
"start": 29,
"end": 34,
"ctxt": 0
},
"tagName": "rb",
@ -76,8 +87,8 @@
{
"type": "Text",
"span": {
"start": 18,
"end": 19,
"start": 33,
"end": 34,
"ctxt": 0
},
"value": "b"
@ -88,8 +99,8 @@
{
"type": "Element",
"span": {
"start": 19,
"end": 23,
"start": 34,
"end": 38,
"ctxt": 0
},
"tagName": "rb",
@ -104,8 +115,8 @@
{
"type": "Text",
"span": {
"start": 37,
"end": 38,
"start": 52,
"end": 53,
"ctxt": 0
},
"value": "\n"

View File

@ -1,20 +1,32 @@
x Document
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
@ -27,72 +39,72 @@
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^
`----
x Element
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^^^^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/ruby/input.html:1:1]
1 | <html><ruby>a<rb>b<rb></ruby></html>
: ^
1 | <!doctype html><html><ruby>a<rb>b<rb></ruby></html>
: ^
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <script>

View File

@ -1,3 +1,4 @@
<!doctype html>
<script type="text/javascript">
//<![CDATA[
document.write("<");

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 156,
"end": 172,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 156,
"end": 172,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 147,
"end": 163,
"ctxt": 0
},
"tagName": "head",
@ -32,8 +43,8 @@
{
"type": "Element",
"span": {
"start": 1,
"end": 72,
"start": 17,
"end": 88,
"ctxt": 0
},
"tagName": "script",
@ -56,8 +67,8 @@
{
"type": "Text",
"span": {
"start": 32,
"end": 72,
"start": 48,
"end": 88,
"ctxt": 0
},
"value": "\n//<![CDATA[\ndocument.write(\"<\");\n//]]>\n"
@ -68,8 +79,8 @@
{
"type": "Text",
"span": {
"start": 81,
"end": 82,
"start": 97,
"end": 98,
"ctxt": 0
},
"value": "\n"
@ -77,8 +88,8 @@
{
"type": "Element",
"span": {
"start": 82,
"end": 147,
"start": 98,
"end": 163,
"ctxt": 0
},
"tagName": "script",
@ -88,8 +99,8 @@
{
"type": "Text",
"span": {
"start": 90,
"end": 147,
"start": 106,
"end": 163,
"ctxt": 0
},
"value": "\n let foo = \"<!--<script>-->\";\n\n console.log(foo);\n"
@ -104,7 +115,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 156,
"end": 172,
"ctxt": 0
},
"tagName": "body",

View File

@ -1,110 +1,123 @@
x Document
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | ,-> <script type="text/javascript">
2 | | //<![CDATA[
3 | | document.write("<");
4 | | //]]>
5 | | </script>
6 | | <script>
7 | | let foo = "<!--<script>-->";
8 | |
9 | | console.log(foo);
10 | `-> </script>
1 | ,-> <!doctype html>
2 | | <script type="text/javascript">
3 | | //<![CDATA[
4 | | document.write("<");
5 | | //]]>
6 | | </script>
7 | | <script>
8 | | let foo = "<!--<script>-->";
9 | |
10 | | console.log(foo);
11 | `-> </script>
`----
x Child
x Element
x Child
x Element
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | ,-> <script type="text/javascript">
2 | | //<![CDATA[
3 | | document.write("<");
4 | `-> //]]>
5 | </script>
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
x Element
x Child
x Element
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:2:1]
2 | ,-> <script type="text/javascript">
3 | | //<![CDATA[
4 | | document.write("<");
5 | `-> //]]>
6 | </script>
`----
x Element
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | ,-> <script type="text/javascript">
2 | | //<![CDATA[
3 | | document.write("<");
4 | `-> //]]>
5 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:2:1]
2 | ,-> <script type="text/javascript">
3 | | //<![CDATA[
4 | | document.write("<");
5 | `-> //]]>
6 | </script>
`----
x Attribute
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | ,-> <script type="text/javascript">
2 | | //<![CDATA[
3 | | document.write("<");
4 | `-> //]]>
5 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:2:1]
2 | ,-> <script type="text/javascript">
3 | | //<![CDATA[
4 | | document.write("<");
5 | `-> //]]>
6 | </script>
`----
x Text
,-[$DIR/tests/fixture/element/script-cdata/input.html:1:1]
1 | ,-> <script type="text/javascript">
2 | | //<![CDATA[
3 | | document.write("<");
4 | `-> //]]>
5 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:2:1]
2 | ,-> <script type="text/javascript">
3 | | //<![CDATA[
4 | | document.write("<");
5 | `-> //]]>
6 | </script>
`----
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:5:1]
5 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | </script>
: ^
6 | <script>
7 | <script>
`----
x Text
,-[$DIR/tests/fixture/element/script-cdata/input.html:5:1]
5 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | </script>
: ^
6 | <script>
7 | <script>
`----
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | ,-> <script>
7 | | let foo = "<!--<script>-->";
8 | |
9 | `-> console.log(foo);
10 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:7:1]
7 | ,-> <script>
8 | | let foo = "<!--<script>-->";
9 | |
10 | `-> console.log(foo);
11 | </script>
`----
x Element
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | ,-> <script>
7 | | let foo = "<!--<script>-->";
8 | |
9 | `-> console.log(foo);
10 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:7:1]
7 | ,-> <script>
8 | | let foo = "<!--<script>-->";
9 | |
10 | `-> console.log(foo);
11 | </script>
`----
x Child
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | ,-> <script>
7 | | let foo = "<!--<script>-->";
8 | |
9 | `-> console.log(foo);
10 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:7:1]
7 | ,-> <script>
8 | | let foo = "<!--<script>-->";
9 | |
10 | `-> console.log(foo);
11 | </script>
`----
x Text
,-[$DIR/tests/fixture/element/script-cdata/input.html:6:1]
6 | ,-> <script>
7 | | let foo = "<!--<script>-->";
8 | |
9 | `-> console.log(foo);
10 | </script>
,-[$DIR/tests/fixture/element/script-cdata/input.html:7:1]
7 | ,-> <script>
8 | | let foo = "<!--<script>-->";
9 | |
10 | `-> console.log(foo);
11 | </script>
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <body>

View File

@ -1,3 +1,4 @@
<!doctype html>
<select><option>foo</option><option>bar</option></select>
<select><option>foo<option>bar</select>
<select><option>foo</select>

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 128,
"end": 144,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 128,
"end": 144,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 9,
"end": 25,
"ctxt": 0
},
"tagName": "head",
@ -35,7 +46,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 128,
"end": 144,
"ctxt": 0
},
"tagName": "body",
@ -45,8 +56,8 @@
{
"type": "Element",
"span": {
"start": 1,
"end": 40,
"start": 17,
"end": 56,
"ctxt": 0
},
"tagName": "select",
@ -56,8 +67,8 @@
{
"type": "Element",
"span": {
"start": 9,
"end": 20,
"start": 25,
"end": 36,
"ctxt": 0
},
"tagName": "option",
@ -67,8 +78,8 @@
{
"type": "Text",
"span": {
"start": 17,
"end": 20,
"start": 33,
"end": 36,
"ctxt": 0
},
"value": "foo"
@ -79,8 +90,8 @@
{
"type": "Element",
"span": {
"start": 29,
"end": 40,
"start": 45,
"end": 56,
"ctxt": 0
},
"tagName": "option",
@ -90,8 +101,8 @@
{
"type": "Text",
"span": {
"start": 37,
"end": 40,
"start": 53,
"end": 56,
"ctxt": 0
},
"value": "bar"
@ -105,8 +116,8 @@
{
"type": "Text",
"span": {
"start": 58,
"end": 59,
"start": 74,
"end": 75,
"ctxt": 0
},
"value": "\n"
@ -114,8 +125,8 @@
{
"type": "Element",
"span": {
"start": 59,
"end": 89,
"start": 75,
"end": 105,
"ctxt": 0
},
"tagName": "select",
@ -125,8 +136,8 @@
{
"type": "Element",
"span": {
"start": 67,
"end": 78,
"start": 83,
"end": 94,
"ctxt": 0
},
"tagName": "option",
@ -136,8 +147,8 @@
{
"type": "Text",
"span": {
"start": 75,
"end": 78,
"start": 91,
"end": 94,
"ctxt": 0
},
"value": "foo"
@ -148,8 +159,8 @@
{
"type": "Element",
"span": {
"start": 78,
"end": 89,
"start": 94,
"end": 105,
"ctxt": 0
},
"tagName": "option",
@ -159,8 +170,8 @@
{
"type": "Text",
"span": {
"start": 86,
"end": 89,
"start": 102,
"end": 105,
"ctxt": 0
},
"value": "bar"
@ -174,8 +185,8 @@
{
"type": "Text",
"span": {
"start": 98,
"end": 99,
"start": 114,
"end": 115,
"ctxt": 0
},
"value": "\n"
@ -183,8 +194,8 @@
{
"type": "Element",
"span": {
"start": 99,
"end": 118,
"start": 115,
"end": 134,
"ctxt": 0
},
"tagName": "select",
@ -194,8 +205,8 @@
{
"type": "Element",
"span": {
"start": 107,
"end": 118,
"start": 123,
"end": 134,
"ctxt": 0
},
"tagName": "option",
@ -205,8 +216,8 @@
{
"type": "Text",
"span": {
"start": 115,
"end": 118,
"start": 131,
"end": 134,
"ctxt": 0
},
"value": "foo"
@ -220,8 +231,8 @@
{
"type": "Text",
"span": {
"start": 127,
"end": 128,
"start": 143,
"end": 144,
"ctxt": 0
},
"value": "\n"

View File

@ -1,9 +1,22 @@
x Document
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | ,-> <select><option>foo</option><option>bar</option></select>
2 | | <select><option>foo<option>bar</select>
3 | `-> <select><option>foo</select>
1 | ,-> <!doctype html>
2 | | <select><option>foo</option><option>bar</option></select>
3 | | <select><option>foo<option>bar</select>
4 | `-> <select><option>foo</select>
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
@ -15,197 +28,197 @@
x Element
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^
2 | <select><option>foo<option>bar</select>
3 | <select><option>foo<option>bar</select>
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:1:1]
1 | <select><option>foo</option><option>bar</option></select>
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo</option><option>bar</option></select>
: ^
2 | <select><option>foo<option>bar</select>
3 | <select><option>foo<option>bar</select>
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^
3 | <select><option>foo</select>
4 | <select><option>foo</select>
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:2:1]
2 | <select><option>foo<option>bar</select>
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo<option>bar</select>
: ^
3 | <select><option>foo</select>
4 | <select><option>foo</select>
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^^^^^^^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^^^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^^^
`----
x Child
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^
`----
x Text
,-[$DIR/tests/fixture/element/select/input.html:3:1]
3 | <select><option>foo</select>
,-[$DIR/tests/fixture/element/select/input.html:4:1]
4 | <select><option>foo</select>
: ^
`----

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| xmlns="http://www.w3.org/1999/xhtml"
| <head>

View File

@ -1,4 +1,4 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>XTech SVG Demo</title>
<style>

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
x Document
,-[$DIR/tests/fixture/element/svg/input.html:1:1]
1 | ,-> <html xmlns="http://www.w3.org/1999/xhtml">
1 | ,-> <!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
2 | | <head>
3 | | <title>XTech SVG Demo</title>
4 | | <style>
@ -130,9 +130,21 @@
127 | `-> </html>
`----
x Child
,-[$DIR/tests/fixture/element/svg/input.html:1:1]
1 | <!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
: ^^^^^^^^^^^^^^^
`----
x DocumentType
,-[$DIR/tests/fixture/element/svg/input.html:1:1]
1 | <!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
: ^^^^^^^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/element/svg/input.html:1:1]
1 | ,-> <html xmlns="http://www.w3.org/1999/xhtml">
1 | ,-> <!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
2 | | <head>
3 | | <title>XTech SVG Demo</title>
4 | | <style>
@ -263,7 +275,7 @@
x Element
,-[$DIR/tests/fixture/element/svg/input.html:1:1]
1 | ,-> <html xmlns="http://www.w3.org/1999/xhtml">
1 | ,-> <!doctype html><html xmlns="http://www.w3.org/1999/xhtml">
2 | | <head>
3 | | <title>XTech SVG Demo</title>
4 | | <style>

View File

@ -1,3 +1,4 @@
| <!DOCTYPE html>
| <html>
| <head>
| <body>

View File

@ -1,3 +1,4 @@
<!doctype html>
Text
<div>Text</div>
<div>

View File

@ -2,16 +2,27 @@
"type": "Document",
"span": {
"start": 1,
"end": 92,
"end": 108,
"ctxt": 0
},
"mode": "quirks",
"mode": "no-quirks",
"children": [
{
"type": "DocumentType",
"span": {
"start": 1,
"end": 16,
"ctxt": 0
},
"name": "html",
"publicId": null,
"systemId": null
},
{
"type": "Element",
"span": {
"start": 0,
"end": 92,
"end": 108,
"ctxt": 0
},
"tagName": "html",
@ -22,7 +33,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 2,
"end": 18,
"ctxt": 0
},
"tagName": "head",
@ -35,7 +46,7 @@
"type": "Element",
"span": {
"start": 0,
"end": 92,
"end": 108,
"ctxt": 0
},
"tagName": "body",
@ -45,49 +56,17 @@
{
"type": "Text",
"span": {
"start": 1,
"end": 6,
"start": 17,
"end": 22,
"ctxt": 0
},
"value": "Text\n"
},
{
"type": "Element",
"span": {
"start": 6,
"end": 15,
"ctxt": 0
},
"tagName": "div",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 11,
"end": 15,
"ctxt": 0
},
"value": "Text"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 21,
"end": 22,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 22,
"end": 37,
"end": 31,
"ctxt": 0
},
"tagName": "div",
@ -98,7 +77,39 @@
"type": "Text",
"span": {
"start": 27,
"end": 37,
"end": 31,
"ctxt": 0
},
"value": "Text"
}
],
"content": null
},
{
"type": "Text",
"span": {
"start": 37,
"end": 38,
"ctxt": 0
},
"value": "\n"
},
{
"type": "Element",
"span": {
"start": 38,
"end": 53,
"ctxt": 0
},
"tagName": "div",
"namespace": "http://www.w3.org/1999/xhtml",
"attributes": [],
"children": [
{
"type": "Text",
"span": {
"start": 43,
"end": 53,
"ctxt": 0
},
"value": "\n Text\n"
@ -109,8 +120,8 @@
{
"type": "Text",
"span": {
"start": 43,
"end": 44,
"start": 59,
"end": 60,
"ctxt": 0
},
"value": "\n"
@ -118,8 +129,8 @@
{
"type": "Element",
"span": {
"start": 44,
"end": 62,
"start": 60,
"end": 78,
"ctxt": 0
},
"tagName": "div",
@ -129,8 +140,8 @@
{
"type": "Text",
"span": {
"start": 49,
"end": 62,
"start": 65,
"end": 78,
"ctxt": 0
},
"value": "\nText\n\n\nText\n"
@ -141,8 +152,8 @@
{
"type": "Text",
"span": {
"start": 68,
"end": 69,
"start": 84,
"end": 85,
"ctxt": 0
},
"value": "\n"
@ -150,8 +161,8 @@
{
"type": "Element",
"span": {
"start": 69,
"end": 85,
"start": 85,
"end": 101,
"ctxt": 0
},
"tagName": "div",
@ -161,8 +172,8 @@
{
"type": "Text",
"span": {
"start": 74,
"end": 85,
"start": 90,
"end": 101,
"ctxt": 0
},
"value": "Text\n\n\nText"
@ -173,8 +184,8 @@
{
"type": "Text",
"span": {
"start": 91,
"end": 92,
"start": 107,
"end": 108,
"ctxt": 0
},
"value": "\n"

View File

@ -1,219 +1,232 @@
x Document
,-[$DIR/tests/fixture/text/basic/input.html:1:1]
1 | ,-> Text
2 | | <div>Text</div>
3 | | <div>
4 | | Text
5 | | </div>
6 | | <div>
7 | | Text
8 | |
1 | ,-> <!doctype html>
2 | | Text
3 | | <div>Text</div>
4 | | <div>
5 | | Text
6 | | </div>
7 | | <div>
8 | | Text
9 | |
10 | | Text
11 | | </div>
12 | | <div>Text
13 | |
10 | |
11 | | Text
12 | | </div>
13 | | <div>Text
14 | |
15 | `-> Text</div>
15 | |
16 | `-> Text</div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Element
x DocumentType
,-[$DIR/tests/fixture/text/basic/input.html:1:1]
1 | <!doctype html>
: ^^^^^^^^^^^^^^^
`----
x Child
x Element
x Child
,-[$DIR/tests/fixture/text/basic/input.html:1:1]
1 | Text
: ^^^^^
2 | <div>Text</div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:1:1]
1 | Text
: ^^^^^
2 | <div>Text</div>
`----
x Element
x Child
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
2 | Text
: ^^^^^
3 | <div>Text</div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | Text
: ^^^^^
3 | <div>Text</div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^^^^^^^^^
`----
x Element
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^^^^^^^^^
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^^^^
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^^^^
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^
3 | <div>
4 | <div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:2:1]
2 | <div>Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | <div>Text</div>
: ^
3 | <div>
4 | <div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | ,-> <div>
4 | `-> Text
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:4:1]
4 | ,-> <div>
5 | `-> Text
6 | </div>
`----
x Element
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | ,-> <div>
4 | `-> Text
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:4:1]
4 | ,-> <div>
5 | `-> Text
6 | </div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | ,-> <div>
4 | `-> Text
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:4:1]
4 | ,-> <div>
5 | `-> Text
6 | </div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:3:1]
3 | ,-> <div>
4 | `-> Text
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:4:1]
4 | ,-> <div>
5 | `-> Text
6 | </div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:5:1]
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | </div>
: ^
6 | <div>
7 | <div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:5:1]
5 | </div>
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | </div>
: ^
6 | <div>
7 | <div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | ,-> <div>
7 | | Text
8 | |
,-[$DIR/tests/fixture/text/basic/input.html:7:1]
7 | ,-> <div>
8 | | Text
9 | |
10 | `-> Text
11 | </div>
10 | |
11 | `-> Text
12 | </div>
`----
x Element
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | ,-> <div>
7 | | Text
8 | |
,-[$DIR/tests/fixture/text/basic/input.html:7:1]
7 | ,-> <div>
8 | | Text
9 | |
10 | `-> Text
11 | </div>
10 | |
11 | `-> Text
12 | </div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | ,-> <div>
7 | | Text
8 | |
,-[$DIR/tests/fixture/text/basic/input.html:7:1]
7 | ,-> <div>
8 | | Text
9 | |
10 | `-> Text
11 | </div>
10 | |
11 | `-> Text
12 | </div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:6:1]
6 | ,-> <div>
7 | | Text
8 | |
,-[$DIR/tests/fixture/text/basic/input.html:7:1]
7 | ,-> <div>
8 | | Text
9 | |
10 | `-> Text
11 | </div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:11:1]
11 | </div>
: ^
12 | <div>Text
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:11:1]
11 | </div>
: ^
12 | <div>Text
10 | |
11 | `-> Text
12 | </div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:12:1]
12 | ,-> <div>Text
13 | |
12 | </div>
: ^
13 | <div>Text
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:12:1]
12 | </div>
: ^
13 | <div>Text
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:13:1]
13 | ,-> <div>Text
14 | |
15 | `-> Text</div>
15 | |
16 | `-> Text</div>
`----
x Element
,-[$DIR/tests/fixture/text/basic/input.html:12:1]
12 | ,-> <div>Text
13 | |
,-[$DIR/tests/fixture/text/basic/input.html:13:1]
13 | ,-> <div>Text
14 | |
15 | `-> Text</div>
15 | |
16 | `-> Text</div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:12:1]
12 | ,-> <div>Text
13 | |
,-[$DIR/tests/fixture/text/basic/input.html:13:1]
13 | ,-> <div>Text
14 | |
15 | `-> Text</div>
15 | |
16 | `-> Text</div>
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:12:1]
12 | ,-> <div>Text
13 | |
,-[$DIR/tests/fixture/text/basic/input.html:13:1]
13 | ,-> <div>Text
14 | |
15 | `-> Text</div>
15 | |
16 | `-> Text</div>
`----
x Child
,-[$DIR/tests/fixture/text/basic/input.html:15:1]
15 | Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:16:1]
16 | Text</div>
: ^
`----
x Text
,-[$DIR/tests/fixture/text/basic/input.html:15:1]
15 | Text</div>
,-[$DIR/tests/fixture/text/basic/input.html:16:1]
16 | Text</div>
: ^
`----

View File

@ -0,0 +1,2 @@
(1,3): expected-doctype-but-got-start-tag
(1,10): adoption-agency-1.3

View File

@ -0,0 +1,2 @@
(1,3): expected-doctype-but-got-start-tag
(1,12): adoption-agency-1.3

View File

@ -0,0 +1,5 @@
(1,7): expected-doctype-but-got-start-tag
(1,10): unexpected-start-tag-implies-table-voodoo
(1,11): unexpected-character-implies-table-voodoo
(1,15): unexpected-cell-in-table-body
(1,30): unexpected-implied-end-tag-in-table-view

View File

@ -0,0 +1,4 @@
(1,7): expected-doctype-but-got-start-tag
(1,8): unexpected-character-implies-table-voodoo
(1,12): unexpected-cell-in-table-body
(1,22): unexpected-character-implies-table-voodoo

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,23): unexpected-end-tag
(1,23): adoption-agency-1.3

View File

@ -0,0 +1,10 @@
(1,5): expected-doctype-but-got-start-tag
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): adoption-agency-1.3
(1,65): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,3 @@
(1,5): expected-doctype-but-got-start-tag
(1,32): adoption-agency-1.3
(1,32): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,3): expected-doctype-but-got-start-tag

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,18): unexpected-end-tag
(1,19): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,3 @@
(1,35): adoption-agency-1.3
(1,40): adoption-agency-1.3
(1,40): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,2 @@
(1,3): expected-doctype-but-got-start-tag
(1,17): adoption-agency-1.3

View File

@ -0,0 +1,2 @@
(1,3): expected-doctype-but-got-start-tag
(1,12): adoption-agency-1.3

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,20): adoption-agency-1.3
(1,20): adoption-agency-1.3

View File

@ -0,0 +1,10 @@
(1,7): expected-doctype-but-got-start-tag
(1,10): unexpected-start-tag-implies-table-voodoo
(1,11): unexpected-character-implies-table-voodoo
(1,14): unexpected-start-tag-implies-table-voodoo
(1,15): unexpected-character-implies-table-voodoo
(1,19): unexpected-end-tag-implies-table-voodoo
(1,19): adoption-agency-1.3
(1,20): unexpected-character-implies-table-voodoo
(1,24): unexpected-end-tag-implies-table-voodoo
(1,24): eof-in-table

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,16): adoption-agency-1.3
(1,16): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,16): adoption-agency-1.3
(1,16): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,16): adoption-agency-1.3
(1,16): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,30): unexpected-end-tag
(1,35): adoption-agency-1.3

View File

@ -0,0 +1,3 @@
(1,3): expected-doctype-but-got-start-tag
(1,16): adoption-agency-1.3
(1,17): expected-closing-tag-but-got-eof

View File

@ -0,0 +1,5 @@
(1,3): expected-doctype-but-got-start-tag
(1,35): unexpected-start-tag-implies-end-tag
(1,35): adoption-agency-1.3
(1,35): adoption-agency-1.3
(1,35): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,39): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,39): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,38): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,35): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,35): expected-closing-tag-but-got-eof

View File

@ -0,0 +1 @@
(1,34): expected-closing-tag-but-got-eof

Some files were not shown because too many files have changed in this diff Show More