Compliance cases

These are the 6,835 inputs a submission must decode. Each output must match the expected text byte for byte. You can run the suite without reading it, or open any case to see its input and expected output.

Run the full compliance suite locally. Replace your-component.wasm with your compiled component. Download the suite

curl -fLo unescape_html.comply.wasm https://calculated.world/comply/unescape_html.wasm
qipx comply your-component.wasm --with unescape_html.comply.wasm

All 6,835 cases

Case Name Expected Note Size
001800 html5lib/namedEntities/1393 html5lib-tests ▪ Named entity: blacksquare; with a semi-colon 13 B
001801 html5lib/namedEntities/1394 html5lib-tests &blacktriangle Bad named entity: blacktriangle without a semi-colon 14 B
001802 html5lib/namedEntities/1395 html5lib-tests ▴ Named entity: blacktriangle; with a semi-colon 15 B
001803 html5lib/namedEntities/1396 html5lib-tests &blacktriangledown Bad named entity: blacktriangledown without a semi-colon 18 B
001804 html5lib/namedEntities/1397 html5lib-tests ▾ Named entity: blacktriangledown; with a semi-colon 19 B
001805 html5lib/namedEntities/1398 html5lib-tests &blacktriangleleft Bad named entity: blacktriangleleft without a semi-colon 18 B
001806 html5lib/namedEntities/1399 html5lib-tests ◂ Named entity: blacktriangleleft; with a semi-colon 19 B
001807 html5lib/namedEntities/1400 html5lib-tests &blacktriangleright Bad named entity: blacktriangleright without a semi-colon 19 B
001808 html5lib/namedEntities/1401 html5lib-tests ▸ Named entity: blacktriangleright; with a semi-colon 20 B
001809 html5lib/namedEntities/1402 html5lib-tests &blank Bad named entity: blank without a semi-colon 6 B
001810 html5lib/namedEntities/1403 html5lib-tests ␣ Named entity: blank; with a semi-colon 7 B
001811 html5lib/namedEntities/1404 html5lib-tests &blk12 Bad named entity: blk12 without a semi-colon 6 B
001812 html5lib/namedEntities/1405 html5lib-tests ▒ Named entity: blk12; with a semi-colon 7 B
001813 html5lib/namedEntities/1406 html5lib-tests &blk14 Bad named entity: blk14 without a semi-colon 6 B
001814 html5lib/namedEntities/1407 html5lib-tests ░ Named entity: blk14; with a semi-colon 7 B
001815 html5lib/namedEntities/1408 html5lib-tests &blk34 Bad named entity: blk34 without a semi-colon 6 B
001816 html5lib/namedEntities/1409 html5lib-tests ▓ Named entity: blk34; with a semi-colon 7 B
001817 html5lib/namedEntities/1410 html5lib-tests &block Bad named entity: block without a semi-colon 6 B
001818 html5lib/namedEntities/1411 html5lib-tests █ Named entity: block; with a semi-colon 7 B
001819 html5lib/namedEntities/1412 html5lib-tests &bne Bad named entity: bne without a semi-colon 4 B
001820 html5lib/namedEntities/1413 html5lib-tests =⃥ Named entity: bne; with a semi-colon 5 B
001821 html5lib/namedEntities/1414 html5lib-tests &bnequiv Bad named entity: bnequiv without a semi-colon 8 B
001822 html5lib/namedEntities/1415 html5lib-tests ≡⃥ Named entity: bnequiv; with a semi-colon 9 B
001823 html5lib/namedEntities/1416 html5lib-tests &bnot Bad named entity: bnot without a semi-colon 5 B
001824 html5lib/namedEntities/1417 html5lib-tests ⌐ Named entity: bnot; with a semi-colon 6 B
001825 html5lib/namedEntities/1418 html5lib-tests &bopf Bad named entity: bopf without a semi-colon 5 B
001826 html5lib/namedEntities/1419 html5lib-tests 𝕓 Named entity: bopf; with a semi-colon 6 B
001827 html5lib/namedEntities/1420 html5lib-tests &bot Bad named entity: bot without a semi-colon 4 B
001828 html5lib/namedEntities/1421 html5lib-tests ⊥ Named entity: bot; with a semi-colon 5 B
001829 html5lib/namedEntities/1422 html5lib-tests &bottom Bad named entity: bottom without a semi-colon 7 B
001830 html5lib/namedEntities/1423 html5lib-tests ⊥ Named entity: bottom; with a semi-colon 8 B
001831 html5lib/namedEntities/1424 html5lib-tests &bowtie Bad named entity: bowtie without a semi-colon 7 B
001832 html5lib/namedEntities/1425 html5lib-tests ⋈ Named entity: bowtie; with a semi-colon 8 B
001833 html5lib/namedEntities/1426 html5lib-tests &boxDL Bad named entity: boxDL without a semi-colon 6 B
001834 html5lib/namedEntities/1427 html5lib-tests ╗ Named entity: boxDL; with a semi-colon 7 B
001835 html5lib/namedEntities/1428 html5lib-tests &boxDR Bad named entity: boxDR without a semi-colon 6 B
001836 html5lib/namedEntities/1429 html5lib-tests ╔ Named entity: boxDR; with a semi-colon 7 B
001837 html5lib/namedEntities/1430 html5lib-tests &boxDl Bad named entity: boxDl without a semi-colon 6 B
001838 html5lib/namedEntities/1431 html5lib-tests ╖ Named entity: boxDl; with a semi-colon 7 B
001839 html5lib/namedEntities/1432 html5lib-tests &boxDr Bad named entity: boxDr without a semi-colon 6 B
001840 html5lib/namedEntities/1433 html5lib-tests ╓ Named entity: boxDr; with a semi-colon 7 B
001841 html5lib/namedEntities/1434 html5lib-tests &boxH Bad named entity: boxH without a semi-colon 5 B
001842 html5lib/namedEntities/1435 html5lib-tests ═ Named entity: boxH; with a semi-colon 6 B
001843 html5lib/namedEntities/1436 html5lib-tests &boxHD Bad named entity: boxHD without a semi-colon 6 B
001844 html5lib/namedEntities/1437 html5lib-tests ╦ Named entity: boxHD; with a semi-colon 7 B
001845 html5lib/namedEntities/1438 html5lib-tests &boxHU Bad named entity: boxHU without a semi-colon 6 B
001846 html5lib/namedEntities/1439 html5lib-tests ╩ Named entity: boxHU; with a semi-colon 7 B
001847 html5lib/namedEntities/1440 html5lib-tests &boxHd Bad named entity: boxHd without a semi-colon 6 B
001848 html5lib/namedEntities/1441 html5lib-tests ╤ Named entity: boxHd; with a semi-colon 7 B
001849 html5lib/namedEntities/1442 html5lib-tests &boxHu Bad named entity: boxHu without a semi-colon 6 B

Where these rules come from

Expected outputs come from Python’s html.unescape, changed to keep references to controls and noncharacters the way the WHATWG tokenizer does.