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 |
|---|---|---|---|---|
| 001600 | html5lib/namedEntities/1193 html5lib-tests |
ℤ
|
6 B | |
| 001601 | html5lib/namedEntities/1194 html5lib-tests |
&Zscr
|
5 B | |
| 001602 | html5lib/namedEntities/1195 html5lib-tests |
𝒵
|
6 B | |
| 001603 | html5lib/namedEntities/1196 html5lib-tests |
á
|
7 B | |
| 001604 | html5lib/namedEntities/1197 html5lib-tests |
á
|
8 B | |
| 001605 | html5lib/namedEntities/1198 html5lib-tests |
&abreve
|
7 B | |
| 001606 | html5lib/namedEntities/1199 html5lib-tests |
ă
|
8 B | |
| 001607 | html5lib/namedEntities/1200 html5lib-tests |
&ac
|
3 B | |
| 001608 | html5lib/namedEntities/1201 html5lib-tests |
∾
|
4 B | |
| 001609 | html5lib/namedEntities/1202 html5lib-tests |
&acE
|
4 B | |
| 001610 | html5lib/namedEntities/1203 html5lib-tests |
∾̳
|
5 B | |
| 001611 | html5lib/namedEntities/1204 html5lib-tests |
&acd
|
4 B | |
| 001612 | html5lib/namedEntities/1205 html5lib-tests |
∿
|
5 B | |
| 001613 | html5lib/namedEntities/1206 html5lib-tests |
â
|
6 B | |
| 001614 | html5lib/namedEntities/1207 html5lib-tests |
â
|
7 B | |
| 001615 | html5lib/namedEntities/1208 html5lib-tests |
´
|
6 B | |
| 001616 | html5lib/namedEntities/1209 html5lib-tests |
´
|
7 B | |
| 001617 | html5lib/namedEntities/1210 html5lib-tests |
&acy
|
4 B | |
| 001618 | html5lib/namedEntities/1211 html5lib-tests |
а
|
5 B | |
| 001619 | html5lib/namedEntities/1212 html5lib-tests |
æ
|
6 B | |
| 001620 | html5lib/namedEntities/1213 html5lib-tests |
æ
|
7 B | |
| 001621 | html5lib/namedEntities/1214 html5lib-tests |
&af
|
3 B | |
| 001622 | html5lib/namedEntities/1215 html5lib-tests |
⟨U+2061⟩
|
4 B | |
| 001623 | html5lib/namedEntities/1216 html5lib-tests |
&afr
|
4 B | |
| 001624 | html5lib/namedEntities/1217 html5lib-tests |
𝔞
|
5 B | |
| 001625 | html5lib/namedEntities/1218 html5lib-tests |
à
|
7 B | |
| 001626 | html5lib/namedEntities/1219 html5lib-tests |
à
|
8 B | |
| 001627 | html5lib/namedEntities/1220 html5lib-tests |
&alefsym
|
8 B | |
| 001628 | html5lib/namedEntities/1221 html5lib-tests |
ℵ
|
9 B | |
| 001629 | html5lib/namedEntities/1222 html5lib-tests |
&aleph
|
6 B | |
| 001630 | html5lib/namedEntities/1223 html5lib-tests |
ℵ
|
7 B | |
| 001631 | html5lib/namedEntities/1224 html5lib-tests |
&alpha
|
6 B | |
| 001632 | html5lib/namedEntities/1225 html5lib-tests |
α
|
7 B | |
| 001633 | html5lib/namedEntities/1226 html5lib-tests |
&amacr
|
6 B | |
| 001634 | html5lib/namedEntities/1227 html5lib-tests |
ā
|
7 B | |
| 001635 | html5lib/namedEntities/1228 html5lib-tests |
&amalg
|
6 B | |
| 001636 | html5lib/namedEntities/1229 html5lib-tests |
⨿
|
7 B | |
| 001637 | html5lib/namedEntities/1230 html5lib-tests |
&
|
4 B | |
| 001638 | html5lib/namedEntities/1231 html5lib-tests |
&
|
5 B | |
| 001639 | html5lib/namedEntities/1232 html5lib-tests |
&and
|
4 B | |
| 001640 | html5lib/namedEntities/1233 html5lib-tests |
∧
|
5 B | |
| 001641 | html5lib/namedEntities/1234 html5lib-tests |
&andand
|
7 B | |
| 001642 | html5lib/namedEntities/1235 html5lib-tests |
⩕
|
8 B | |
| 001643 | html5lib/namedEntities/1236 html5lib-tests |
&andd
|
5 B | |
| 001644 | html5lib/namedEntities/1237 html5lib-tests |
⩜
|
6 B | |
| 001645 | html5lib/namedEntities/1238 html5lib-tests |
&andslope
|
9 B | |
| 001646 | html5lib/namedEntities/1239 html5lib-tests |
⩘
|
10 B | |
| 001647 | html5lib/namedEntities/1240 html5lib-tests |
&andv
|
5 B | |
| 001648 | html5lib/namedEntities/1241 html5lib-tests |
⩚
|
6 B | |
| 001649 | html5lib/namedEntities/1242 html5lib-tests |
&ang
|
4 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