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
Clear

82 of 6,835 cases

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