• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2    "tests": [
3        {
4            "description": "<foo bar=qux/>",
5            "input": "<foo bar=qux/>",
6            "output": [
7                [
8                    "StartTag",
9                    "foo",
10                    {
11                        "bar": "qux/"
12                    }
13                ]
14            ]
15        },
16        {
17            "description": "<p id=\"status\"><noscript><strong>A</strong></noscript><span>B</span></p>",
18            "input": "<p id=\"status\"><noscript><strong>A</strong></noscript><span>B</span></p>",
19            "output": [
20                [
21                    "StartTag",
22                    "p",
23                    {
24                        "id": "status"
25                    }
26                ],
27                [
28                    "StartTag",
29                    "noscript",
30                    {}
31                ],
32                [
33                    "Character",
34                    "<strong>A</strong>"
35                ],
36                [
37                    "EndTag",
38                    "noscript"
39                ],
40                [
41                    "StartTag",
42                    "span",
43                    {}
44                ],
45                [
46                    "Character",
47                    "B"
48                ],
49                [
50                    "EndTag",
51                    "span"
52                ],
53                [
54                    "EndTag",
55                    "p"
56                ]
57            ]
58        },
59        {
60            "description": "<div><sarcasm><div></div></sarcasm></div>",
61            "input": "<div><sarcasm><div></div></sarcasm></div>",
62            "output": [
63                [
64                    "StartTag",
65                    "div",
66                    {}
67                ],
68                [
69                    "StartTag",
70                    "sarcasm",
71                    {}
72                ],
73                [
74                    "StartTag",
75                    "div",
76                    {}
77                ],
78                [
79                    "EndTag",
80                    "div"
81                ],
82                [
83                    "EndTag",
84                    "sarcasm"
85                ],
86                [
87                    "EndTag",
88                    "div"
89                ]
90            ]
91        },
92        {
93            "description": "<html><body><img src=\"\" border=\"0\" alt=\"><div>A</div></body></html>",
94            "input": "<html><body><img src=\"\" border=\"0\" alt=\"><div>A</div></body></html>",
95            "output": [
96                [
97                    "StartTag",
98                    "html",
99                    {}
100                ],
101                [
102                    "StartTag",
103                    "body",
104                    {}
105                ]
106            ]
107        },
108        {
109            "description": "<table><td></tbody>A",
110            "input": "<table><td></tbody>A",
111            "output": [
112                [
113                    "StartTag",
114                    "table",
115                    {}
116                ],
117                [
118                    "StartTag",
119                    "td",
120                    {}
121                ],
122                [
123                    "EndTag",
124                    "tbody"
125                ],
126                [
127                    "Character",
128                    "A"
129                ]
130            ]
131        },
132        {
133            "description": "<table><td></thead>A",
134            "input": "<table><td></thead>A",
135            "output": [
136                [
137                    "StartTag",
138                    "table",
139                    {}
140                ],
141                [
142                    "StartTag",
143                    "td",
144                    {}
145                ],
146                [
147                    "EndTag",
148                    "thead"
149                ],
150                [
151                    "Character",
152                    "A"
153                ]
154            ]
155        },
156        {
157            "description": "<table><td></tfoot>A",
158            "input": "<table><td></tfoot>A",
159            "output": [
160                [
161                    "StartTag",
162                    "table",
163                    {}
164                ],
165                [
166                    "StartTag",
167                    "td",
168                    {}
169                ],
170                [
171                    "EndTag",
172                    "tfoot"
173                ],
174                [
175                    "Character",
176                    "A"
177                ]
178            ]
179        },
180        {
181            "description": "<table><thead><td></tbody>A",
182            "input": "<table><thead><td></tbody>A",
183            "output": [
184                [
185                    "StartTag",
186                    "table",
187                    {}
188                ],
189                [
190                    "StartTag",
191                    "thead",
192                    {}
193                ],
194                [
195                    "StartTag",
196                    "td",
197                    {}
198                ],
199                [
200                    "EndTag",
201                    "tbody"
202                ],
203                [
204                    "Character",
205                    "A"
206                ]
207            ]
208        },
209        {
210            "description": "<legend>test</legend>",
211            "input": "<legend>test</legend>",
212            "output": [
213                [
214                    "StartTag",
215                    "legend",
216                    {}
217                ],
218                [
219                    "Character",
220                    "test"
221                ],
222                [
223                    "EndTag",
224                    "legend"
225                ]
226            ]
227        },
228        {
229            "description": "<table><input>",
230            "input": "<table><input>",
231            "output": [
232                [
233                    "StartTag",
234                    "table",
235                    {}
236                ],
237                [
238                    "StartTag",
239                    "input",
240                    {}
241                ]
242            ]
243        },
244        {
245            "description": "<b><em><foo><foo><aside></b>",
246            "input": "<b><em><foo><foo><aside></b>",
247            "output": [
248                [
249                    "StartTag",
250                    "b",
251                    {}
252                ],
253                [
254                    "StartTag",
255                    "em",
256                    {}
257                ],
258                [
259                    "StartTag",
260                    "foo",
261                    {}
262                ],
263                [
264                    "StartTag",
265                    "foo",
266                    {}
267                ],
268                [
269                    "StartTag",
270                    "aside",
271                    {}
272                ],
273                [
274                    "EndTag",
275                    "b"
276                ]
277            ]
278        },
279        {
280            "description": "<b><em><foo><foo><aside></b></em>",
281            "input": "<b><em><foo><foo><aside></b></em>",
282            "output": [
283                [
284                    "StartTag",
285                    "b",
286                    {}
287                ],
288                [
289                    "StartTag",
290                    "em",
291                    {}
292                ],
293                [
294                    "StartTag",
295                    "foo",
296                    {}
297                ],
298                [
299                    "StartTag",
300                    "foo",
301                    {}
302                ],
303                [
304                    "StartTag",
305                    "aside",
306                    {}
307                ],
308                [
309                    "EndTag",
310                    "b"
311                ],
312                [
313                    "EndTag",
314                    "em"
315                ]
316            ]
317        },
318        {
319            "description": "<b><em><foo><foo><foo><aside></b>",
320            "input": "<b><em><foo><foo><foo><aside></b>",
321            "output": [
322                [
323                    "StartTag",
324                    "b",
325                    {}
326                ],
327                [
328                    "StartTag",
329                    "em",
330                    {}
331                ],
332                [
333                    "StartTag",
334                    "foo",
335                    {}
336                ],
337                [
338                    "StartTag",
339                    "foo",
340                    {}
341                ],
342                [
343                    "StartTag",
344                    "foo",
345                    {}
346                ],
347                [
348                    "StartTag",
349                    "aside",
350                    {}
351                ],
352                [
353                    "EndTag",
354                    "b"
355                ]
356            ]
357        },
358        {
359            "description": "<b><em><foo><foo><foo><aside></b></em>",
360            "input": "<b><em><foo><foo><foo><aside></b></em>",
361            "output": [
362                [
363                    "StartTag",
364                    "b",
365                    {}
366                ],
367                [
368                    "StartTag",
369                    "em",
370                    {}
371                ],
372                [
373                    "StartTag",
374                    "foo",
375                    {}
376                ],
377                [
378                    "StartTag",
379                    "foo",
380                    {}
381                ],
382                [
383                    "StartTag",
384                    "foo",
385                    {}
386                ],
387                [
388                    "StartTag",
389                    "aside",
390                    {}
391                ],
392                [
393                    "EndTag",
394                    "b"
395                ],
396                [
397                    "EndTag",
398                    "em"
399                ]
400            ]
401        },
402        {
403            "description": "<svg><foreignObject><div>foo</div><plaintext></foreignObject></svg><div>bar</div>",
404            "input": "<svg><foreignObject><div>foo</div><plaintext></foreignObject></svg><div>bar</div>",
405            "output": [
406                [
407                    "StartTag",
408                    "svg",
409                    {}
410                ],
411                [
412                    "StartTag",
413                    "foreignObject",
414                    {}
415                ],
416                [
417                    "StartTag",
418                    "div",
419                    {}
420                ],
421                [
422                    "Character",
423                    "foo"
424                ],
425                [
426                    "EndTag",
427                    "div"
428                ],
429                [
430                    "StartTag",
431                    "plaintext",
432                    {}
433                ],
434                [
435                    "Character",
436                    "</foreignObject></svg><div>bar</div>"
437                ]
438            ]
439        },
440        {
441            "description": "<svg><foreignObject></foreignObject><title></svg>foo",
442            "input": "<svg><foreignObject></foreignObject><title></svg>foo",
443            "output": [
444                [
445                    "StartTag",
446                    "svg",
447                    {}
448                ],
449                [
450                    "StartTag",
451                    "foreignObject",
452                    {}
453                ],
454                [
455                    "EndTag",
456                    "foreignobject"
457                ],
458                [
459                    "StartTag",
460                    "title",
461                    {}
462                ],
463                [
464                    "EndTag",
465                    "svg"
466                ],
467                [
468                    "Character",
469                    "foo"
470                ]
471            ]
472        },
473        {
474            "description": "</foreignObject><plaintext><div>foo</div>",
475            "input": "</foreignObject><plaintext><div>foo</div>",
476            "output": [
477                [
478                    "EndTag",
479                    "foreignobject"
480                ],
481                [
482                    "StartTag",
483                    "plaintext",
484                    {}
485                ],
486                [
487                    "Character",
488                    "<div>foo</div>"
489                ]
490            ]
491        }
492    ]
493}