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
Clear

5,931 of 6,835 cases

Case Name Expected Note Size
002304 html5lib/namedEntities/1897 html5lib-tests &ell Bad named entity: ell without a semi-colon 4 B
002305 html5lib/namedEntities/1898 html5lib-tests ℓ Named entity: ell; with a semi-colon 5 B
002306 html5lib/namedEntities/1899 html5lib-tests &els Bad named entity: els without a semi-colon 4 B
002307 html5lib/namedEntities/1900 html5lib-tests ⪕ Named entity: els; with a semi-colon 5 B
002308 html5lib/namedEntities/1901 html5lib-tests &elsdot Bad named entity: elsdot without a semi-colon 7 B
002309 html5lib/namedEntities/1902 html5lib-tests ⪗ Named entity: elsdot; with a semi-colon 8 B
002310 html5lib/namedEntities/1903 html5lib-tests &emacr Bad named entity: emacr without a semi-colon 6 B
002311 html5lib/namedEntities/1904 html5lib-tests ē Named entity: emacr; with a semi-colon 7 B
002312 html5lib/namedEntities/1905 html5lib-tests &empty Bad named entity: empty without a semi-colon 6 B
002313 html5lib/namedEntities/1906 html5lib-tests ∅ Named entity: empty; with a semi-colon 7 B
002314 html5lib/namedEntities/1907 html5lib-tests &emptyset Bad named entity: emptyset without a semi-colon 9 B
002315 html5lib/namedEntities/1908 html5lib-tests ∅ Named entity: emptyset; with a semi-colon 10 B
002316 html5lib/namedEntities/1909 html5lib-tests &emptyv Bad named entity: emptyv without a semi-colon 7 B
002317 html5lib/namedEntities/1910 html5lib-tests ∅ Named entity: emptyv; with a semi-colon 8 B
002318 html5lib/namedEntities/1911 html5lib-tests &emsp Bad named entity: emsp without a semi-colon 5 B
002319 html5lib/namedEntities/1912 html5lib-tests &emsp13 Bad named entity: emsp13 without a semi-colon 7 B
002320 html5lib/namedEntities/1913 html5lib-tests   Named entity: emsp13; with a semi-colon 8 B
002321 html5lib/namedEntities/1914 html5lib-tests &emsp14 Bad named entity: emsp14 without a semi-colon 7 B
002322 html5lib/namedEntities/1915 html5lib-tests   Named entity: emsp14; with a semi-colon 8 B
002323 html5lib/namedEntities/1916 html5lib-tests   Named entity: emsp; with a semi-colon 6 B
002324 html5lib/namedEntities/1917 html5lib-tests &eng Bad named entity: eng without a semi-colon 4 B
002325 html5lib/namedEntities/1918 html5lib-tests ŋ Named entity: eng; with a semi-colon 5 B
002326 html5lib/namedEntities/1919 html5lib-tests &ensp Bad named entity: ensp without a semi-colon 5 B
002327 html5lib/namedEntities/1920 html5lib-tests   Named entity: ensp; with a semi-colon 6 B
002328 html5lib/namedEntities/1921 html5lib-tests &eogon Bad named entity: eogon without a semi-colon 6 B
002329 html5lib/namedEntities/1922 html5lib-tests ę Named entity: eogon; with a semi-colon 7 B
002330 html5lib/namedEntities/1923 html5lib-tests &eopf Bad named entity: eopf without a semi-colon 5 B
002331 html5lib/namedEntities/1924 html5lib-tests 𝕖 Named entity: eopf; with a semi-colon 6 B
002332 html5lib/namedEntities/1925 html5lib-tests &epar Bad named entity: epar without a semi-colon 5 B
002333 html5lib/namedEntities/1926 html5lib-tests ⋕ Named entity: epar; with a semi-colon 6 B
002334 html5lib/namedEntities/1927 html5lib-tests &eparsl Bad named entity: eparsl without a semi-colon 7 B
002335 html5lib/namedEntities/1928 html5lib-tests ⧣ Named entity: eparsl; with a semi-colon 8 B
002336 html5lib/namedEntities/1929 html5lib-tests &eplus Bad named entity: eplus without a semi-colon 6 B
002337 html5lib/namedEntities/1930 html5lib-tests ⩱ Named entity: eplus; with a semi-colon 7 B
002338 html5lib/namedEntities/1931 html5lib-tests &epsi Bad named entity: epsi without a semi-colon 5 B
002339 html5lib/namedEntities/1932 html5lib-tests ε Named entity: epsi; with a semi-colon 6 B
002340 html5lib/namedEntities/1933 html5lib-tests &epsilon Bad named entity: epsilon without a semi-colon 8 B
002341 html5lib/namedEntities/1934 html5lib-tests ε Named entity: epsilon; with a semi-colon 9 B
002342 html5lib/namedEntities/1935 html5lib-tests &epsiv Bad named entity: epsiv without a semi-colon 6 B
002343 html5lib/namedEntities/1936 html5lib-tests ϵ Named entity: epsiv; with a semi-colon 7 B
002344 html5lib/namedEntities/1937 html5lib-tests &eqcirc Bad named entity: eqcirc without a semi-colon 7 B
002345 html5lib/namedEntities/1938 html5lib-tests ≖ Named entity: eqcirc; with a semi-colon 8 B
002346 html5lib/namedEntities/1939 html5lib-tests &eqcolon Bad named entity: eqcolon without a semi-colon 8 B
002347 html5lib/namedEntities/1940 html5lib-tests ≕ Named entity: eqcolon; with a semi-colon 9 B
002348 html5lib/namedEntities/1941 html5lib-tests &eqsim Bad named entity: eqsim without a semi-colon 6 B
002349 html5lib/namedEntities/1942 html5lib-tests ≂ Named entity: eqsim; with a semi-colon 7 B
002350 html5lib/namedEntities/1943 html5lib-tests &eqslantgtr Bad named entity: eqslantgtr without a semi-colon 11 B
002351 html5lib/namedEntities/1944 html5lib-tests ⪖ Named entity: eqslantgtr; with a semi-colon 12 B
002352 html5lib/namedEntities/1945 html5lib-tests &eqslantless Bad named entity: eqslantless without a semi-colon 12 B
002353 html5lib/namedEntities/1946 html5lib-tests ⪕ Named entity: eqslantless; with a semi-colon 13 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.