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 |
|---|---|---|---|---|
| 006750 | generated/1915 Generated |
&v"¹0␍⊗ÄŸ␉<Zé
|
56 B | |
| 006751 | generated/1916 Generated |
f␀␀…-g&box&N␍␍ g#g
|
51 B | |
| 006752 | generated/1917 Generated |
ℯ␍x"ℊ'⊐a9F⪾
|
55 B | |
| 006753 | generated/1918 Generated |
0∫… xℂ-gŸ日
|
62 B | |
| 006754 | generated/1919 Generated |
7&box日x&Racu&loz
|
26 B | |
| 006755 | generated/1920 Generated |
- &Wopf轏g
|
25 B | |
| 006756 | generated/1921 Generated |
9␀€>F⟨U+10FFFF⟩ "
|
30 B | |
| 006757 | generated/1922 Generated |
a ←␍
|
10 B | |
| 006758 | generated/1923 Generated |
aé&&w� ␉x␊&VdashlZ␉Ÿ␊&E 日
|
43 B | |
| 006759 | generated/1924 Generated |
Пf-&P├
|
16 B | |
| 006760 | generated/1925 Generated |
␀> >g7F⟦␍␊日F0&succ&DDo
|
46 B | |
| 006761 | generated/1926 Generated |
␉FA >µ�9€
|
46 B | |
| 006762 | generated/1927 Generated |
⊴⃒⟨U+10FFFF⟩xā0& #&VeryThi&sqsubsea⨣⧎
|
99 B | |
| 006763 | generated/1928 Generated |
Ƶ�𝔤ℭ𗖥⟨U+FFFF⟩€␍&vsu- &Tscr
|
66 B | |
| 006764 | generated/1929 Generated |
€g<7
|
25 B | |
| 006765 | generated/1930 Generated |
𖢔g#&Dot�…xxa<�x
|
31 B | |
| 006766 | generated/1931 Generated |
7A �x日≀F
|
42 B | |
| 006767 | generated/1932 Generated |
'f⟨U+00A0⟩ €␍ ␉� &rd
|
31 B | |
| 006768 | generated/1933 Generated |
&é␍🎉&imagp⩽⟨U+FFFF⟩>&br‥≎
|
55 B | |
| 006769 | generated/1934 Generated |
␀𣏿gf␊=g↔␍;>␀
|
41 B | |
| 006770 | generated/1935 Generated |
g日&poun0Ax9.𝕩g<&xℯg
|
78 B | |
| 006771 | generated/1936 Generated |
𥈙ga€é
|
32 B | |
| 006772 | generated/1937 Generated |
␍␍␀🎉&Uar<𮖷g<"x&Tild#&Del
|
44 B | |
| 006773 | generated/1938 Generated |
␀;70⟨U+10FFFF⟩&fc9F⇏
|
26 B | |
| 006774 | generated/1939 Generated |
';&angrt&9g7ŸÖ&Oop€g>
|
59 B | |
| 006775 | generated/1940 Generated |
f€␀&esdo日&Su&>f␀g<␊x
|
45 B | |
| 006776 | generated/1941 Generated |
0⟨U+00A0⟩é;&
|
14 B | |
| 006777 | generated/1942 Generated |
&ap∸&&lambdaf─xg⌝
|
48 B | |
| 006778 | generated/1943 Generated |
&Copro␀'
|
8 B | |
| 006779 | generated/1944 Generated |
␊⪚
|
5 B | |
| 006780 | generated/1945 Generated |
|
8 B | |
| 006781 | generated/1946 Generated |
F日⟶&Bcyg9&d€␍𝕃7<Agx
|
66 B | |
| 006782 | generated/1947 Generated |
g-␉xx'�␊€⍼;&wop
|
51 B | |
| 006783 | generated/1948 Generated |
ʼn⟨U+00A0⟩é␉Ÿ€
|
38 B | |
| 006784 | generated/1949 Generated |
&'=<&⌆&nequi↕é
|
42 B | |
| 006785 | generated/1950 Generated |
'g&plu␉'&xé��é⟨U+FFFF⟩x�0𬛦g
|
78 B | |
| 006786 | generated/1951 Generated |
g9ŷ𬍢&s>
|
30 B | |
| 006787 | generated/1952 Generated |
⟨U+FFFF⟩⊺≉Ax␍x&a&xutra�=� �
|
83 B | |
| 006788 | generated/1953 Generated |
␊&rHarf9&
|
22 B | |
| 006789 | generated/1954 Generated |
7-x
|
3 B | |
| 006790 | generated/1955 Generated |
€␉x=
|
8 B | |
| 006791 | generated/1956 Generated |
gé&⊣
|
26 B | |
| 006792 | generated/1957 Generated |
␊-€&nrarx-␊&ga#&d&eq⟨U+00A0⟩
|
38 B | |
| 006793 | generated/1958 Generated |
9␍ ;⁃÷␊aℍ𝕣⫏␉ηA 日␀
|
55 B | |
| 006794 | generated/1959 Generated |
Ù𝔔Ÿ&
|
37 B | |
| 006795 | generated/1960 Generated |
🎉 &trimi'�x&congdot&homtht🎉é␉7&Otimes#
|
66 B | |
| 006796 | generated/1961 Generated |
g9
|
10 B | |
| 006797 | generated/1962 Generated |
=f&a� ⇿Fⅅ╙-
|
58 B | |
| 006798 | generated/1963 Generated |
�& …&GJcy
|
18 B | |
| 006799 | generated/1964 Generated |
'<𗎚gg-∖
|
47 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