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
82 of 6,835 cases
| Case | Name | Expected | Note | Size |
|---|---|---|---|---|
| 004635 | control-01-decimal Focused regression |
␁
|
4 B | |
| 004636 | control-01-hex Focused regression |
␁
|
5 B | |
| 004637 | control-02-decimal Focused regression |
␂
|
4 B | |
| 004638 | control-02-hex Focused regression |
␂
|
5 B | |
| 004639 | control-03-decimal Focused regression |
␃
|
4 B | |
| 004640 | control-03-hex Focused regression |
␃
|
5 B | |
| 004641 | control-04-decimal Focused regression |
␄
|
4 B | |
| 004642 | control-04-hex Focused regression |
␄
|
5 B | |
| 004643 | control-05-decimal Focused regression |
␅
|
4 B | |
| 004644 | control-05-hex Focused regression |
␅
|
5 B | |
| 004645 | control-06-decimal Focused regression |
␆
|
4 B | |
| 004646 | control-06-hex Focused regression |
␆
|
5 B | |
| 004647 | control-07-decimal Focused regression |
␇
|
4 B | |
| 004648 | control-07-hex Focused regression |
␇
|
5 B | |
| 004649 | control-08-decimal Focused regression |
␈
|
4 B | |
| 004650 | control-08-hex Focused regression |
␈
|
5 B | |
| 004651 | control-09-decimal Focused regression |
␉
|
4 B | |
| 004652 | control-09-hex Focused regression |
␉
|
5 B | |
| 004653 | control-0a-decimal Focused regression |
␊
|
5 B | |
| 004654 | control-0a-hex Focused regression |
␊
|
5 B | |
| 004655 | control-0b-decimal Focused regression |
␋
|
5 B | |
| 004656 | control-0b-hex Focused regression |
␋
|
5 B | |
| 004657 | control-0c-decimal Focused regression |
␌
|
5 B | |
| 004658 | control-0c-hex Focused regression |
␌
|
5 B | |
| 004659 | control-0d-decimal Focused regression |
␍
|
5 B | |
| 004660 | control-0d-hex Focused regression |
␍
|
5 B | |
| 004661 | control-0e-decimal Focused regression |
␎
|
5 B | |
| 004662 | control-0e-hex Focused regression |
␎
|
5 B | |
| 004663 | control-0f-decimal Focused regression |
␏
|
5 B | |
| 004664 | control-0f-hex Focused regression |
␏
|
5 B | |
| 004665 | control-10-decimal Focused regression |
␐
|
5 B | |
| 004666 | control-10-hex Focused regression |
␐
|
6 B | |
| 004667 | control-11-decimal Focused regression |
␑
|
5 B | |
| 004668 | control-11-hex Focused regression |
␑
|
6 B | |
| 004669 | control-12-decimal Focused regression |
␒
|
5 B | |
| 004670 | control-12-hex Focused regression |
␒
|
6 B | |
| 004671 | control-13-decimal Focused regression |
␓
|
5 B | |
| 004672 | control-13-hex Focused regression |
␓
|
6 B | |
| 004673 | control-14-decimal Focused regression |
␔
|
5 B | |
| 004674 | control-14-hex Focused regression |
␔
|
6 B | |
| 004675 | control-15-decimal Focused regression |
␕
|
5 B | |
| 004676 | control-15-hex Focused regression |
␕
|
6 B | |
| 004677 | control-16-decimal Focused regression |
␖
|
5 B | |
| 004678 | control-16-hex Focused regression |
␖
|
6 B | |
| 004679 | control-17-decimal Focused regression |
␗
|
5 B | |
| 004680 | control-17-hex Focused regression |
␗
|
6 B | |
| 004681 | control-18-decimal Focused regression |
␘
|
5 B | |
| 004682 | control-18-hex Focused regression |
␘
|
6 B | |
| 004683 | control-19-decimal Focused regression |
␙
|
5 B | |
| 004684 | control-19-hex Focused regression |
␙
|
6 B | |
| 004685 | control-1a-decimal Focused regression |
␚
|
5 B | |
| 004686 | control-1a-hex Focused regression |
␚
|
6 B | |
| 004687 | control-1b-decimal Focused regression |
␛
|
5 B | |
| 004688 | control-1b-hex Focused regression |
␛
|
6 B | |
| 004689 | control-1c-decimal Focused regression |
␜
|
5 B | |
| 004690 | control-1c-hex Focused regression |
␜
|
6 B | |
| 004691 | control-1d-decimal Focused regression |
␝
|
5 B | |
| 004692 | control-1d-hex Focused regression |
␝
|
6 B | |
| 004693 | control-1e-decimal Focused regression |
␞
|
5 B | |
| 004694 | control-1e-hex Focused regression |
␞
|
6 B | |
| 004695 | control-1f-decimal Focused regression |
␟
|
5 B | |
| 004696 | control-1f-hex Focused regression |
␟
|
6 B | |
| 004697 | control-7f-decimal Focused regression |
␡
|
6 B | |
| 004698 | control-7f-hex Focused regression |
␡
|
6 B | |
| 004699 | control-81-decimal Focused regression |
⟨U+0081⟩
|
6 B | |
| 004700 | control-81-hex Focused regression |
⟨U+0081⟩
|
6 B | |
| 004701 | control-8d-decimal Focused regression |
⟨U+008D⟩
|
6 B | |
| 004702 | control-8d-hex Focused regression |
⟨U+008D⟩
|
6 B | |
| 004703 | control-8f-decimal Focused regression |
⟨U+008F⟩
|
6 B | |
| 004704 | control-8f-hex Focused regression |
⟨U+008F⟩
|
6 B | |
| 004705 | control-90-decimal Focused regression |
⟨U+0090⟩
|
6 B | |
| 004706 | control-90-hex Focused regression |
⟨U+0090⟩
|
6 B | |
| 004707 | control-9d-decimal Focused regression |
⟨U+009D⟩
|
6 B | |
| 004708 | control-9d-hex Focused regression |
⟨U+009D⟩
|
6 B | |
| 004709 | noncharacter-fdd0 Focused regression |
⟨U+FDD0⟩
|
8 B | |
| 004710 | noncharacter-fdef Focused regression |
⟨U+FDEF⟩
|
8 B | |
| 004711 | noncharacter-fffe Focused regression |
⟨U+FFFE⟩
|
8 B | |
| 004712 | noncharacter-ffff Focused regression |
⟨U+FFFF⟩
|
8 B | |
| 004713 | noncharacter-1fffe Focused regression |
⟨U+1FFFE⟩
|
9 B | |
| 004714 | noncharacter-1ffff Focused regression |
⟨U+1FFFF⟩
|
9 B | |
| 004715 | noncharacter-10fffe Focused regression |
⟨U+10FFFE⟩
|
10 B | |
| 004716 | noncharacter-10ffff Focused regression |
⟨U+10FFFF⟩
|
10 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