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 |
|---|---|---|---|---|
| 003454 | html5lib/namedEntities/3047 html5lib-tests |
⊚
|
6 B | |
| 003455 | html5lib/namedEntities/3048 html5lib-tests |
ô
|
6 B | |
| 003456 | html5lib/namedEntities/3049 html5lib-tests |
ô
|
7 B | |
| 003457 | html5lib/namedEntities/3050 html5lib-tests |
&ocy
|
4 B | |
| 003458 | html5lib/namedEntities/3051 html5lib-tests |
о
|
5 B | |
| 003459 | html5lib/namedEntities/3052 html5lib-tests |
&odash
|
6 B | |
| 003460 | html5lib/namedEntities/3053 html5lib-tests |
⊝
|
7 B | |
| 003461 | html5lib/namedEntities/3054 html5lib-tests |
&odblac
|
7 B | |
| 003462 | html5lib/namedEntities/3055 html5lib-tests |
ő
|
8 B | |
| 003463 | html5lib/namedEntities/3056 html5lib-tests |
&odiv
|
5 B | |
| 003464 | html5lib/namedEntities/3057 html5lib-tests |
⨸
|
6 B | |
| 003465 | html5lib/namedEntities/3058 html5lib-tests |
&odot
|
5 B | |
| 003466 | html5lib/namedEntities/3059 html5lib-tests |
⊙
|
6 B | |
| 003467 | html5lib/namedEntities/3060 html5lib-tests |
&odsold
|
7 B | |
| 003468 | html5lib/namedEntities/3061 html5lib-tests |
⦼
|
8 B | |
| 003469 | html5lib/namedEntities/3062 html5lib-tests |
&oelig
|
6 B | |
| 003470 | html5lib/namedEntities/3063 html5lib-tests |
œ
|
7 B | |
| 003471 | html5lib/namedEntities/3064 html5lib-tests |
&ofcir
|
6 B | |
| 003472 | html5lib/namedEntities/3065 html5lib-tests |
⦿
|
7 B | |
| 003473 | html5lib/namedEntities/3066 html5lib-tests |
&ofr
|
4 B | |
| 003474 | html5lib/namedEntities/3067 html5lib-tests |
𝔬
|
5 B | |
| 003475 | html5lib/namedEntities/3068 html5lib-tests |
&ogon
|
5 B | |
| 003476 | html5lib/namedEntities/3069 html5lib-tests |
˛
|
6 B | |
| 003477 | html5lib/namedEntities/3070 html5lib-tests |
ò
|
7 B | |
| 003478 | html5lib/namedEntities/3071 html5lib-tests |
ò
|
8 B | |
| 003479 | html5lib/namedEntities/3072 html5lib-tests |
&ogt
|
4 B | |
| 003480 | html5lib/namedEntities/3073 html5lib-tests |
⧁
|
5 B | |
| 003481 | html5lib/namedEntities/3074 html5lib-tests |
&ohbar
|
6 B | |
| 003482 | html5lib/namedEntities/3075 html5lib-tests |
⦵
|
7 B | |
| 003483 | html5lib/namedEntities/3076 html5lib-tests |
&ohm
|
4 B | |
| 003484 | html5lib/namedEntities/3077 html5lib-tests |
Ω
|
5 B | |
| 003485 | html5lib/namedEntities/3078 html5lib-tests |
&oint
|
5 B | |
| 003486 | html5lib/namedEntities/3079 html5lib-tests |
∮
|
6 B | |
| 003487 | html5lib/namedEntities/3080 html5lib-tests |
&olarr
|
6 B | |
| 003488 | html5lib/namedEntities/3081 html5lib-tests |
↺
|
7 B | |
| 003489 | html5lib/namedEntities/3082 html5lib-tests |
&olcir
|
6 B | |
| 003490 | html5lib/namedEntities/3083 html5lib-tests |
⦾
|
7 B | |
| 003491 | html5lib/namedEntities/3084 html5lib-tests |
&olcross
|
8 B | |
| 003492 | html5lib/namedEntities/3085 html5lib-tests |
⦻
|
9 B | |
| 003493 | html5lib/namedEntities/3086 html5lib-tests |
&oline
|
6 B | |
| 003494 | html5lib/namedEntities/3087 html5lib-tests |
‾
|
7 B | |
| 003495 | html5lib/namedEntities/3088 html5lib-tests |
&olt
|
4 B | |
| 003496 | html5lib/namedEntities/3089 html5lib-tests |
⧀
|
5 B | |
| 003497 | html5lib/namedEntities/3090 html5lib-tests |
&omacr
|
6 B | |
| 003498 | html5lib/namedEntities/3091 html5lib-tests |
ō
|
7 B | |
| 003499 | html5lib/namedEntities/3092 html5lib-tests |
&omega
|
6 B | |
| 003500 | html5lib/namedEntities/3093 html5lib-tests |
ω
|
7 B | |
| 003501 | html5lib/namedEntities/3094 html5lib-tests |
&omicron
|
8 B | |
| 003502 | html5lib/namedEntities/3095 html5lib-tests |
ο
|
9 B | |
| 003503 | html5lib/namedEntities/3096 html5lib-tests |
&omid
|
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