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 |
|---|---|---|---|---|
| 001950 | html5lib/namedEntities/1543 html5lib-tests |
≏
|
7 B | |
| 001951 | html5lib/namedEntities/1544 html5lib-tests |
&bumpeq
|
7 B | |
| 001952 | html5lib/namedEntities/1545 html5lib-tests |
≏
|
8 B | |
| 001953 | html5lib/namedEntities/1546 html5lib-tests |
&cacute
|
7 B | |
| 001954 | html5lib/namedEntities/1547 html5lib-tests |
ć
|
8 B | |
| 001955 | html5lib/namedEntities/1548 html5lib-tests |
&cap
|
4 B | |
| 001956 | html5lib/namedEntities/1549 html5lib-tests |
∩
|
5 B | |
| 001957 | html5lib/namedEntities/1550 html5lib-tests |
&capand
|
7 B | |
| 001958 | html5lib/namedEntities/1551 html5lib-tests |
⩄
|
8 B | |
| 001959 | html5lib/namedEntities/1552 html5lib-tests |
&capbrcup
|
9 B | |
| 001960 | html5lib/namedEntities/1553 html5lib-tests |
⩉
|
10 B | |
| 001961 | html5lib/namedEntities/1554 html5lib-tests |
&capcap
|
7 B | |
| 001962 | html5lib/namedEntities/1555 html5lib-tests |
⩋
|
8 B | |
| 001963 | html5lib/namedEntities/1556 html5lib-tests |
&capcup
|
7 B | |
| 001964 | html5lib/namedEntities/1557 html5lib-tests |
⩇
|
8 B | |
| 001965 | html5lib/namedEntities/1558 html5lib-tests |
&capdot
|
7 B | |
| 001966 | html5lib/namedEntities/1559 html5lib-tests |
⩀
|
8 B | |
| 001967 | html5lib/namedEntities/1560 html5lib-tests |
&caps
|
5 B | |
| 001968 | html5lib/namedEntities/1561 html5lib-tests |
∩︀
|
6 B | |
| 001969 | html5lib/namedEntities/1562 html5lib-tests |
&caret
|
6 B | |
| 001970 | html5lib/namedEntities/1563 html5lib-tests |
⁁
|
7 B | |
| 001971 | html5lib/namedEntities/1564 html5lib-tests |
&caron
|
6 B | |
| 001972 | html5lib/namedEntities/1565 html5lib-tests |
ˇ
|
7 B | |
| 001973 | html5lib/namedEntities/1566 html5lib-tests |
&ccaps
|
6 B | |
| 001974 | html5lib/namedEntities/1567 html5lib-tests |
⩍
|
7 B | |
| 001975 | html5lib/namedEntities/1568 html5lib-tests |
&ccaron
|
7 B | |
| 001976 | html5lib/namedEntities/1569 html5lib-tests |
č
|
8 B | |
| 001977 | html5lib/namedEntities/1570 html5lib-tests |
ç
|
7 B | |
| 001978 | html5lib/namedEntities/1571 html5lib-tests |
ç
|
8 B | |
| 001979 | html5lib/namedEntities/1572 html5lib-tests |
&ccirc
|
6 B | |
| 001980 | html5lib/namedEntities/1573 html5lib-tests |
ĉ
|
7 B | |
| 001981 | html5lib/namedEntities/1574 html5lib-tests |
&ccups
|
6 B | |
| 001982 | html5lib/namedEntities/1575 html5lib-tests |
⩌
|
7 B | |
| 001983 | html5lib/namedEntities/1576 html5lib-tests |
&ccupssm
|
8 B | |
| 001984 | html5lib/namedEntities/1577 html5lib-tests |
⩐
|
9 B | |
| 001985 | html5lib/namedEntities/1578 html5lib-tests |
&cdot
|
5 B | |
| 001986 | html5lib/namedEntities/1579 html5lib-tests |
ċ
|
6 B | |
| 001987 | html5lib/namedEntities/1580 html5lib-tests |
¸
|
6 B | |
| 001988 | html5lib/namedEntities/1581 html5lib-tests |
¸
|
7 B | |
| 001989 | html5lib/namedEntities/1582 html5lib-tests |
&cemptyv
|
8 B | |
| 001990 | html5lib/namedEntities/1583 html5lib-tests |
⦲
|
9 B | |
| 001991 | html5lib/namedEntities/1584 html5lib-tests |
¢
|
5 B | |
| 001992 | html5lib/namedEntities/1585 html5lib-tests |
¢
|
6 B | |
| 001993 | html5lib/namedEntities/1586 html5lib-tests |
·
|
11 B | |
| 001994 | html5lib/namedEntities/1587 html5lib-tests |
&cfr
|
4 B | |
| 001995 | html5lib/namedEntities/1588 html5lib-tests |
𝔠
|
5 B | |
| 001996 | html5lib/namedEntities/1589 html5lib-tests |
&chcy
|
5 B | |
| 001997 | html5lib/namedEntities/1590 html5lib-tests |
ч
|
6 B | |
| 001998 | html5lib/namedEntities/1591 html5lib-tests |
&check
|
6 B | |
| 001999 | html5lib/namedEntities/1592 html5lib-tests |
✓
|
7 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