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
003700 html5lib/namedEntities/3293 html5lib-tests &questeq Bad named entity: questeq without a semi-colon 8 B
003701 html5lib/namedEntities/3294 html5lib-tests ≟ Named entity: questeq; with a semi-colon 9 B
003702 html5lib/namedEntities/3295 html5lib-tests " Named entity: quot without a semi-colon 5 B
003703 html5lib/namedEntities/3296 html5lib-tests " Named entity: quot; with a semi-colon 6 B
003704 html5lib/namedEntities/3297 html5lib-tests &rAarr Bad named entity: rAarr without a semi-colon 6 B
003705 html5lib/namedEntities/3298 html5lib-tests ⇛ Named entity: rAarr; with a semi-colon 7 B
003706 html5lib/namedEntities/3299 html5lib-tests &rArr Bad named entity: rArr without a semi-colon 5 B
003707 html5lib/namedEntities/3300 html5lib-tests ⇒ Named entity: rArr; with a semi-colon 6 B
003708 html5lib/namedEntities/3301 html5lib-tests &rAtail Bad named entity: rAtail without a semi-colon 7 B
003709 html5lib/namedEntities/3302 html5lib-tests ⤜ Named entity: rAtail; with a semi-colon 8 B
003710 html5lib/namedEntities/3303 html5lib-tests &rBarr Bad named entity: rBarr without a semi-colon 6 B
003711 html5lib/namedEntities/3304 html5lib-tests ⤏ Named entity: rBarr; with a semi-colon 7 B
003712 html5lib/namedEntities/3305 html5lib-tests &rHar Bad named entity: rHar without a semi-colon 5 B
003713 html5lib/namedEntities/3306 html5lib-tests ⥤ Named entity: rHar; with a semi-colon 6 B
003714 html5lib/namedEntities/3307 html5lib-tests &race Bad named entity: race without a semi-colon 5 B
003715 html5lib/namedEntities/3308 html5lib-tests ∽̱ Named entity: race; with a semi-colon 6 B
003716 html5lib/namedEntities/3309 html5lib-tests &racute Bad named entity: racute without a semi-colon 7 B
003717 html5lib/namedEntities/3310 html5lib-tests ŕ Named entity: racute; with a semi-colon 8 B
003718 html5lib/namedEntities/3311 html5lib-tests &radic Bad named entity: radic without a semi-colon 6 B
003719 html5lib/namedEntities/3312 html5lib-tests √ Named entity: radic; with a semi-colon 7 B
003720 html5lib/namedEntities/3313 html5lib-tests &raemptyv Bad named entity: raemptyv without a semi-colon 9 B
003721 html5lib/namedEntities/3314 html5lib-tests ⦳ Named entity: raemptyv; with a semi-colon 10 B
003722 html5lib/namedEntities/3315 html5lib-tests &rang Bad named entity: rang without a semi-colon 5 B
003723 html5lib/namedEntities/3316 html5lib-tests ⟩ Named entity: rang; with a semi-colon 6 B
003724 html5lib/namedEntities/3317 html5lib-tests &rangd Bad named entity: rangd without a semi-colon 6 B
003725 html5lib/namedEntities/3318 html5lib-tests ⦒ Named entity: rangd; with a semi-colon 7 B
003726 html5lib/namedEntities/3319 html5lib-tests &range Bad named entity: range without a semi-colon 6 B
003727 html5lib/namedEntities/3320 html5lib-tests ⦥ Named entity: range; with a semi-colon 7 B
003728 html5lib/namedEntities/3321 html5lib-tests &rangle Bad named entity: rangle without a semi-colon 7 B
003729 html5lib/namedEntities/3322 html5lib-tests ⟩ Named entity: rangle; with a semi-colon 8 B
003730 html5lib/namedEntities/3323 html5lib-tests » Named entity: raquo without a semi-colon 6 B
003731 html5lib/namedEntities/3324 html5lib-tests » Named entity: raquo; with a semi-colon 7 B
003732 html5lib/namedEntities/3325 html5lib-tests &rarr Bad named entity: rarr without a semi-colon 5 B
003733 html5lib/namedEntities/3326 html5lib-tests → Named entity: rarr; with a semi-colon 6 B
003734 html5lib/namedEntities/3327 html5lib-tests &rarrap Bad named entity: rarrap without a semi-colon 7 B
003735 html5lib/namedEntities/3328 html5lib-tests ⥵ Named entity: rarrap; with a semi-colon 8 B
003736 html5lib/namedEntities/3329 html5lib-tests &rarrb Bad named entity: rarrb without a semi-colon 6 B
003737 html5lib/namedEntities/3330 html5lib-tests ⇥ Named entity: rarrb; with a semi-colon 7 B
003738 html5lib/namedEntities/3331 html5lib-tests &rarrbfs Bad named entity: rarrbfs without a semi-colon 8 B
003739 html5lib/namedEntities/3332 html5lib-tests ⤠ Named entity: rarrbfs; with a semi-colon 9 B
003740 html5lib/namedEntities/3333 html5lib-tests &rarrc Bad named entity: rarrc without a semi-colon 6 B
003741 html5lib/namedEntities/3334 html5lib-tests ⤳ Named entity: rarrc; with a semi-colon 7 B
003742 html5lib/namedEntities/3335 html5lib-tests &rarrfs Bad named entity: rarrfs without a semi-colon 7 B
003743 html5lib/namedEntities/3336 html5lib-tests ⤞ Named entity: rarrfs; with a semi-colon 8 B
003744 html5lib/namedEntities/3337 html5lib-tests &rarrhk Bad named entity: rarrhk without a semi-colon 7 B
003745 html5lib/namedEntities/3338 html5lib-tests ↪ Named entity: rarrhk; with a semi-colon 8 B
003746 html5lib/namedEntities/3339 html5lib-tests &rarrlp Bad named entity: rarrlp without a semi-colon 7 B
003747 html5lib/namedEntities/3340 html5lib-tests ↬ Named entity: rarrlp; with a semi-colon 8 B
003748 html5lib/namedEntities/3341 html5lib-tests &rarrpl Bad named entity: rarrpl without a semi-colon 7 B
003749 html5lib/namedEntities/3342 html5lib-tests ⥅ Named entity: rarrpl; with a semi-colon 8 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.