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 |
|---|---|---|---|---|
| 006650 | generated/1815 Generated |
>�gé⊵é gg
|
41 B | |
| 006651 | generated/1816 Generated |
=&&Zf&wopf␍␊0#&Iu
|
25 B | |
| 006652 | generated/1817 Generated |
&nvrŗ €>
|
17 B | |
| 006653 | generated/1818 Generated |
g#9
|
22 B | |
| 006654 | generated/1819 Generated |
&apf⊎
|
15 B | |
| 006655 | generated/1820 Generated |
&nGŸ ≂̸⇆0>gFx
|
71 B | |
| 006656 | generated/1821 Generated |
&RightT␊g
|
30 B | |
| 006657 | generated/1822 Generated |
日a&aog␀&s>c&Ocir"&zwnx&b��
|
51 B | |
| 006658 | generated/1823 Generated |
#€��'
|
12 B | |
| 006659 | generated/1824 Generated |
⸺x9🎉;a"⌈日Z日
|
30 B | |
| 006660 | generated/1825 Generated |
gA日� 7⟨U+10FFFF⟩ &triang🎉⊝…xg␍&SquareSupe€
|
92 B | |
| 006661 | generated/1826 Generated |
Ųa&#
|
10 B | |
| 006662 | generated/1827 Generated |
Ñ9≏∑<
|
22 B | |
| 006663 | generated/1828 Generated |
a≲"&ReverseEquix□␊&loopa F9
|
48 B | |
| 006664 | generated/1829 Generated |
▱&marke`␉€␍g🎉
|
39 B | |
| 006665 | generated/1830 Generated |
a…&-&cir
|
12 B | |
| 006666 | generated/1831 Generated |
🎉␀Z
|
6 B | |
| 006667 | generated/1832 Generated |
⥊g^␍日␊#≤&acxé# f&
|
58 B | |
| 006668 | generated/1833 Generated |
⟨U+FFFF⟩x9��
|
25 B | |
| 006669 | generated/1834 Generated |
🇬∣FF ␉␀#a≈
|
45 B | |
| 006670 | generated/1835 Generated |
-#=-&bZ
|
25 B | |
| 006671 | generated/1836 Generated |
7<
|
12 B | |
| 006672 | generated/1837 Generated |
�&eqslantl
|
12 B | |
| 006673 | generated/1838 Generated |
é↥Ÿ ⅈ日日à-&NotCong&U&rcei␍␍āᜱ
|
84 B | |
| 006674 | generated/1839 Generated |
&abref
|
6 B | |
| 006675 | generated/1840 Generated |
9&yg"⟨U+10FFFF⟩∄™f#𪰶Z␉
|
51 B | |
| 006676 | generated/1841 Generated |
>g⋗-∣9"␍&nle␀g&
|
42 B | |
| 006677 | generated/1842 Generated |
-&gl"€&VeryThina
|
20 B | |
| 006678 | generated/1843 Generated |
"🎉�
|
14 B | |
| 006679 | generated/1844 Generated |
🎉¡𝔻⊐␉g日&sc⨀F0␍xx
|
65 B | |
| 006680 | generated/1845 Generated |
� &iop é9g
|
28 B | |
| 006681 | generated/1846 Generated |
&f日=␉∄&␍x
|
32 B | |
| 006682 | generated/1847 Generated |
' &no;‘€x>óШ
|
61 B | |
| 006683 | generated/1848 Generated |
⪯␍≡9&ReverseElem&CircleMinu␉⤥'
|
55 B | |
| 006684 | generated/1849 Generated |
F♮>␀€á#⪏Zä
|
40 B | |
| 006685 | generated/1850 Generated |
>⟨U+10FFFF⟩x<&angs=€g�≥<7
|
56 B | |
| 006686 | generated/1851 Generated |
␍7␊7;␍␍=⋲&f-<⋪
|
48 B | |
| 006687 | generated/1852 Generated |
<&LeftArro <-"␀
|
15 B | |
| 006688 | generated/1853 Generated |
éx⟨U+10FFFF⟩… F€ =𝔩fg
|
50 B | |
| 006689 | generated/1854 Generated |
&fr␉&sem#
|
12 B | |
| 006690 | generated/1855 Generated |
␀&␊7&ufr␍&DownTeeArro&=
|
26 B | |
| 006691 | generated/1856 Generated |
"a␀&&scpoli"xéA𦮥≕;
|
38 B | |
| 006692 | generated/1857 Generated |
xg⋗⟨U+10FFFF⟩&bi� >9&Cacut&nda𤥄g-⊗&bop;
|
85 B | |
| 006693 | generated/1858 Generated |
␊#9'&x'=€神x&lozen=f
|
34 B | |
| 006694 | generated/1859 Generated |
9a𝒰=xa≁
|
31 B | |
| 006695 | generated/1860 Generated |
∳Ÿxg�g…±g #0�⟨U+10FFFF⟩🎉
|
92 B | |
| 006696 | generated/1861 Generated |
⇐g'_g&GcedigF€�&Kop€&nsube#&yu
|
96 B | |
| 006697 | generated/1862 Generated |
␍F ◂'&vartrianglelef<f<rigé≪
|
93 B | |
| 006698 | generated/1863 Generated |
⟨U+00A0⟩é日␀Z… ⌖⪊≪̸&ha-🎉#␊"Ax
|
59 B | |
| 006699 | generated/1864 Generated |
␍&;é&djc&d9a0ѓ€𝕆=
|
40 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