1{ 2 "tests": [ 3 { 4 "description": "<style> <!-- </style>x", 5 "input": "<style> <!-- </style>x", 6 "output": [ 7 [ 8 "StartTag", 9 "style", 10 {} 11 ], 12 [ 13 "Character", 14 " <!-- " 15 ], 16 [ 17 "EndTag", 18 "style" 19 ], 20 [ 21 "Character", 22 "x" 23 ] 24 ] 25 }, 26 { 27 "description": "<style> <!-- </style> --> </style>x", 28 "input": "<style> <!-- </style> --> </style>x", 29 "output": [ 30 [ 31 "StartTag", 32 "style", 33 {} 34 ], 35 [ 36 "Character", 37 " <!-- " 38 ], 39 [ 40 "EndTag", 41 "style" 42 ], 43 [ 44 "Character", 45 " --> " 46 ], 47 [ 48 "EndTag", 49 "style" 50 ], 51 [ 52 "Character", 53 "x" 54 ] 55 ] 56 }, 57 { 58 "description": "<style> <!--> </style>x", 59 "input": "<style> <!--> </style>x", 60 "output": [ 61 [ 62 "StartTag", 63 "style", 64 {} 65 ], 66 [ 67 "Character", 68 " <!--> " 69 ], 70 [ 71 "EndTag", 72 "style" 73 ], 74 [ 75 "Character", 76 "x" 77 ] 78 ] 79 }, 80 { 81 "description": "<style> <!---> </style>x", 82 "input": "<style> <!---> </style>x", 83 "output": [ 84 [ 85 "StartTag", 86 "style", 87 {} 88 ], 89 [ 90 "Character", 91 " <!---> " 92 ], 93 [ 94 "EndTag", 95 "style" 96 ], 97 [ 98 "Character", 99 "x" 100 ] 101 ] 102 }, 103 { 104 "description": "<iframe> <!---> </iframe>x", 105 "input": "<iframe> <!---> </iframe>x", 106 "output": [ 107 [ 108 "StartTag", 109 "iframe", 110 {} 111 ], 112 [ 113 "Character", 114 " <!---> " 115 ], 116 [ 117 "EndTag", 118 "iframe" 119 ], 120 [ 121 "Character", 122 "x" 123 ] 124 ] 125 }, 126 { 127 "description": "<iframe> <!--- </iframe>->x</iframe> --> </iframe>x", 128 "input": "<iframe> <!--- </iframe>->x</iframe> --> </iframe>x", 129 "output": [ 130 [ 131 "StartTag", 132 "iframe", 133 {} 134 ], 135 [ 136 "Character", 137 " <!--- " 138 ], 139 [ 140 "EndTag", 141 "iframe" 142 ], 143 [ 144 "Character", 145 "->x" 146 ], 147 [ 148 "EndTag", 149 "iframe" 150 ], 151 [ 152 "Character", 153 " --> " 154 ], 155 [ 156 "EndTag", 157 "iframe" 158 ], 159 [ 160 "Character", 161 "x" 162 ] 163 ] 164 }, 165 { 166 "description": "<script> <!-- </script> --> </script>x", 167 "input": "<script> <!-- </script> --> </script>x", 168 "output": [ 169 [ 170 "StartTag", 171 "script", 172 {} 173 ], 174 [ 175 "Character", 176 " <!-- " 177 ], 178 [ 179 "EndTag", 180 "script" 181 ], 182 [ 183 "Character", 184 " --> " 185 ], 186 [ 187 "EndTag", 188 "script" 189 ], 190 [ 191 "Character", 192 "x" 193 ] 194 ] 195 }, 196 { 197 "description": "<title> <!-- </title> --> </title>x", 198 "input": "<title> <!-- </title> --> </title>x", 199 "output": [ 200 [ 201 "StartTag", 202 "title", 203 {} 204 ], 205 [ 206 "Character", 207 " <!-- " 208 ], 209 [ 210 "EndTag", 211 "title" 212 ], 213 [ 214 "Character", 215 " --> " 216 ], 217 [ 218 "EndTag", 219 "title" 220 ], 221 [ 222 "Character", 223 "x" 224 ] 225 ] 226 }, 227 { 228 "description": "<textarea> <!--- </textarea>->x</textarea> --> </textarea>x", 229 "input": "<textarea> <!--- </textarea>->x</textarea> --> </textarea>x", 230 "output": [ 231 [ 232 "StartTag", 233 "textarea", 234 {} 235 ], 236 [ 237 "Character", 238 " <!--- " 239 ], 240 [ 241 "EndTag", 242 "textarea" 243 ], 244 [ 245 "Character", 246 "->x" 247 ], 248 [ 249 "EndTag", 250 "textarea" 251 ], 252 [ 253 "Character", 254 " --> " 255 ], 256 [ 257 "EndTag", 258 "textarea" 259 ], 260 [ 261 "Character", 262 "x" 263 ] 264 ] 265 }, 266 { 267 "description": "<style> <!</-- </style>x", 268 "input": "<style> <!</-- </style>x", 269 "output": [ 270 [ 271 "StartTag", 272 "style", 273 {} 274 ], 275 [ 276 "Character", 277 " <!</-- " 278 ], 279 [ 280 "EndTag", 281 "style" 282 ], 283 [ 284 "Character", 285 "x" 286 ] 287 ] 288 }, 289 { 290 "description": "<p><xmp></xmp>", 291 "input": "<p><xmp></xmp>", 292 "output": [ 293 [ 294 "StartTag", 295 "p", 296 {} 297 ], 298 [ 299 "StartTag", 300 "xmp", 301 {} 302 ], 303 [ 304 "EndTag", 305 "xmp" 306 ] 307 ] 308 }, 309 { 310 "description": "<xmp> <!-- > --> </xmp>", 311 "input": "<xmp> <!-- > --> </xmp>", 312 "output": [ 313 [ 314 "StartTag", 315 "xmp", 316 {} 317 ], 318 [ 319 "Character", 320 " <!-- > --> " 321 ], 322 [ 323 "EndTag", 324 "xmp" 325 ] 326 ] 327 }, 328 { 329 "description": "<title>&</title>", 330 "input": "<title>&</title>", 331 "output": [ 332 [ 333 "StartTag", 334 "title", 335 {} 336 ], 337 [ 338 "Character", 339 "&" 340 ], 341 [ 342 "EndTag", 343 "title" 344 ] 345 ] 346 }, 347 { 348 "description": "<title><!--&--></title>", 349 "input": "<title><!--&--></title>", 350 "output": [ 351 [ 352 "StartTag", 353 "title", 354 {} 355 ], 356 [ 357 "Character", 358 "<!--&-->" 359 ], 360 [ 361 "EndTag", 362 "title" 363 ] 364 ] 365 }, 366 { 367 "description": "<title><!--</title>", 368 "input": "<title><!--</title>", 369 "output": [ 370 [ 371 "StartTag", 372 "title", 373 {} 374 ], 375 [ 376 "Character", 377 "<!--" 378 ], 379 [ 380 "EndTag", 381 "title" 382 ] 383 ] 384 }, 385 { 386 "description": "<noscript><!--</noscript>--></noscript>", 387 "input": "<noscript><!--</noscript>--></noscript>", 388 "output": [ 389 [ 390 "StartTag", 391 "noscript", 392 {} 393 ], 394 [ 395 "Character", 396 "<!--" 397 ], 398 [ 399 "EndTag", 400 "noscript" 401 ], 402 [ 403 "Character", 404 "-->" 405 ], 406 [ 407 "EndTag", 408 "noscript" 409 ] 410 ] 411 } 412 ] 413}