summaryrefslogtreecommitdiff
path: root/test/data/tokeniser2/contentModelFlags.test
blob: 1dec3e80f04669f1329814f89e4579df2932530f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
{"tests": [

{"description":"PLAINTEXT content model flag",
"contentModelFlags":["PLAINTEXT"],
"lastStartTag":"plaintext",
"input":"<head>&body;",
"output":[["Character", "<head>&body;"]]},

{"description":"End tag closing RCDATA or CDATA",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp>",
"output":[["Character", "foo"], ["EndTag", "xmp"]]},

{"description":"End tag closing RCDATA or CDATA (case-insensitivity)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xMp>",
"output":[["Character", "foo"], ["EndTag", "xmp"]]},

{"description":"End tag closing RCDATA or CDATA (ending with space)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp ",
"output":[["Character", "foo"], "ParseError", ["EndTag", "xmp"]]},

{"description":"End tag closing RCDATA or CDATA (ending with EOF)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp",
"output":[["Character", "foo"], "ParseError", ["EndTag", "xmp"]]},

{"description":"End tag closing RCDATA or CDATA (ending with slash)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp/",
"output":[["Character", "foo"], "ParseError", ["EndTag", "xmp"]]},

{"description":"End tag not closing RCDATA or CDATA (ending with left-angle-bracket)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp<",
"output":[["Character", "foo</xmp<"]]},

{"description":"End tag with incorrect name in RCDATA or CDATA",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"</foo>bar</xmp>",
"output":[["Character", "</foo>bar"], ["EndTag", "xmp"]]},

{"description":"End tag with incorrect name in RCDATA or CDATA (starting like correct name)",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"</foo>bar</xmpaar>",
"output":[["Character", "</foo>bar</xmpaar>"]]},

{"description":"End tag closing RCDATA or CDATA, switching back to PCDATA",
"contentModelFlags":["RCDATA", "CDATA"],
"lastStartTag":"xmp",
"input":"foo</xmp></baz>",
"output":[["Character", "foo"], ["EndTag", "xmp"], ["EndTag", "baz"]]},

{"description":"CDATA w/ something looking like an entity",
"contentModelFlags":["CDATA"],
"lastStartTag":"xmp",
"input":"&foo;",
"output":[["Character", "&foo;"]]},

{"description":"RCDATA w/ an entity",
"contentModelFlags":["RCDATA"],
"lastStartTag":"textarea",
"input":"&lt;",
"output":[["Character", "<"]]}

]}