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
2,241 of 6,835 cases
| Case | Name | Expected | Note | Size |
|---|---|---|---|---|
| 005952 | generated/1117 Generated |
<ñ␉ ;
|
14 B | |
| 005953 | generated/1118 Generated |
⟨U+00A0⟩x&omi ℏ7␍⟨U+00A0⟩
|
54 B | |
| 005954 | generated/1119 Generated |
&lМZ␊>🎉-&supmu&␍�x␉x␍0≋
|
46 B | |
| 005956 | generated/1121 Generated |
&ntil� ␍€ 9&𬷘€
|
31 B | |
| 005957 | generated/1122 Generated |
-g
|
11 B | |
| 005958 | generated/1123 Generated |
&nGî≂̸<␍&b␊&fr…
|
39 B | |
| 005959 | generated/1124 Generated |
g7⟨U+10FFFF⟩x&␀;&p'&l⋒&pr
|
46 B | |
| 005961 | generated/1126 Generated |
…Z-⦓&Sho xgZ>
|
51 B | |
| 005962 | generated/1127 Generated |
◬&�-…日&nes
|
32 B | |
| 005963 | generated/1128 Generated |
␀␊🎉&🎉g
|
31 B | |
| 005964 | generated/1129 Generated |
␊9#9␍€∘-&␉"🎉⪰̸€x␍=
|
50 B | |
| 005965 | generated/1130 Generated |
==Z&sqsu… ␊€&Ÿ
|
27 B | |
| 005966 | generated/1131 Generated |
&s…Fg&ZeroWidthSpace␉›␉
|
45 B | |
| 005967 | generated/1132 Generated |
⟨U+10FFFF⟩x&it&lesges ⊆␉&DotEqua€⩰
|
51 B | |
| 005968 | generated/1133 Generated |
g&utr
|
13 B | |
| 005969 | generated/1134 Generated |
∇0x>‹xg日&ioA F
|
49 B | |
| 005970 | generated/1135 Generated |
⇋=🎉Ÿ0⋱"⋀�a🎉𰖚"␀𩊭g#
|
78 B | |
| 005971 | generated/1136 Generated |
␊x…x
|
11 B | |
| 005972 | generated/1137 Generated |
␉&infinŦℬ>gf␀� <;x€x≏̸
|
64 B | |
| 005973 | generated/1138 Generated |
□∬Z>-&nlsim␉#�x;ˇ<f#
|
54 B | |
| 005974 | generated/1139 Generated |
⦯€;�Β&Sho&vBa� &hookleftarro
|
68 B | |
| 005975 | generated/1140 Generated |
7Ÿ&mpa∞Ĉ␉&Ycirc9×&Ic ⟨U+00A0⟩
|
76 B | |
| 005976 | generated/1141 Generated |
g9🎉F'
|
25 B | |
| 005977 | generated/1142 Generated |
üŁ9&x␊A
|
24 B | |
| 005978 | generated/1143 Generated |
&rdquo&supdꕸx€xx�x€;#
|
63 B | |
| 005979 | generated/1144 Generated |
�&Gcirc&the#&n9a7'�x�x⅖
|
62 B | |
| 005980 | generated/1145 Generated |
␊<␀⟨U+00A0⟩x€🎉F&b
|
19 B | |
| 005982 | generated/1147 Generated |
ℝ>a&plu&o␊x␍
|
24 B | |
| 005983 | generated/1148 Generated |
⟨U+10FFFF⟩ -␍ń&nvrtr&divf⊒í▫&
|
91 B | |
| 005984 | generated/1149 Generated |
Ÿxx&e&ef†␍
|
33 B | |
| 005986 | generated/1151 Generated |
9 €≀>🎉&x˘␊&equ
|
50 B | |
| 005987 | generated/1152 Generated |
"= 'gé␀⟨U+00A0⟩x"7&A
|
46 B | |
| 005988 | generated/1153 Generated |
&d�é#†&LeftTriangle'x𥡇#&ShortD
|
53 B | |
| 005989 | generated/1154 Generated |
¶9å'>⟨U+10FFFF⟩x� &ti␀9␀Ж9𝕆
|
64 B | |
| 005992 | generated/1157 Generated |
�€-日;
|
17 B | |
| 005993 | generated/1158 Generated |
≟a␉&xvee&N⟨U+00A0⟩␊&p&curvearrowrigh&Int&Ysa
|
69 B | |
| 005994 | generated/1159 Generated |
g≫̸
|
39 B | |
| 005995 | generated/1160 Generated |
🎉=𬁿gag
|
25 B | |
| 005996 | generated/1161 Generated |
&frac25g⋦=⨀;>𲌹g⋼␉g⋚g�
|
112 B | |
| 005997 | generated/1162 Generated |
␍xé⊺␊∔␉&Lfr␀€€≐̸&shar�
|
66 B | |
| 005998 | generated/1163 Generated |
⟨U+10FFFF⟩ &cro␍&&&N𨬌␉⟨U+FFFF⟩a␉g…&do
|
85 B | |
| 005999 | generated/1164 Generated |
⟨U+10FFFF⟩
|
9 B | |
| 006000 | generated/1165 Generated |
&ls-"🎉…
|
14 B | |
| 006001 | generated/1166 Generated |
€⟵日&Ÿ� 9g日â
|
43 B | |
| 006002 | generated/1167 Generated |
�x&QUOf"&Ubfő␀…=
|
44 B | |
| 006003 | generated/1168 Generated |
𪰾∲>␀éa🎉&su�g日≽
|
50 B | |
| 006004 | generated/1169 Generated |
g"𝔖𱕄g
|
33 B | |
| 006005 | generated/1170 Generated |
␉�Ω9⤠
|
35 B | |
| 006007 | generated/1172 Generated |
&succ𝕓&N=�Z␀f€<
|
34 B | |
| 006008 | generated/1173 Generated |
␀>�x🎉
|
25 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