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 |
|---|---|---|---|---|
| 004878 | generated/0043 Generated |
⋺🎉&lpafx#<'
|
36 B | |
| 004880 | generated/0045 Generated |
𝕨⟨U+10FFFF⟩&<éـf
|
27 B | |
| 004881 | generated/0046 Generated |
=g7&nV⟨U+FFFF⟩Ÿ<>⟨U+FFFF⟩&
|
58 B | |
| 004882 | generated/0047 Generated |
7&A&ag𞋮
|
24 B | |
| 004883 | generated/0048 Generated |
↑;␍‴ν'9␍␊
|
40 B | |
| 004884 | generated/0049 Generated |
é🎉0⋃g⫚'&X& &Differentiag� " <
|
83 B | |
| 004885 | generated/0050 Generated |
� Z€x&=€-
|
31 B | |
| 004886 | generated/0051 Generated |
␍⥡'agg
|
41 B | |
| 004887 | generated/0052 Generated |
'€-Z🎉f日7a
|
27 B | |
| 004888 | generated/0053 Generated |
�'x"Ÿxg � &gc&dotplu;&sF
|
59 B | |
| 004889 | generated/0054 Generated |
&iqu𝒳ěé&R>␊>𝓌⤃␉#日
|
52 B | |
| 004890 | generated/0055 Generated |
¶x␉g
|
18 B | |
| 004891 | generated/0056 Generated |
é-&Gsc…x�
|
16 B | |
| 004892 | generated/0057 Generated |
0␍ ␉&wsc␍7↫&ié7⟨U+00A0⟩
|
39 B | |
| 004893 | generated/0058 Generated |
…& €'&� Axϱg⊔°7Ú&wf
|
86 B | |
| 004894 | generated/0059 Generated |
é⟨U+00A0⟩&Lsh≎⟨U+00A0⟩#g…x
|
60 B | |
| 004895 | generated/0060 Generated |
ێ&cced
|
19 B | |
| 004897 | generated/0062 Generated |
&dagger&prure0&g&lacutef;0gZ�-
|
49 B | |
| 004899 | generated/0064 Generated |
€…&<&Jukcy9␊>A
|
25 B | |
| 004901 | generated/0066 Generated |
F"& ÷ontimes<'#€∥€€x
|
42 B | |
| 004902 | generated/0067 Generated |
|
17 B | |
| 004903 | generated/0068 Generated |
▱␊7&Jukc€&uZ£
|
36 B | |
| 004904 | generated/0069 Generated |
⟨U+00A0⟩x𑜊🎉&v-é
|
33 B | |
| 004905 | generated/0070 Generated |
€<f99
|
16 B | |
| 004906 | generated/0071 Generated |
a&rdca<Ÿ ␊␉␉⟨U+10FFFF⟩ 7/∱
|
39 B | |
| 004908 | generated/0073 Generated |
F&mal&a�⩜g;
|
44 B | |
| 004909 | generated/0074 Generated |
␍ég&nvF⋉␀-é'
|
30 B | |
| 004911 | generated/0076 Generated |
#& &x'0é&LsZ␀a
|
30 B | |
| 004913 | generated/0078 Generated |
␉Z&uAĵ⊀⥅� <#⪎7
|
68 B | |
| 004914 | generated/0079 Generated |
€� #&SHcy↺0>≓'0=#f&vBarvf&frac3
|
51 B | |
| 004915 | generated/0080 Generated |
␉x
|
5 B | |
| 004916 | generated/0081 Generated |
Z⦏ℑ&ig≹&ntlg&ratŸ⌎
|
70 B | |
| 004919 | generated/0084 Generated |
␉ ⟨U+10FFFF⟩&Cc␉↽␉&middx␊Ÿxë
|
77 B | |
| 004920 | generated/0085 Generated |
0⊳€≈�≼␍�x ␍
|
70 B | |
| 004921 | generated/0086 Generated |
a&Ic-
|
14 B | |
| 004922 | generated/0087 Generated |
0⌈� f#
|
35 B | |
| 004923 | generated/0088 Generated |
⋌&twoheadrightarro⟨U+10FFFF⟩ � <
|
53 B | |
| 004924 | generated/0089 Generated |
␉-;�🎉
|
26 B | |
| 004925 | generated/0090 Generated |
>9&Wscr∋🎉0€x
|
28 B | |
| 004926 | generated/0091 Generated |
=é<g€ZF<…
|
33 B | |
| 004927 | generated/0092 Generated |
&ag⥒€&NotRigh◸x
|
54 B | |
| 004929 | generated/0094 Generated |
<蜹🎉日𝓎"9f-'日F␀
|
37 B | |
| 004930 | generated/0095 Generated |
Z9␉x<0🎉�↚Ÿx⟨U+10FFFF⟩ Ÿx⋚F;
|
74 B | |
| 004931 | generated/0096 Generated |
-𝔟↵�🎉␍=0>⋬╠g␊⋀é
|
78 B | |
| 004932 | generated/0097 Generated |
>⊨𘇵🎉≿
|
61 B | |
| 004934 | generated/0099 Generated |
&pr⟨U+10FFFF⟩xA
|
18 B | |
| 004936 | generated/0101 Generated |
🎉g=&range日>🎉␉xx>g>'&bum⋛
|
69 B | |
| 004938 | generated/0103 Generated |
�=
|
9 B | |
| 004939 | generated/0104 Generated |
Zg;#␍≈℗日#
|
42 B | |
| 004940 | generated/0105 Generated |
aā′⟨U+FFFF⟩
|
23 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