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 |
|---|---|---|---|---|
| 000800 | html5lib/namedEntities/0393 html5lib-tests |
ⅈ
|
12 B | |
| 000801 | html5lib/namedEntities/0394 html5lib-tests |
&Implies
|
8 B | |
| 000802 | html5lib/namedEntities/0395 html5lib-tests |
⇒
|
9 B | |
| 000803 | html5lib/namedEntities/0396 html5lib-tests |
&Int
|
4 B | |
| 000804 | html5lib/namedEntities/0397 html5lib-tests |
∬
|
5 B | |
| 000805 | html5lib/namedEntities/0398 html5lib-tests |
&Integral
|
9 B | |
| 000806 | html5lib/namedEntities/0399 html5lib-tests |
∫
|
10 B | |
| 000807 | html5lib/namedEntities/0400 html5lib-tests |
&Intersection
|
13 B | |
| 000808 | html5lib/namedEntities/0401 html5lib-tests |
⋂
|
14 B | |
| 000809 | html5lib/namedEntities/0402 html5lib-tests |
&InvisibleComma
|
15 B | |
| 000810 | html5lib/namedEntities/0403 html5lib-tests |
⟨U+2063⟩
|
16 B | |
| 000811 | html5lib/namedEntities/0404 html5lib-tests |
&InvisibleTimes
|
15 B | |
| 000812 | html5lib/namedEntities/0405 html5lib-tests |
⟨U+2062⟩
|
16 B | |
| 000813 | html5lib/namedEntities/0406 html5lib-tests |
&Iogon
|
6 B | |
| 000814 | html5lib/namedEntities/0407 html5lib-tests |
Į
|
7 B | |
| 000815 | html5lib/namedEntities/0408 html5lib-tests |
&Iopf
|
5 B | |
| 000816 | html5lib/namedEntities/0409 html5lib-tests |
𝕀
|
6 B | |
| 000817 | html5lib/namedEntities/0410 html5lib-tests |
&Iota
|
5 B | |
| 000818 | html5lib/namedEntities/0411 html5lib-tests |
Ι
|
6 B | |
| 000819 | html5lib/namedEntities/0412 html5lib-tests |
&Iscr
|
5 B | |
| 000820 | html5lib/namedEntities/0413 html5lib-tests |
ℐ
|
6 B | |
| 000821 | html5lib/namedEntities/0414 html5lib-tests |
&Itilde
|
7 B | |
| 000822 | html5lib/namedEntities/0415 html5lib-tests |
Ĩ
|
8 B | |
| 000823 | html5lib/namedEntities/0416 html5lib-tests |
&Iukcy
|
6 B | |
| 000824 | html5lib/namedEntities/0417 html5lib-tests |
І
|
7 B | |
| 000825 | html5lib/namedEntities/0418 html5lib-tests |
Ï
|
5 B | |
| 000826 | html5lib/namedEntities/0419 html5lib-tests |
Ï
|
6 B | |
| 000827 | html5lib/namedEntities/0420 html5lib-tests |
&Jcirc
|
6 B | |
| 000828 | html5lib/namedEntities/0421 html5lib-tests |
Ĵ
|
7 B | |
| 000829 | html5lib/namedEntities/0422 html5lib-tests |
&Jcy
|
4 B | |
| 000830 | html5lib/namedEntities/0423 html5lib-tests |
Й
|
5 B | |
| 000831 | html5lib/namedEntities/0424 html5lib-tests |
&Jfr
|
4 B | |
| 000832 | html5lib/namedEntities/0425 html5lib-tests |
𝔍
|
5 B | |
| 000833 | html5lib/namedEntities/0426 html5lib-tests |
&Jopf
|
5 B | |
| 000834 | html5lib/namedEntities/0427 html5lib-tests |
𝕁
|
6 B | |
| 000835 | html5lib/namedEntities/0428 html5lib-tests |
&Jscr
|
5 B | |
| 000836 | html5lib/namedEntities/0429 html5lib-tests |
𝒥
|
6 B | |
| 000837 | html5lib/namedEntities/0430 html5lib-tests |
&Jsercy
|
7 B | |
| 000838 | html5lib/namedEntities/0431 html5lib-tests |
Ј
|
8 B | |
| 000839 | html5lib/namedEntities/0432 html5lib-tests |
&Jukcy
|
6 B | |
| 000840 | html5lib/namedEntities/0433 html5lib-tests |
Є
|
7 B | |
| 000841 | html5lib/namedEntities/0434 html5lib-tests |
&KHcy
|
5 B | |
| 000842 | html5lib/namedEntities/0435 html5lib-tests |
Х
|
6 B | |
| 000843 | html5lib/namedEntities/0436 html5lib-tests |
&KJcy
|
5 B | |
| 000844 | html5lib/namedEntities/0437 html5lib-tests |
Ќ
|
6 B | |
| 000845 | html5lib/namedEntities/0438 html5lib-tests |
&Kappa
|
6 B | |
| 000846 | html5lib/namedEntities/0439 html5lib-tests |
Κ
|
7 B | |
| 000847 | html5lib/namedEntities/0440 html5lib-tests |
&Kcedil
|
7 B | |
| 000848 | html5lib/namedEntities/0441 html5lib-tests |
Ķ
|
8 B | |
| 000849 | html5lib/namedEntities/0442 html5lib-tests |
&Kcy
|
4 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.
- Named character references — the table of 2,231 names, including the legacy ones that work without a semicolon
- Numeric character reference end state — the Windows-1252 remapping and the rules for 0, surrogates and out-of-range numbers
- html5lib-tests tokenizer tests — the source of the 4,617 html5lib cases