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 |
|---|---|---|---|---|
| 000650 | html5lib/namedEntities/0243 html5lib-tests |
É
|
8 B | |
| 000651 | html5lib/namedEntities/0244 html5lib-tests |
&Ecaron
|
7 B | |
| 000652 | html5lib/namedEntities/0245 html5lib-tests |
Ě
|
8 B | |
| 000653 | html5lib/namedEntities/0246 html5lib-tests |
Ê
|
6 B | |
| 000654 | html5lib/namedEntities/0247 html5lib-tests |
Ê
|
7 B | |
| 000655 | html5lib/namedEntities/0248 html5lib-tests |
&Ecy
|
4 B | |
| 000656 | html5lib/namedEntities/0249 html5lib-tests |
Э
|
5 B | |
| 000657 | html5lib/namedEntities/0250 html5lib-tests |
&Edot
|
5 B | |
| 000658 | html5lib/namedEntities/0251 html5lib-tests |
Ė
|
6 B | |
| 000659 | html5lib/namedEntities/0252 html5lib-tests |
&Efr
|
4 B | |
| 000660 | html5lib/namedEntities/0253 html5lib-tests |
𝔈
|
5 B | |
| 000661 | html5lib/namedEntities/0254 html5lib-tests |
È
|
7 B | |
| 000662 | html5lib/namedEntities/0255 html5lib-tests |
È
|
8 B | |
| 000663 | html5lib/namedEntities/0256 html5lib-tests |
&Element
|
8 B | |
| 000664 | html5lib/namedEntities/0257 html5lib-tests |
∈
|
9 B | |
| 000665 | html5lib/namedEntities/0258 html5lib-tests |
&Emacr
|
6 B | |
| 000666 | html5lib/namedEntities/0259 html5lib-tests |
Ē
|
7 B | |
| 000667 | html5lib/namedEntities/0260 html5lib-tests |
&EmptySmallSquare
|
17 B | |
| 000668 | html5lib/namedEntities/0261 html5lib-tests |
◻
|
18 B | |
| 000669 | html5lib/namedEntities/0262 html5lib-tests |
&EmptyVerySmallSquare
|
21 B | |
| 000670 | html5lib/namedEntities/0263 html5lib-tests |
▫
|
22 B | |
| 000671 | html5lib/namedEntities/0264 html5lib-tests |
&Eogon
|
6 B | |
| 000672 | html5lib/namedEntities/0265 html5lib-tests |
Ę
|
7 B | |
| 000673 | html5lib/namedEntities/0266 html5lib-tests |
&Eopf
|
5 B | |
| 000674 | html5lib/namedEntities/0267 html5lib-tests |
𝔼
|
6 B | |
| 000675 | html5lib/namedEntities/0268 html5lib-tests |
&Epsilon
|
8 B | |
| 000676 | html5lib/namedEntities/0269 html5lib-tests |
Ε
|
9 B | |
| 000677 | html5lib/namedEntities/0270 html5lib-tests |
&Equal
|
6 B | |
| 000678 | html5lib/namedEntities/0271 html5lib-tests |
⩵
|
7 B | |
| 000679 | html5lib/namedEntities/0272 html5lib-tests |
&EqualTilde
|
11 B | |
| 000680 | html5lib/namedEntities/0273 html5lib-tests |
≂
|
12 B | |
| 000681 | html5lib/namedEntities/0274 html5lib-tests |
&Equilibrium
|
12 B | |
| 000682 | html5lib/namedEntities/0275 html5lib-tests |
⇌
|
13 B | |
| 000683 | html5lib/namedEntities/0276 html5lib-tests |
&Escr
|
5 B | |
| 000684 | html5lib/namedEntities/0277 html5lib-tests |
ℰ
|
6 B | |
| 000685 | html5lib/namedEntities/0278 html5lib-tests |
&Esim
|
5 B | |
| 000686 | html5lib/namedEntities/0279 html5lib-tests |
⩳
|
6 B | |
| 000687 | html5lib/namedEntities/0280 html5lib-tests |
&Eta
|
4 B | |
| 000688 | html5lib/namedEntities/0281 html5lib-tests |
Η
|
5 B | |
| 000689 | html5lib/namedEntities/0282 html5lib-tests |
Ë
|
5 B | |
| 000690 | html5lib/namedEntities/0283 html5lib-tests |
Ë
|
6 B | |
| 000691 | html5lib/namedEntities/0284 html5lib-tests |
&Exists
|
7 B | |
| 000692 | html5lib/namedEntities/0285 html5lib-tests |
∃
|
8 B | |
| 000693 | html5lib/namedEntities/0286 html5lib-tests |
&ExponentialE
|
13 B | |
| 000694 | html5lib/namedEntities/0287 html5lib-tests |
ⅇ
|
14 B | |
| 000695 | html5lib/namedEntities/0288 html5lib-tests |
&Fcy
|
4 B | |
| 000696 | html5lib/namedEntities/0289 html5lib-tests |
Ф
|
5 B | |
| 000697 | html5lib/namedEntities/0290 html5lib-tests |
&Ffr
|
4 B | |
| 000698 | html5lib/namedEntities/0291 html5lib-tests |
𝔉
|
5 B | |
| 000699 | html5lib/namedEntities/0292 html5lib-tests |
&FilledSmallSquare
|
18 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