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
003400 html5lib/namedEntities/2993 html5lib-tests ⋭ Named entity: ntrianglerighteq; with a semi-colon 18 B
003401 html5lib/namedEntities/2994 html5lib-tests &nu Bad named entity: nu without a semi-colon 3 B
003402 html5lib/namedEntities/2995 html5lib-tests ν Named entity: nu; with a semi-colon 4 B
003403 html5lib/namedEntities/2996 html5lib-tests &num Bad named entity: num without a semi-colon 4 B
003404 html5lib/namedEntities/2997 html5lib-tests # Named entity: num; with a semi-colon 5 B
003405 html5lib/namedEntities/2998 html5lib-tests &numero Bad named entity: numero without a semi-colon 7 B
003406 html5lib/namedEntities/2999 html5lib-tests № Named entity: numero; with a semi-colon 8 B
003407 html5lib/namedEntities/3000 html5lib-tests &numsp Bad named entity: numsp without a semi-colon 6 B
003408 html5lib/namedEntities/3001 html5lib-tests   Named entity: numsp; with a semi-colon 7 B
003409 html5lib/namedEntities/3002 html5lib-tests &nvDash Bad named entity: nvDash without a semi-colon 7 B
003410 html5lib/namedEntities/3003 html5lib-tests ⊭ Named entity: nvDash; with a semi-colon 8 B
003411 html5lib/namedEntities/3004 html5lib-tests &nvHarr Bad named entity: nvHarr without a semi-colon 7 B
003412 html5lib/namedEntities/3005 html5lib-tests ⤄ Named entity: nvHarr; with a semi-colon 8 B
003413 html5lib/namedEntities/3006 html5lib-tests &nvap Bad named entity: nvap without a semi-colon 5 B
003414 html5lib/namedEntities/3007 html5lib-tests ≍⃒ Named entity: nvap; with a semi-colon 6 B
003415 html5lib/namedEntities/3008 html5lib-tests &nvdash Bad named entity: nvdash without a semi-colon 7 B
003416 html5lib/namedEntities/3009 html5lib-tests ⊬ Named entity: nvdash; with a semi-colon 8 B
003417 html5lib/namedEntities/3010 html5lib-tests &nvge Bad named entity: nvge without a semi-colon 5 B
003418 html5lib/namedEntities/3011 html5lib-tests ≥⃒ Named entity: nvge; with a semi-colon 6 B
003419 html5lib/namedEntities/3012 html5lib-tests &nvgt Bad named entity: nvgt without a semi-colon 5 B
003420 html5lib/namedEntities/3013 html5lib-tests >⃒ Named entity: nvgt; with a semi-colon 6 B
003421 html5lib/namedEntities/3014 html5lib-tests &nvinfin Bad named entity: nvinfin without a semi-colon 8 B
003422 html5lib/namedEntities/3015 html5lib-tests ⧞ Named entity: nvinfin; with a semi-colon 9 B
003423 html5lib/namedEntities/3016 html5lib-tests &nvlArr Bad named entity: nvlArr without a semi-colon 7 B
003424 html5lib/namedEntities/3017 html5lib-tests ⤂ Named entity: nvlArr; with a semi-colon 8 B
003425 html5lib/namedEntities/3018 html5lib-tests &nvle Bad named entity: nvle without a semi-colon 5 B
003426 html5lib/namedEntities/3019 html5lib-tests ≤⃒ Named entity: nvle; with a semi-colon 6 B
003427 html5lib/namedEntities/3020 html5lib-tests &nvlt Bad named entity: nvlt without a semi-colon 5 B
003428 html5lib/namedEntities/3021 html5lib-tests <⃒ Named entity: nvlt; with a semi-colon 6 B
003429 html5lib/namedEntities/3022 html5lib-tests &nvltrie Bad named entity: nvltrie without a semi-colon 8 B
003430 html5lib/namedEntities/3023 html5lib-tests ⊴⃒ Named entity: nvltrie; with a semi-colon 9 B
003431 html5lib/namedEntities/3024 html5lib-tests &nvrArr Bad named entity: nvrArr without a semi-colon 7 B
003432 html5lib/namedEntities/3025 html5lib-tests ⤃ Named entity: nvrArr; with a semi-colon 8 B
003433 html5lib/namedEntities/3026 html5lib-tests &nvrtrie Bad named entity: nvrtrie without a semi-colon 8 B
003434 html5lib/namedEntities/3027 html5lib-tests ⊵⃒ Named entity: nvrtrie; with a semi-colon 9 B
003435 html5lib/namedEntities/3028 html5lib-tests &nvsim Bad named entity: nvsim without a semi-colon 6 B
003436 html5lib/namedEntities/3029 html5lib-tests ∼⃒ Named entity: nvsim; with a semi-colon 7 B
003437 html5lib/namedEntities/3030 html5lib-tests &nwArr Bad named entity: nwArr without a semi-colon 6 B
003438 html5lib/namedEntities/3031 html5lib-tests ⇖ Named entity: nwArr; with a semi-colon 7 B
003439 html5lib/namedEntities/3032 html5lib-tests &nwarhk Bad named entity: nwarhk without a semi-colon 7 B
003440 html5lib/namedEntities/3033 html5lib-tests ⤣ Named entity: nwarhk; with a semi-colon 8 B
003441 html5lib/namedEntities/3034 html5lib-tests &nwarr Bad named entity: nwarr without a semi-colon 6 B
003442 html5lib/namedEntities/3035 html5lib-tests ↖ Named entity: nwarr; with a semi-colon 7 B
003443 html5lib/namedEntities/3036 html5lib-tests &nwarrow Bad named entity: nwarrow without a semi-colon 8 B
003444 html5lib/namedEntities/3037 html5lib-tests ↖ Named entity: nwarrow; with a semi-colon 9 B
003445 html5lib/namedEntities/3038 html5lib-tests &nwnear Bad named entity: nwnear without a semi-colon 7 B
003446 html5lib/namedEntities/3039 html5lib-tests ⤧ Named entity: nwnear; with a semi-colon 8 B
003447 html5lib/namedEntities/3040 html5lib-tests &oS Bad named entity: oS without a semi-colon 3 B
003448 html5lib/namedEntities/3041 html5lib-tests Ⓢ Named entity: oS; with a semi-colon 4 B
003449 html5lib/namedEntities/3042 html5lib-tests ó Named entity: oacute without a semi-colon 7 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.