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
5,931 of 6,835 cases
| Case | Name | Expected | Note | Size |
|---|---|---|---|---|
| 005613 | generated/0778 Generated |
&n<␊∄-
|
13 B | |
| 005614 | generated/0779 Generated |
ℵé� é&apf
|
26 B | |
| 005615 | generated/0780 Generated |
0&sq
|
4 B | |
| 005617 | generated/0782 Generated |
a7␉>é&<ℊfF装⩭
|
32 B | |
| 005618 | generated/0783 Generated |
Z⁃⇓␍&a&ord<&⟨U+FFFF⟩⟨U+FFFF⟩g&Del
|
73 B | |
| 005619 | generated/0784 Generated |
& …á 9&x&Å日'
|
41 B | |
| 005620 | generated/0785 Generated |
'��&FilledVerySmall⋄␀日Éx
|
55 B | |
| 005621 | generated/0786 Generated |
�F;7� F<Ax≪<Э↥
|
55 B | |
| 005622 | generated/0787 Generated |
␀ "␊␉␉&a∢
|
32 B | |
| 005623 | generated/0788 Generated |
🎉fAx"𦲘é�␀&f&l&⟨U+FFFF⟩
|
45 B | |
| 005624 | generated/0789 Generated |
␍⋚&jse�&No&NotNestedLe🎉�ы&NotSquareS0€a
|
91 B | |
| 005625 | generated/0790 Generated |
g0&r &g→⟨U+00A0⟩€ Z⋃🎉#
|
68 B | |
| 005626 | generated/0791 Generated |
∣日é␍x&⟨³�€a🎉F&uwan&⟨U+FFFF⟩
|
84 B | |
| 005627 | generated/0792 Generated |
日Z�&bia&C€⟼&ga␊;
|
54 B | |
| 005628 | generated/0793 Generated |
€Z9&&subx&Su␊>
|
19 B | |
| 005629 | generated/0794 Generated |
&cupor�x'g&iota=∴9>… ␊&JuΗ␉
|
70 B | |
| 005631 | generated/0796 Generated |
&⤨␊ℏ&W 日␊&lfloor€&b
|
45 B | |
| 005632 | generated/0797 Generated |
f'Ax€Ÿ≑f𦏧g≼a␍&€␊g>c
|
77 B | |
| 005633 | generated/0798 Generated |
9 " #↲⟨U+10FFFF⟩ "&cu0⟨U+00A0⟩x␉␀
|
43 B | |
| 005634 | generated/0799 Generated |
;<A␊⟨U+00A0⟩⟨U+FFFF⟩x&z;␀𝔓;€'
|
44 B | |
| 005635 | generated/0800 Generated |
&precap&Ud␍¥€f␉&goF
|
25 B | |
| 005636 | generated/0801 Generated |
Z&Iot&ca⊂⃒&LowerRightf€fé⟨U+FFFF⟩ �
|
75 B | |
| 005637 | generated/0802 Generated |
&Rrigh🎉f🎉;"&la日7
|
24 B | |
| 005638 | generated/0803 Generated |
>&féa&≳
|
34 B | |
| 005640 | generated/0805 Generated |
g&supsetneq&ofci𦭥-≫&leftrighta€"
|
70 B | |
| 005641 | generated/0806 Generated |
␍€⟨U+00A0⟩&cir&kop&black␀x=␊� &⟨U+10FFFF⟩x�x
|
50 B | |
| 005642 | generated/0807 Generated |
="&&udblac⪼␊#<&LeftTriangle≲Z⫃
|
58 B | |
| 005643 | generated/0808 Generated |
é'&CapitalDifferent␀€>…x🎉
|
35 B | |
| 005644 | generated/0809 Generated |
␍x;␉⎰작€9€
|
39 B | |
| 005646 | generated/0811 Generated |
Z€-≡⃥
|
14 B | |
| 005648 | generated/0813 Generated |
€7> &h�
|
20 B | |
| 005649 | generated/0814 Generated |
AxÒ�gx
|
51 B | |
| 005650 | generated/0815 Generated |
ϖ⫌︀ >� ⟨U+00A0⟩… … f'&
|
45 B | |
| 005651 | generated/0816 Generated |
&sq⟨U+FFFF⟩x>&Ph>
|
34 B | |
| 005652 | generated/0817 Generated |
☎<&Ccir&nraé
|
19 B | |
| 005653 | generated/0818 Generated |
x日&LeftFl␀g&
|
26 B | |
| 005654 | generated/0819 Generated |
日ℜ9&supse‐a�
|
35 B | |
| 005655 | generated/0820 Generated |
𝓃&ForAl9Z␀&RightArrowLeftA&&gne&nvHa<&g0␍
|
71 B | |
| 005656 | generated/0821 Generated |
日a␉⫇
|
21 B | |
| 005657 | generated/0822 Generated |
-⟨U+FFFF⟩&7⥰é;␊é9
|
40 B | |
| 005658 | generated/0823 Generated |
€&LeftUpVectorBZ&0a🎉&lst'a⟨U+FFFF⟩
|
42 B | |
| 005659 | generated/0824 Generated |
┴<
|
8 B | |
| 005660 | generated/0825 Generated |
x<뤴g"<€x日🎉>#&RE�g
|
48 B | |
| 005661 | generated/0826 Generated |
⫃<&rcy"Zx&ori≧7
|
35 B | |
| 005663 | generated/0828 Generated |
�&␉ &l7g&Y&Ium⋐Fx
|
52 B | |
| 005665 | generated/0830 Generated |
{>-&af=Š>&p🎉Z░⟨U+FFFF⟩
|
73 B | |
| 005666 | generated/0831 Generated |
␊<⌜␀ 9
|
31 B | |
| 005667 | generated/0832 Generated |
€x"␊ ;fx⟨U+10FFFF⟩x€日␊&NotReve
|
49 B | |
| 005668 | generated/0833 Generated |
g⟨U+00A0⟩xg-g⪺g#
|
80 B | |
| 005669 | generated/0834 Generated |
&black𝒦x"&x&rtim&real�
|
45 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