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 |
|---|---|---|---|---|
| 006504 | generated/1669 Generated |
>&Mf
|
4 B | |
| 006505 | generated/1670 Generated |
#&no&lbx<𣱁g⟨U+00A0⟩ ⟨U+10FFFF⟩ ⦪⟨U+00A0⟩
|
51 B | |
| 006506 | generated/1671 Generated |
␍… FZZ�A g⊥éF╧#a
|
54 B | |
| 006507 | generated/1672 Generated |
ø🎉⟨U+FFFF⟩xggA Èf麂g
|
93 B | |
| 006509 | generated/1674 Generated |
<&otim&lcub⪕f�
|
37 B | |
| 006510 | generated/1675 Generated |
␊日� Axa⇃{F
|
61 B | |
| 006511 | generated/1676 Generated |
Ÿ ]&0日9f�g#&boxh
|
52 B | |
| 006512 | generated/1677 Generated |
9x&DoubleLZ'日é🎉#
|
22 B | |
| 006513 | generated/1678 Generated |
f∬🎉<日
|
14 B | |
| 006514 | generated/1679 Generated |
=9-7Aé-&RightTriangle
|
43 B | |
| 006515 | generated/1680 Generated |
␊묡⥹≨︀"н=␍x𝒞f&
|
51 B | |
| 006516 | generated/1681 Generated |
€⟨U+FFFF⟩ €&plu🎉&ũg
|
60 B | |
| 006518 | generated/1683 Generated |
&d&�x�&0&0⟺⫋︀
|
65 B | |
| 006519 | generated/1684 Generated |
日-Џ⇁#xЕ&lsim77
|
52 B | |
| 006520 | generated/1685 Generated |
…&BumpgŸxa⟨U+00A0⟩=𥓗g␊f
|
45 B | |
| 006522 | generated/1687 Generated |
Ϝ"Ü�&frac45��xé
|
61 B | |
| 006523 | generated/1688 Generated |
⫅̸Ŋ↿≙x#
|
42 B | |
| 006526 | generated/1691 Generated |
g� � &nrtr⟨U+00A0⟩ ␀⟹Z<⊪
|
61 B | |
| 006527 | generated/1692 Generated |
␉-;␊&Lo#é-␊x¶llel 🎉
|
49 B | |
| 006528 | generated/1693 Generated |
' =Z⟨U+00A0⟩=� &straightepsi>€ '
|
43 B | |
| 006530 | generated/1695 Generated |
¬inv⇀;⋂&ar𝛇⟨U+00A0⟩ ⤎&gap&⟶#9
|
106 B | |
| 006531 | generated/1696 Generated |
ℏ&␉&TH
|
23 B | |
| 006532 | generated/1697 Generated |
'&st日a;𝓂x
|
16 B | |
| 006534 | generated/1699 Generated |
x&supl𰓀g␍F;&G7&Fg🎉&aleph�g
|
59 B | |
| 006535 | generated/1700 Generated |
&Om=7Ax𐘃Ÿx␊ Ω⥽&box
|
43 B | |
| 006537 | generated/1702 Generated |
&Gc€␀⟨U+10FFFF⟩ &usc� 𝕦≼f&
|
54 B | |
| 006539 | generated/1704 Generated |
🎉Ax=␊x=>f♭"�=⟨U+FFFF⟩x
|
50 B | |
| 006540 | generated/1705 Generated |
�Ÿ 7g𝔓⟨U+FFFF⟩ 日&i€�_&tria#&vs
|
69 B | |
| 006541 | generated/1706 Generated |
␉⊲⟨U+10FFFF⟩x&beta>é'⁂g;f� &Iscr␍ 𝔟
|
76 B | |
| 006542 | generated/1707 Generated |
x⟨U+FFFF⟩&bigsqcu0␊&nvlAr;␊&nacut9&i-﵊é>
|
48 B | |
| 006543 | generated/1708 Generated |
a␊&nge␉<🎉'ℑZ�␊<do
|
43 B | |
| 006544 | generated/1709 Generated |
Ÿ x∉⟨U+10FFFF⟩x#🎉0⊋<&g
|
57 B | |
| 006545 | generated/1710 Generated |
x∅é ␉&V€&-␉=
|
52 B | |
| 006546 | generated/1711 Generated |
;&xnis␊ ␉-F"&Ubre𮣫g7<␊xé…
|
48 B | |
| 006547 | generated/1712 Generated |
�ç& ⟨U+10FFFF⟩
|
27 B | |
| 006549 | generated/1714 Generated |
=&sacut日⩺;… &oeli␊� ␊⩈⟨U+10FFFF⟩&Uc
|
83 B | |
| 006550 | generated/1715 Generated |
&L=&nsuc
|
8 B | |
| 006552 | generated/1717 Generated |
␊<␍g⫋𱀸✠F"
|
47 B | |
| 006555 | generated/1720 Generated |
�𝓆
|
23 B | |
| 006557 | generated/1722 Generated |
g¸9�
|
27 B | |
| 006558 | generated/1723 Generated |
🎉␊&right&rs
|
14 B | |
| 006560 | generated/1725 Generated |
=g␀=ϰ7&Uu<imes<
|
51 B | |
| 006561 | generated/1726 Generated |
&H0␊ Ï␀�&G&=7
|
29 B | |
| 006562 | generated/1727 Generated |
⟨U+2061⟩g␉x
|
37 B | |
| 006563 | generated/1728 Generated |
f∧Z&i"🎉
|
16 B | |
| 006564 | generated/1729 Generated |
"&Nof€<&Nacu日≎<日τZ⟨U+10FFFF⟩"7
|
57 B | |
| 006565 | generated/1730 Generated |
g&B⟨U+10FFFF⟩€a&approxeq&dow
|
47 B | |
| 006566 | generated/1731 Generated |
&m�9␉x日ℰ >g"⇃
|
63 B | |
| 006569 | generated/1734 Generated |
&COPgŸx&ddaf日␊␊␍-&o&vAr🎉
|
55 B | |
| 006570 | generated/1735 Generated |
Z-&rF&inf&ropl
|
14 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