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