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
001400 html5lib/namedEntities/0993 html5lib-tests Ћ Named entity: TSHcy; with a semi-colon 7 B
001401 html5lib/namedEntities/0994 html5lib-tests &TScy Bad named entity: TScy without a semi-colon 5 B
001402 html5lib/namedEntities/0995 html5lib-tests Ц Named entity: TScy; with a semi-colon 6 B
001403 html5lib/namedEntities/0996 html5lib-tests &Tab Bad named entity: Tab without a semi-colon 4 B
001404 html5lib/namedEntities/0997 html5lib-tests ␉ Named entity: Tab; with a semi-colon 5 B
001405 html5lib/namedEntities/0998 html5lib-tests &Tau Bad named entity: Tau without a semi-colon 4 B
001406 html5lib/namedEntities/0999 html5lib-tests Τ Named entity: Tau; with a semi-colon 5 B
001407 html5lib/namedEntities/1000 html5lib-tests &Tcaron Bad named entity: Tcaron without a semi-colon 7 B
001408 html5lib/namedEntities/1001 html5lib-tests Ť Named entity: Tcaron; with a semi-colon 8 B
001409 html5lib/namedEntities/1002 html5lib-tests &Tcedil Bad named entity: Tcedil without a semi-colon 7 B
001410 html5lib/namedEntities/1003 html5lib-tests Ţ Named entity: Tcedil; with a semi-colon 8 B
001411 html5lib/namedEntities/1004 html5lib-tests &Tcy Bad named entity: Tcy without a semi-colon 4 B
001412 html5lib/namedEntities/1005 html5lib-tests Т Named entity: Tcy; with a semi-colon 5 B
001413 html5lib/namedEntities/1006 html5lib-tests &Tfr Bad named entity: Tfr without a semi-colon 4 B
001414 html5lib/namedEntities/1007 html5lib-tests 𝔗 Named entity: Tfr; with a semi-colon 5 B
001415 html5lib/namedEntities/1008 html5lib-tests &Therefore Bad named entity: Therefore without a semi-colon 10 B
001416 html5lib/namedEntities/1009 html5lib-tests ∴ Named entity: Therefore; with a semi-colon 11 B
001417 html5lib/namedEntities/1010 html5lib-tests &Theta Bad named entity: Theta without a semi-colon 6 B
001418 html5lib/namedEntities/1011 html5lib-tests Θ Named entity: Theta; with a semi-colon 7 B
001419 html5lib/namedEntities/1012 html5lib-tests &ThickSpace Bad named entity: ThickSpace without a semi-colon 11 B
001420 html5lib/namedEntities/1013 html5lib-tests    Named entity: ThickSpace; with a semi-colon 12 B
001421 html5lib/namedEntities/1014 html5lib-tests &ThinSpace Bad named entity: ThinSpace without a semi-colon 10 B
001422 html5lib/namedEntities/1015 html5lib-tests   Named entity: ThinSpace; with a semi-colon 11 B
001423 html5lib/namedEntities/1016 html5lib-tests &Tilde Bad named entity: Tilde without a semi-colon 6 B
001424 html5lib/namedEntities/1017 html5lib-tests ∼ Named entity: Tilde; with a semi-colon 7 B
001425 html5lib/namedEntities/1018 html5lib-tests &TildeEqual Bad named entity: TildeEqual without a semi-colon 11 B
001426 html5lib/namedEntities/1019 html5lib-tests ≃ Named entity: TildeEqual; with a semi-colon 12 B
001427 html5lib/namedEntities/1020 html5lib-tests &TildeFullEqual Bad named entity: TildeFullEqual without a semi-colon 15 B
001428 html5lib/namedEntities/1021 html5lib-tests ≅ Named entity: TildeFullEqual; with a semi-colon 16 B
001429 html5lib/namedEntities/1022 html5lib-tests &TildeTilde Bad named entity: TildeTilde without a semi-colon 11 B
001430 html5lib/namedEntities/1023 html5lib-tests ≈ Named entity: TildeTilde; with a semi-colon 12 B
001431 html5lib/namedEntities/1024 html5lib-tests &Topf Bad named entity: Topf without a semi-colon 5 B
001432 html5lib/namedEntities/1025 html5lib-tests 𝕋 Named entity: Topf; with a semi-colon 6 B
001433 html5lib/namedEntities/1026 html5lib-tests &TripleDot Bad named entity: TripleDot without a semi-colon 10 B
001434 html5lib/namedEntities/1027 html5lib-tests ⃛ Named entity: TripleDot; with a semi-colon 11 B
001435 html5lib/namedEntities/1028 html5lib-tests &Tscr Bad named entity: Tscr without a semi-colon 5 B
001436 html5lib/namedEntities/1029 html5lib-tests 𝒯 Named entity: Tscr; with a semi-colon 6 B
001437 html5lib/namedEntities/1030 html5lib-tests &Tstrok Bad named entity: Tstrok without a semi-colon 7 B
001438 html5lib/namedEntities/1031 html5lib-tests Ŧ Named entity: Tstrok; with a semi-colon 8 B
001439 html5lib/namedEntities/1032 html5lib-tests Ú Named entity: Uacute without a semi-colon 7 B
001440 html5lib/namedEntities/1033 html5lib-tests Ú Named entity: Uacute; with a semi-colon 8 B
001441 html5lib/namedEntities/1034 html5lib-tests &Uarr Bad named entity: Uarr without a semi-colon 5 B
001442 html5lib/namedEntities/1035 html5lib-tests ↟ Named entity: Uarr; with a semi-colon 6 B
001443 html5lib/namedEntities/1036 html5lib-tests &Uarrocir Bad named entity: Uarrocir without a semi-colon 9 B
001444 html5lib/namedEntities/1037 html5lib-tests ⥉ Named entity: Uarrocir; with a semi-colon 10 B
001445 html5lib/namedEntities/1038 html5lib-tests &Ubrcy Bad named entity: Ubrcy without a semi-colon 6 B
001446 html5lib/namedEntities/1039 html5lib-tests Ў Named entity: Ubrcy; with a semi-colon 7 B
001447 html5lib/namedEntities/1040 html5lib-tests &Ubreve Bad named entity: Ubreve without a semi-colon 7 B
001448 html5lib/namedEntities/1041 html5lib-tests Ŭ Named entity: Ubreve; with a semi-colon 8 B
001449 html5lib/namedEntities/1042 html5lib-tests Û Named entity: Ucirc without 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.