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
003250 html5lib/namedEntities/2843 html5lib-tests њ Named entity: njcy; with a semi-colon 6 B
003251 html5lib/namedEntities/2844 html5lib-tests &nlArr Bad named entity: nlArr without a semi-colon 6 B
003252 html5lib/namedEntities/2845 html5lib-tests ⇍ Named entity: nlArr; with a semi-colon 7 B
003253 html5lib/namedEntities/2846 html5lib-tests &nlE Bad named entity: nlE without a semi-colon 4 B
003254 html5lib/namedEntities/2847 html5lib-tests ≦̸ Named entity: nlE; with a semi-colon 5 B
003255 html5lib/namedEntities/2848 html5lib-tests &nlarr Bad named entity: nlarr without a semi-colon 6 B
003256 html5lib/namedEntities/2849 html5lib-tests ↚ Named entity: nlarr; with a semi-colon 7 B
003257 html5lib/namedEntities/2850 html5lib-tests &nldr Bad named entity: nldr without a semi-colon 5 B
003258 html5lib/namedEntities/2851 html5lib-tests ‥ Named entity: nldr; with a semi-colon 6 B
003259 html5lib/namedEntities/2852 html5lib-tests &nle Bad named entity: nle without a semi-colon 4 B
003260 html5lib/namedEntities/2853 html5lib-tests ≰ Named entity: nle; with a semi-colon 5 B
003261 html5lib/namedEntities/2854 html5lib-tests &nleftarrow Bad named entity: nleftarrow without a semi-colon 11 B
003262 html5lib/namedEntities/2855 html5lib-tests ↚ Named entity: nleftarrow; with a semi-colon 12 B
003263 html5lib/namedEntities/2856 html5lib-tests &nleftrightarrow Bad named entity: nleftrightarrow without a semi-colon 16 B
003264 html5lib/namedEntities/2857 html5lib-tests ↮ Named entity: nleftrightarrow; with a semi-colon 17 B
003265 html5lib/namedEntities/2858 html5lib-tests &nleq Bad named entity: nleq without a semi-colon 5 B
003266 html5lib/namedEntities/2859 html5lib-tests ≰ Named entity: nleq; with a semi-colon 6 B
003267 html5lib/namedEntities/2860 html5lib-tests &nleqq Bad named entity: nleqq without a semi-colon 6 B
003268 html5lib/namedEntities/2861 html5lib-tests ≦̸ Named entity: nleqq; with a semi-colon 7 B
003269 html5lib/namedEntities/2862 html5lib-tests &nleqslant Bad named entity: nleqslant without a semi-colon 10 B
003270 html5lib/namedEntities/2863 html5lib-tests ⩽̸ Named entity: nleqslant; with a semi-colon 11 B
003271 html5lib/namedEntities/2864 html5lib-tests &nles Bad named entity: nles without a semi-colon 5 B
003272 html5lib/namedEntities/2865 html5lib-tests ⩽̸ Named entity: nles; with a semi-colon 6 B
003273 html5lib/namedEntities/2866 html5lib-tests &nless Bad named entity: nless without a semi-colon 6 B
003274 html5lib/namedEntities/2867 html5lib-tests ≮ Named entity: nless; with a semi-colon 7 B
003275 html5lib/namedEntities/2868 html5lib-tests &nlsim Bad named entity: nlsim without a semi-colon 6 B
003276 html5lib/namedEntities/2869 html5lib-tests ≴ Named entity: nlsim; with a semi-colon 7 B
003277 html5lib/namedEntities/2870 html5lib-tests &nlt Bad named entity: nlt without a semi-colon 4 B
003278 html5lib/namedEntities/2871 html5lib-tests ≮ Named entity: nlt; with a semi-colon 5 B
003279 html5lib/namedEntities/2872 html5lib-tests &nltri Bad named entity: nltri without a semi-colon 6 B
003280 html5lib/namedEntities/2873 html5lib-tests ⋪ Named entity: nltri; with a semi-colon 7 B
003281 html5lib/namedEntities/2874 html5lib-tests &nltrie Bad named entity: nltrie without a semi-colon 7 B
003282 html5lib/namedEntities/2875 html5lib-tests ⋬ Named entity: nltrie; with a semi-colon 8 B
003283 html5lib/namedEntities/2876 html5lib-tests &nmid Bad named entity: nmid without a semi-colon 5 B
003284 html5lib/namedEntities/2877 html5lib-tests ∤ Named entity: nmid; with a semi-colon 6 B
003285 html5lib/namedEntities/2878 html5lib-tests &nopf Bad named entity: nopf without a semi-colon 5 B
003286 html5lib/namedEntities/2879 html5lib-tests 𝕟 Named entity: nopf; with a semi-colon 6 B
003287 html5lib/namedEntities/2880 html5lib-tests ¬ Named entity: not without a semi-colon 4 B
003288 html5lib/namedEntities/2881 html5lib-tests ¬ Named entity: not; with a semi-colon 5 B
003289 html5lib/namedEntities/2882 html5lib-tests ∉ Named entity: notin; with a semi-colon 7 B
003290 html5lib/namedEntities/2883 html5lib-tests ⋹̸ Named entity: notinE; with a semi-colon 8 B
003291 html5lib/namedEntities/2884 html5lib-tests ⋵̸ Named entity: notindot; with a semi-colon 10 B
003292 html5lib/namedEntities/2885 html5lib-tests ∉ Named entity: notinva; with a semi-colon 9 B
003293 html5lib/namedEntities/2886 html5lib-tests ⋷ Named entity: notinvb; with a semi-colon 9 B
003294 html5lib/namedEntities/2887 html5lib-tests ⋶ Named entity: notinvc; with a semi-colon 9 B
003295 html5lib/namedEntities/2888 html5lib-tests ∌ Named entity: notni; with a semi-colon 7 B
003296 html5lib/namedEntities/2889 html5lib-tests ∌ Named entity: notniva; with a semi-colon 9 B
003297 html5lib/namedEntities/2890 html5lib-tests ⋾ Named entity: notnivb; with a semi-colon 9 B
003298 html5lib/namedEntities/2891 html5lib-tests ⋽ Named entity: notnivc; with a semi-colon 9 B
003299 html5lib/namedEntities/2892 html5lib-tests &npar Bad named entity: npar without a semi-colon 5 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.