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 |
|---|---|---|---|---|
| 001700 | html5lib/namedEntities/1293 html5lib-tests |
'
|
6 B | |
| 001701 | html5lib/namedEntities/1294 html5lib-tests |
&approx
|
7 B | |
| 001702 | html5lib/namedEntities/1295 html5lib-tests |
≈
|
8 B | |
| 001703 | html5lib/namedEntities/1296 html5lib-tests |
&approxeq
|
9 B | |
| 001704 | html5lib/namedEntities/1297 html5lib-tests |
≊
|
10 B | |
| 001705 | html5lib/namedEntities/1298 html5lib-tests |
å
|
6 B | |
| 001706 | html5lib/namedEntities/1299 html5lib-tests |
å
|
7 B | |
| 001707 | html5lib/namedEntities/1300 html5lib-tests |
&ascr
|
5 B | |
| 001708 | html5lib/namedEntities/1301 html5lib-tests |
𝒶
|
6 B | |
| 001709 | html5lib/namedEntities/1302 html5lib-tests |
&ast
|
4 B | |
| 001710 | html5lib/namedEntities/1303 html5lib-tests |
*
|
5 B | |
| 001711 | html5lib/namedEntities/1304 html5lib-tests |
&asymp
|
6 B | |
| 001712 | html5lib/namedEntities/1305 html5lib-tests |
≈
|
7 B | |
| 001713 | html5lib/namedEntities/1306 html5lib-tests |
&asympeq
|
8 B | |
| 001714 | html5lib/namedEntities/1307 html5lib-tests |
≍
|
9 B | |
| 001715 | html5lib/namedEntities/1308 html5lib-tests |
ã
|
7 B | |
| 001716 | html5lib/namedEntities/1309 html5lib-tests |
ã
|
8 B | |
| 001717 | html5lib/namedEntities/1310 html5lib-tests |
ä
|
5 B | |
| 001718 | html5lib/namedEntities/1311 html5lib-tests |
ä
|
6 B | |
| 001719 | html5lib/namedEntities/1312 html5lib-tests |
&awconint
|
9 B | |
| 001720 | html5lib/namedEntities/1313 html5lib-tests |
∳
|
10 B | |
| 001721 | html5lib/namedEntities/1314 html5lib-tests |
&awint
|
6 B | |
| 001722 | html5lib/namedEntities/1315 html5lib-tests |
⨑
|
7 B | |
| 001723 | html5lib/namedEntities/1316 html5lib-tests |
&bNot
|
5 B | |
| 001724 | html5lib/namedEntities/1317 html5lib-tests |
⫭
|
6 B | |
| 001725 | html5lib/namedEntities/1318 html5lib-tests |
&backcong
|
9 B | |
| 001726 | html5lib/namedEntities/1319 html5lib-tests |
≌
|
10 B | |
| 001727 | html5lib/namedEntities/1320 html5lib-tests |
&backepsilon
|
12 B | |
| 001728 | html5lib/namedEntities/1321 html5lib-tests |
϶
|
13 B | |
| 001729 | html5lib/namedEntities/1322 html5lib-tests |
&backprime
|
10 B | |
| 001730 | html5lib/namedEntities/1323 html5lib-tests |
‵
|
11 B | |
| 001731 | html5lib/namedEntities/1324 html5lib-tests |
&backsim
|
8 B | |
| 001732 | html5lib/namedEntities/1325 html5lib-tests |
∽
|
9 B | |
| 001733 | html5lib/namedEntities/1326 html5lib-tests |
&backsimeq
|
10 B | |
| 001734 | html5lib/namedEntities/1327 html5lib-tests |
⋍
|
11 B | |
| 001735 | html5lib/namedEntities/1328 html5lib-tests |
&barvee
|
7 B | |
| 001736 | html5lib/namedEntities/1329 html5lib-tests |
⊽
|
8 B | |
| 001737 | html5lib/namedEntities/1330 html5lib-tests |
&barwed
|
7 B | |
| 001738 | html5lib/namedEntities/1331 html5lib-tests |
⌅
|
8 B | |
| 001739 | html5lib/namedEntities/1332 html5lib-tests |
&barwedge
|
9 B | |
| 001740 | html5lib/namedEntities/1333 html5lib-tests |
⌅
|
10 B | |
| 001741 | html5lib/namedEntities/1334 html5lib-tests |
&bbrk
|
5 B | |
| 001742 | html5lib/namedEntities/1335 html5lib-tests |
⎵
|
6 B | |
| 001743 | html5lib/namedEntities/1336 html5lib-tests |
&bbrktbrk
|
9 B | |
| 001744 | html5lib/namedEntities/1337 html5lib-tests |
⎶
|
10 B | |
| 001745 | html5lib/namedEntities/1338 html5lib-tests |
&bcong
|
6 B | |
| 001746 | html5lib/namedEntities/1339 html5lib-tests |
≌
|
7 B | |
| 001747 | html5lib/namedEntities/1340 html5lib-tests |
&bcy
|
4 B | |
| 001748 | html5lib/namedEntities/1341 html5lib-tests |
б
|
5 B | |
| 001749 | html5lib/namedEntities/1342 html5lib-tests |
&bdquo
|
6 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