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 |
|---|---|---|---|---|
| 001000 | html5lib/namedEntities/0593 html5lib-tests |
Ņ
|
8 B | |
| 001001 | html5lib/namedEntities/0594 html5lib-tests |
&Ncy
|
4 B | |
| 001002 | html5lib/namedEntities/0595 html5lib-tests |
Н
|
5 B | |
| 001003 | html5lib/namedEntities/0596 html5lib-tests |
&NegativeMediumSpace
|
20 B | |
| 001004 | html5lib/namedEntities/0597 html5lib-tests |
⟨U+200B⟩
|
21 B | |
| 001005 | html5lib/namedEntities/0598 html5lib-tests |
&NegativeThickSpace
|
19 B | |
| 001006 | html5lib/namedEntities/0599 html5lib-tests |
⟨U+200B⟩
|
20 B | |
| 001007 | html5lib/namedEntities/0600 html5lib-tests |
&NegativeThinSpace
|
18 B | |
| 001008 | html5lib/namedEntities/0601 html5lib-tests |
⟨U+200B⟩
|
19 B | |
| 001009 | html5lib/namedEntities/0602 html5lib-tests |
&NegativeVeryThinSpace
|
22 B | |
| 001010 | html5lib/namedEntities/0603 html5lib-tests |
⟨U+200B⟩
|
23 B | |
| 001011 | html5lib/namedEntities/0604 html5lib-tests |
&NestedGreaterGreater
|
21 B | |
| 001012 | html5lib/namedEntities/0605 html5lib-tests |
≫
|
22 B | |
| 001013 | html5lib/namedEntities/0606 html5lib-tests |
&NestedLessLess
|
15 B | |
| 001014 | html5lib/namedEntities/0607 html5lib-tests |
≪
|
16 B | |
| 001015 | html5lib/namedEntities/0608 html5lib-tests |
&NewLine
|
8 B | |
| 001016 | html5lib/namedEntities/0609 html5lib-tests |
␊
|
9 B | |
| 001017 | html5lib/namedEntities/0610 html5lib-tests |
&Nfr
|
4 B | |
| 001018 | html5lib/namedEntities/0611 html5lib-tests |
𝔑
|
5 B | |
| 001019 | html5lib/namedEntities/0612 html5lib-tests |
&NoBreak
|
8 B | |
| 001020 | html5lib/namedEntities/0613 html5lib-tests |
⟨U+2060⟩
|
9 B | |
| 001021 | html5lib/namedEntities/0614 html5lib-tests |
&NonBreakingSpace
|
17 B | |
| 001022 | html5lib/namedEntities/0615 html5lib-tests |
⟨U+00A0⟩
|
18 B | |
| 001023 | html5lib/namedEntities/0616 html5lib-tests |
&Nopf
|
5 B | |
| 001024 | html5lib/namedEntities/0617 html5lib-tests |
ℕ
|
6 B | |
| 001025 | html5lib/namedEntities/0618 html5lib-tests |
&Not
|
4 B | |
| 001026 | html5lib/namedEntities/0619 html5lib-tests |
⫬
|
5 B | |
| 001027 | html5lib/namedEntities/0620 html5lib-tests |
&NotCongruent
|
13 B | |
| 001028 | html5lib/namedEntities/0621 html5lib-tests |
≢
|
14 B | |
| 001029 | html5lib/namedEntities/0622 html5lib-tests |
&NotCupCap
|
10 B | |
| 001030 | html5lib/namedEntities/0623 html5lib-tests |
≭
|
11 B | |
| 001031 | html5lib/namedEntities/0624 html5lib-tests |
&NotDoubleVerticalBar
|
21 B | |
| 001032 | html5lib/namedEntities/0625 html5lib-tests |
∦
|
22 B | |
| 001033 | html5lib/namedEntities/0626 html5lib-tests |
&NotElement
|
11 B | |
| 001034 | html5lib/namedEntities/0627 html5lib-tests |
∉
|
12 B | |
| 001035 | html5lib/namedEntities/0628 html5lib-tests |
&NotEqual
|
9 B | |
| 001036 | html5lib/namedEntities/0629 html5lib-tests |
≠
|
10 B | |
| 001037 | html5lib/namedEntities/0630 html5lib-tests |
&NotEqualTilde
|
14 B | |
| 001038 | html5lib/namedEntities/0631 html5lib-tests |
≂̸
|
15 B | |
| 001039 | html5lib/namedEntities/0632 html5lib-tests |
&NotExists
|
10 B | |
| 001040 | html5lib/namedEntities/0633 html5lib-tests |
∄
|
11 B | |
| 001041 | html5lib/namedEntities/0634 html5lib-tests |
&NotGreater
|
11 B | |
| 001042 | html5lib/namedEntities/0635 html5lib-tests |
≯
|
12 B | |
| 001043 | html5lib/namedEntities/0636 html5lib-tests |
&NotGreaterEqual
|
16 B | |
| 001044 | html5lib/namedEntities/0637 html5lib-tests |
≱
|
17 B | |
| 001045 | html5lib/namedEntities/0638 html5lib-tests |
&NotGreaterFullEqual
|
20 B | |
| 001046 | html5lib/namedEntities/0639 html5lib-tests |
≧̸
|
21 B | |
| 001047 | html5lib/namedEntities/0640 html5lib-tests |
&NotGreaterGreater
|
18 B | |
| 001048 | html5lib/namedEntities/0641 html5lib-tests |
≫̸
|
19 B | |
| 001049 | html5lib/namedEntities/0642 html5lib-tests |
&NotGreaterLess
|
15 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