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 |
|---|---|---|---|---|
| 002250 | html5lib/namedEntities/1843 html5lib-tests |
&dtdot
|
6 B | |
| 002251 | html5lib/namedEntities/1844 html5lib-tests |
⋱
|
7 B | |
| 002252 | html5lib/namedEntities/1845 html5lib-tests |
&dtri
|
5 B | |
| 002253 | html5lib/namedEntities/1846 html5lib-tests |
▿
|
6 B | |
| 002254 | html5lib/namedEntities/1847 html5lib-tests |
&dtrif
|
6 B | |
| 002255 | html5lib/namedEntities/1848 html5lib-tests |
▾
|
7 B | |
| 002256 | html5lib/namedEntities/1849 html5lib-tests |
&duarr
|
6 B | |
| 002257 | html5lib/namedEntities/1850 html5lib-tests |
⇵
|
7 B | |
| 002258 | html5lib/namedEntities/1851 html5lib-tests |
&duhar
|
6 B | |
| 002259 | html5lib/namedEntities/1852 html5lib-tests |
⥯
|
7 B | |
| 002260 | html5lib/namedEntities/1853 html5lib-tests |
&dwangle
|
8 B | |
| 002261 | html5lib/namedEntities/1854 html5lib-tests |
⦦
|
9 B | |
| 002262 | html5lib/namedEntities/1855 html5lib-tests |
&dzcy
|
5 B | |
| 002263 | html5lib/namedEntities/1856 html5lib-tests |
џ
|
6 B | |
| 002264 | html5lib/namedEntities/1857 html5lib-tests |
&dzigrarr
|
9 B | |
| 002265 | html5lib/namedEntities/1858 html5lib-tests |
⟿
|
10 B | |
| 002266 | html5lib/namedEntities/1859 html5lib-tests |
&eDDot
|
6 B | |
| 002267 | html5lib/namedEntities/1860 html5lib-tests |
⩷
|
7 B | |
| 002268 | html5lib/namedEntities/1861 html5lib-tests |
&eDot
|
5 B | |
| 002269 | html5lib/namedEntities/1862 html5lib-tests |
≑
|
6 B | |
| 002270 | html5lib/namedEntities/1863 html5lib-tests |
é
|
7 B | |
| 002271 | html5lib/namedEntities/1864 html5lib-tests |
é
|
8 B | |
| 002272 | html5lib/namedEntities/1865 html5lib-tests |
&easter
|
7 B | |
| 002273 | html5lib/namedEntities/1866 html5lib-tests |
⩮
|
8 B | |
| 002274 | html5lib/namedEntities/1867 html5lib-tests |
&ecaron
|
7 B | |
| 002275 | html5lib/namedEntities/1868 html5lib-tests |
ě
|
8 B | |
| 002276 | html5lib/namedEntities/1869 html5lib-tests |
&ecir
|
5 B | |
| 002277 | html5lib/namedEntities/1870 html5lib-tests |
≖
|
6 B | |
| 002278 | html5lib/namedEntities/1871 html5lib-tests |
ê
|
6 B | |
| 002279 | html5lib/namedEntities/1872 html5lib-tests |
ê
|
7 B | |
| 002280 | html5lib/namedEntities/1873 html5lib-tests |
&ecolon
|
7 B | |
| 002281 | html5lib/namedEntities/1874 html5lib-tests |
≕
|
8 B | |
| 002282 | html5lib/namedEntities/1875 html5lib-tests |
&ecy
|
4 B | |
| 002283 | html5lib/namedEntities/1876 html5lib-tests |
э
|
5 B | |
| 002284 | html5lib/namedEntities/1877 html5lib-tests |
&edot
|
5 B | |
| 002285 | html5lib/namedEntities/1878 html5lib-tests |
ė
|
6 B | |
| 002286 | html5lib/namedEntities/1879 html5lib-tests |
&ee
|
3 B | |
| 002287 | html5lib/namedEntities/1880 html5lib-tests |
ⅇ
|
4 B | |
| 002288 | html5lib/namedEntities/1881 html5lib-tests |
&efDot
|
6 B | |
| 002289 | html5lib/namedEntities/1882 html5lib-tests |
≒
|
7 B | |
| 002290 | html5lib/namedEntities/1883 html5lib-tests |
&efr
|
4 B | |
| 002291 | html5lib/namedEntities/1884 html5lib-tests |
𝔢
|
5 B | |
| 002292 | html5lib/namedEntities/1885 html5lib-tests |
&eg
|
3 B | |
| 002293 | html5lib/namedEntities/1886 html5lib-tests |
⪚
|
4 B | |
| 002294 | html5lib/namedEntities/1887 html5lib-tests |
è
|
7 B | |
| 002295 | html5lib/namedEntities/1888 html5lib-tests |
è
|
8 B | |
| 002296 | html5lib/namedEntities/1889 html5lib-tests |
&egs
|
4 B | |
| 002297 | html5lib/namedEntities/1890 html5lib-tests |
⪖
|
5 B | |
| 002298 | html5lib/namedEntities/1891 html5lib-tests |
&egsdot
|
7 B | |
| 002299 | html5lib/namedEntities/1892 html5lib-tests |
⪘
|
8 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