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

5,931 of 6,835 cases

Case Name Expected Note Size
004054 html5lib/namedEntities/3647 html5lib-tests &sqsube Bad named entity: sqsube without a semi-colon 7 B
004055 html5lib/namedEntities/3648 html5lib-tests ⊑ Named entity: sqsube; with a semi-colon 8 B
004056 html5lib/namedEntities/3649 html5lib-tests &sqsubset Bad named entity: sqsubset without a semi-colon 9 B
004057 html5lib/namedEntities/3650 html5lib-tests ⊏ Named entity: sqsubset; with a semi-colon 10 B
004058 html5lib/namedEntities/3651 html5lib-tests &sqsubseteq Bad named entity: sqsubseteq without a semi-colon 11 B
004059 html5lib/namedEntities/3652 html5lib-tests ⊑ Named entity: sqsubseteq; with a semi-colon 12 B
004060 html5lib/namedEntities/3653 html5lib-tests &sqsup Bad named entity: sqsup without a semi-colon 6 B
004061 html5lib/namedEntities/3654 html5lib-tests ⊐ Named entity: sqsup; with a semi-colon 7 B
004062 html5lib/namedEntities/3655 html5lib-tests &sqsupe Bad named entity: sqsupe without a semi-colon 7 B
004063 html5lib/namedEntities/3656 html5lib-tests ⊒ Named entity: sqsupe; with a semi-colon 8 B
004064 html5lib/namedEntities/3657 html5lib-tests &sqsupset Bad named entity: sqsupset without a semi-colon 9 B
004065 html5lib/namedEntities/3658 html5lib-tests ⊐ Named entity: sqsupset; with a semi-colon 10 B
004066 html5lib/namedEntities/3659 html5lib-tests &sqsupseteq Bad named entity: sqsupseteq without a semi-colon 11 B
004067 html5lib/namedEntities/3660 html5lib-tests ⊒ Named entity: sqsupseteq; with a semi-colon 12 B
004068 html5lib/namedEntities/3661 html5lib-tests &squ Bad named entity: squ without a semi-colon 4 B
004069 html5lib/namedEntities/3662 html5lib-tests □ Named entity: squ; with a semi-colon 5 B
004070 html5lib/namedEntities/3663 html5lib-tests &square Bad named entity: square without a semi-colon 7 B
004071 html5lib/namedEntities/3664 html5lib-tests □ Named entity: square; with a semi-colon 8 B
004072 html5lib/namedEntities/3665 html5lib-tests &squarf Bad named entity: squarf without a semi-colon 7 B
004073 html5lib/namedEntities/3666 html5lib-tests ▪ Named entity: squarf; with a semi-colon 8 B
004074 html5lib/namedEntities/3667 html5lib-tests &squf Bad named entity: squf without a semi-colon 5 B
004075 html5lib/namedEntities/3668 html5lib-tests ▪ Named entity: squf; with a semi-colon 6 B
004076 html5lib/namedEntities/3669 html5lib-tests &srarr Bad named entity: srarr without a semi-colon 6 B
004077 html5lib/namedEntities/3670 html5lib-tests → Named entity: srarr; with a semi-colon 7 B
004078 html5lib/namedEntities/3671 html5lib-tests &sscr Bad named entity: sscr without a semi-colon 5 B
004079 html5lib/namedEntities/3672 html5lib-tests 𝓈 Named entity: sscr; with a semi-colon 6 B
004080 html5lib/namedEntities/3673 html5lib-tests &ssetmn Bad named entity: ssetmn without a semi-colon 7 B
004081 html5lib/namedEntities/3674 html5lib-tests ∖ Named entity: ssetmn; with a semi-colon 8 B
004082 html5lib/namedEntities/3675 html5lib-tests &ssmile Bad named entity: ssmile without a semi-colon 7 B
004083 html5lib/namedEntities/3676 html5lib-tests ⌣ Named entity: ssmile; with a semi-colon 8 B
004084 html5lib/namedEntities/3677 html5lib-tests &sstarf Bad named entity: sstarf without a semi-colon 7 B
004085 html5lib/namedEntities/3678 html5lib-tests ⋆ Named entity: sstarf; with a semi-colon 8 B
004086 html5lib/namedEntities/3679 html5lib-tests &star Bad named entity: star without a semi-colon 5 B
004087 html5lib/namedEntities/3680 html5lib-tests ☆ Named entity: star; with a semi-colon 6 B
004088 html5lib/namedEntities/3681 html5lib-tests &starf Bad named entity: starf without a semi-colon 6 B
004089 html5lib/namedEntities/3682 html5lib-tests ★ Named entity: starf; with a semi-colon 7 B
004090 html5lib/namedEntities/3683 html5lib-tests &straightepsilon Bad named entity: straightepsilon without a semi-colon 16 B
004091 html5lib/namedEntities/3684 html5lib-tests ϵ Named entity: straightepsilon; with a semi-colon 17 B
004092 html5lib/namedEntities/3685 html5lib-tests &straightphi Bad named entity: straightphi without a semi-colon 12 B
004093 html5lib/namedEntities/3686 html5lib-tests ϕ Named entity: straightphi; with a semi-colon 13 B
004094 html5lib/namedEntities/3687 html5lib-tests &strns Bad named entity: strns without a semi-colon 6 B
004095 html5lib/namedEntities/3688 html5lib-tests ¯ Named entity: strns; with a semi-colon 7 B
004096 html5lib/namedEntities/3689 html5lib-tests &sub Bad named entity: sub without a semi-colon 4 B
004097 html5lib/namedEntities/3690 html5lib-tests ⊂ Named entity: sub; with a semi-colon 5 B
004098 html5lib/namedEntities/3691 html5lib-tests &subE Bad named entity: subE without a semi-colon 5 B
004099 html5lib/namedEntities/3692 html5lib-tests ⫅ Named entity: subE; with a semi-colon 6 B
004100 html5lib/namedEntities/3693 html5lib-tests &subdot Bad named entity: subdot without a semi-colon 7 B
004101 html5lib/namedEntities/3694 html5lib-tests ⪽ Named entity: subdot; with a semi-colon 8 B
004102 html5lib/namedEntities/3695 html5lib-tests &sube Bad named entity: sube without a semi-colon 5 B
004103 html5lib/namedEntities/3696 html5lib-tests ⊆ Named entity: sube; with a semi-colon 6 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.