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
5,931 of 6,835 cases
| Case | Name | Expected | Note | Size |
|---|---|---|---|---|
| 002904 | html5lib/namedEntities/2497 html5lib-tests |
&lesseqqgtr
|
11 B | |
| 002905 | html5lib/namedEntities/2498 html5lib-tests |
⪋
|
12 B | |
| 002906 | html5lib/namedEntities/2499 html5lib-tests |
&lessgtr
|
8 B | |
| 002907 | html5lib/namedEntities/2500 html5lib-tests |
≶
|
9 B | |
| 002908 | html5lib/namedEntities/2501 html5lib-tests |
&lesssim
|
8 B | |
| 002909 | html5lib/namedEntities/2502 html5lib-tests |
≲
|
9 B | |
| 002910 | html5lib/namedEntities/2503 html5lib-tests |
&lfisht
|
7 B | |
| 002911 | html5lib/namedEntities/2504 html5lib-tests |
⥼
|
8 B | |
| 002912 | html5lib/namedEntities/2505 html5lib-tests |
&lfloor
|
7 B | |
| 002913 | html5lib/namedEntities/2506 html5lib-tests |
⌊
|
8 B | |
| 002914 | html5lib/namedEntities/2507 html5lib-tests |
&lfr
|
4 B | |
| 002915 | html5lib/namedEntities/2508 html5lib-tests |
𝔩
|
5 B | |
| 002916 | html5lib/namedEntities/2509 html5lib-tests |
&lg
|
3 B | |
| 002917 | html5lib/namedEntities/2510 html5lib-tests |
≶
|
4 B | |
| 002918 | html5lib/namedEntities/2511 html5lib-tests |
&lgE
|
4 B | |
| 002919 | html5lib/namedEntities/2512 html5lib-tests |
⪑
|
5 B | |
| 002920 | html5lib/namedEntities/2513 html5lib-tests |
&lhard
|
6 B | |
| 002921 | html5lib/namedEntities/2514 html5lib-tests |
↽
|
7 B | |
| 002922 | html5lib/namedEntities/2515 html5lib-tests |
&lharu
|
6 B | |
| 002923 | html5lib/namedEntities/2516 html5lib-tests |
↼
|
7 B | |
| 002924 | html5lib/namedEntities/2517 html5lib-tests |
&lharul
|
7 B | |
| 002925 | html5lib/namedEntities/2518 html5lib-tests |
⥪
|
8 B | |
| 002926 | html5lib/namedEntities/2519 html5lib-tests |
&lhblk
|
6 B | |
| 002927 | html5lib/namedEntities/2520 html5lib-tests |
▄
|
7 B | |
| 002928 | html5lib/namedEntities/2521 html5lib-tests |
&ljcy
|
5 B | |
| 002929 | html5lib/namedEntities/2522 html5lib-tests |
љ
|
6 B | |
| 002930 | html5lib/namedEntities/2523 html5lib-tests |
&ll
|
3 B | |
| 002931 | html5lib/namedEntities/2524 html5lib-tests |
≪
|
4 B | |
| 002932 | html5lib/namedEntities/2525 html5lib-tests |
&llarr
|
6 B | |
| 002933 | html5lib/namedEntities/2526 html5lib-tests |
⇇
|
7 B | |
| 002934 | html5lib/namedEntities/2527 html5lib-tests |
&llcorner
|
9 B | |
| 002935 | html5lib/namedEntities/2528 html5lib-tests |
⌞
|
10 B | |
| 002936 | html5lib/namedEntities/2529 html5lib-tests |
&llhard
|
7 B | |
| 002937 | html5lib/namedEntities/2530 html5lib-tests |
⥫
|
8 B | |
| 002938 | html5lib/namedEntities/2531 html5lib-tests |
&lltri
|
6 B | |
| 002939 | html5lib/namedEntities/2532 html5lib-tests |
◺
|
7 B | |
| 002940 | html5lib/namedEntities/2533 html5lib-tests |
&lmidot
|
7 B | |
| 002941 | html5lib/namedEntities/2534 html5lib-tests |
ŀ
|
8 B | |
| 002942 | html5lib/namedEntities/2535 html5lib-tests |
&lmoust
|
7 B | |
| 002943 | html5lib/namedEntities/2536 html5lib-tests |
⎰
|
8 B | |
| 002944 | html5lib/namedEntities/2537 html5lib-tests |
&lmoustache
|
11 B | |
| 002945 | html5lib/namedEntities/2538 html5lib-tests |
⎰
|
12 B | |
| 002946 | html5lib/namedEntities/2539 html5lib-tests |
&lnE
|
4 B | |
| 002947 | html5lib/namedEntities/2540 html5lib-tests |
≨
|
5 B | |
| 002948 | html5lib/namedEntities/2541 html5lib-tests |
&lnap
|
5 B | |
| 002949 | html5lib/namedEntities/2542 html5lib-tests |
⪉
|
6 B | |
| 002950 | html5lib/namedEntities/2543 html5lib-tests |
&lnapprox
|
9 B | |
| 002951 | html5lib/namedEntities/2544 html5lib-tests |
⪉
|
10 B | |
| 002952 | html5lib/namedEntities/2545 html5lib-tests |
&lne
|
4 B | |
| 002953 | html5lib/namedEntities/2546 html5lib-tests |
⪇
|
5 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