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
002454 html5lib/namedEntities/2047 html5lib-tests &frac78 Bad named entity: frac78 without a semi-colon 7 B
002455 html5lib/namedEntities/2048 html5lib-tests ⅞ Named entity: frac78; with a semi-colon 8 B
002456 html5lib/namedEntities/2049 html5lib-tests &frasl Bad named entity: frasl without a semi-colon 6 B
002457 html5lib/namedEntities/2050 html5lib-tests ⁄ Named entity: frasl; with a semi-colon 7 B
002458 html5lib/namedEntities/2051 html5lib-tests &frown Bad named entity: frown without a semi-colon 6 B
002459 html5lib/namedEntities/2052 html5lib-tests ⌢ Named entity: frown; with a semi-colon 7 B
002460 html5lib/namedEntities/2053 html5lib-tests &fscr Bad named entity: fscr without a semi-colon 5 B
002461 html5lib/namedEntities/2054 html5lib-tests 𝒻 Named entity: fscr; with a semi-colon 6 B
002462 html5lib/namedEntities/2055 html5lib-tests &gE Bad named entity: gE without a semi-colon 3 B
002463 html5lib/namedEntities/2056 html5lib-tests ≧ Named entity: gE; with a semi-colon 4 B
002464 html5lib/namedEntities/2057 html5lib-tests &gEl Bad named entity: gEl without a semi-colon 4 B
002465 html5lib/namedEntities/2058 html5lib-tests ⪌ Named entity: gEl; with a semi-colon 5 B
002466 html5lib/namedEntities/2059 html5lib-tests &gacute Bad named entity: gacute without a semi-colon 7 B
002467 html5lib/namedEntities/2060 html5lib-tests ǵ Named entity: gacute; with a semi-colon 8 B
002468 html5lib/namedEntities/2061 html5lib-tests &gamma Bad named entity: gamma without a semi-colon 6 B
002469 html5lib/namedEntities/2062 html5lib-tests γ Named entity: gamma; with a semi-colon 7 B
002470 html5lib/namedEntities/2063 html5lib-tests &gammad Bad named entity: gammad without a semi-colon 7 B
002471 html5lib/namedEntities/2064 html5lib-tests ϝ Named entity: gammad; with a semi-colon 8 B
002472 html5lib/namedEntities/2065 html5lib-tests &gap Bad named entity: gap without a semi-colon 4 B
002473 html5lib/namedEntities/2066 html5lib-tests ⪆ Named entity: gap; with a semi-colon 5 B
002474 html5lib/namedEntities/2067 html5lib-tests &gbreve Bad named entity: gbreve without a semi-colon 7 B
002475 html5lib/namedEntities/2068 html5lib-tests ğ Named entity: gbreve; with a semi-colon 8 B
002476 html5lib/namedEntities/2069 html5lib-tests &gcirc Bad named entity: gcirc without a semi-colon 6 B
002477 html5lib/namedEntities/2070 html5lib-tests ĝ Named entity: gcirc; with a semi-colon 7 B
002478 html5lib/namedEntities/2071 html5lib-tests &gcy Bad named entity: gcy without a semi-colon 4 B
002479 html5lib/namedEntities/2072 html5lib-tests г Named entity: gcy; with a semi-colon 5 B
002480 html5lib/namedEntities/2073 html5lib-tests &gdot Bad named entity: gdot without a semi-colon 5 B
002481 html5lib/namedEntities/2074 html5lib-tests ġ Named entity: gdot; with a semi-colon 6 B
002482 html5lib/namedEntities/2075 html5lib-tests &ge Bad named entity: ge without a semi-colon 3 B
002483 html5lib/namedEntities/2076 html5lib-tests ≥ Named entity: ge; with a semi-colon 4 B
002484 html5lib/namedEntities/2077 html5lib-tests &gel Bad named entity: gel without a semi-colon 4 B
002485 html5lib/namedEntities/2078 html5lib-tests ⋛ Named entity: gel; with a semi-colon 5 B
002486 html5lib/namedEntities/2079 html5lib-tests &geq Bad named entity: geq without a semi-colon 4 B
002487 html5lib/namedEntities/2080 html5lib-tests ≥ Named entity: geq; with a semi-colon 5 B
002488 html5lib/namedEntities/2081 html5lib-tests &geqq Bad named entity: geqq without a semi-colon 5 B
002489 html5lib/namedEntities/2082 html5lib-tests ≧ Named entity: geqq; with a semi-colon 6 B
002490 html5lib/namedEntities/2083 html5lib-tests &geqslant Bad named entity: geqslant without a semi-colon 9 B
002491 html5lib/namedEntities/2084 html5lib-tests ⩾ Named entity: geqslant; with a semi-colon 10 B
002492 html5lib/namedEntities/2085 html5lib-tests &ges Bad named entity: ges without a semi-colon 4 B
002493 html5lib/namedEntities/2086 html5lib-tests ⩾ Named entity: ges; with a semi-colon 5 B
002494 html5lib/namedEntities/2087 html5lib-tests &gescc Bad named entity: gescc without a semi-colon 6 B
002495 html5lib/namedEntities/2088 html5lib-tests ⪩ Named entity: gescc; with a semi-colon 7 B
002496 html5lib/namedEntities/2089 html5lib-tests &gesdot Bad named entity: gesdot without a semi-colon 7 B
002497 html5lib/namedEntities/2090 html5lib-tests ⪀ Named entity: gesdot; with a semi-colon 8 B
002498 html5lib/namedEntities/2091 html5lib-tests &gesdoto Bad named entity: gesdoto without a semi-colon 8 B
002499 html5lib/namedEntities/2092 html5lib-tests ⪂ Named entity: gesdoto; with a semi-colon 9 B
002500 html5lib/namedEntities/2093 html5lib-tests &gesdotol Bad named entity: gesdotol without a semi-colon 9 B
002501 html5lib/namedEntities/2094 html5lib-tests ⪄ Named entity: gesdotol; with a semi-colon 10 B
002502 html5lib/namedEntities/2095 html5lib-tests &gesl Bad named entity: gesl without a semi-colon 5 B
002503 html5lib/namedEntities/2096 html5lib-tests ⋛︀ Named entity: gesl; with 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.