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
004200 html5lib/namedEntities/3793 html5lib-tests &swArr Bad named entity: swArr without a semi-colon 6 B
004201 html5lib/namedEntities/3794 html5lib-tests ⇙ Named entity: swArr; with a semi-colon 7 B
004202 html5lib/namedEntities/3795 html5lib-tests &swarhk Bad named entity: swarhk without a semi-colon 7 B
004203 html5lib/namedEntities/3796 html5lib-tests ⤦ Named entity: swarhk; with a semi-colon 8 B
004204 html5lib/namedEntities/3797 html5lib-tests &swarr Bad named entity: swarr without a semi-colon 6 B
004205 html5lib/namedEntities/3798 html5lib-tests ↙ Named entity: swarr; with a semi-colon 7 B
004206 html5lib/namedEntities/3799 html5lib-tests &swarrow Bad named entity: swarrow without a semi-colon 8 B
004207 html5lib/namedEntities/3800 html5lib-tests ↙ Named entity: swarrow; with a semi-colon 9 B
004208 html5lib/namedEntities/3801 html5lib-tests &swnwar Bad named entity: swnwar without a semi-colon 7 B
004209 html5lib/namedEntities/3802 html5lib-tests ⤪ Named entity: swnwar; with a semi-colon 8 B
004210 html5lib/namedEntities/3803 html5lib-tests ß Named entity: szlig without a semi-colon 6 B
004211 html5lib/namedEntities/3804 html5lib-tests ß Named entity: szlig; with a semi-colon 7 B
004212 html5lib/namedEntities/3805 html5lib-tests &target Bad named entity: target without a semi-colon 7 B
004213 html5lib/namedEntities/3806 html5lib-tests ⌖ Named entity: target; with a semi-colon 8 B
004214 html5lib/namedEntities/3807 html5lib-tests &tau Bad named entity: tau without a semi-colon 4 B
004215 html5lib/namedEntities/3808 html5lib-tests τ Named entity: tau; with a semi-colon 5 B
004216 html5lib/namedEntities/3809 html5lib-tests &tbrk Bad named entity: tbrk without a semi-colon 5 B
004217 html5lib/namedEntities/3810 html5lib-tests ⎴ Named entity: tbrk; with a semi-colon 6 B
004218 html5lib/namedEntities/3811 html5lib-tests &tcaron Bad named entity: tcaron without a semi-colon 7 B
004219 html5lib/namedEntities/3812 html5lib-tests ť Named entity: tcaron; with a semi-colon 8 B
004220 html5lib/namedEntities/3813 html5lib-tests &tcedil Bad named entity: tcedil without a semi-colon 7 B
004221 html5lib/namedEntities/3814 html5lib-tests ţ Named entity: tcedil; with a semi-colon 8 B
004222 html5lib/namedEntities/3815 html5lib-tests &tcy Bad named entity: tcy without a semi-colon 4 B
004223 html5lib/namedEntities/3816 html5lib-tests т Named entity: tcy; with a semi-colon 5 B
004224 html5lib/namedEntities/3817 html5lib-tests &tdot Bad named entity: tdot without a semi-colon 5 B
004225 html5lib/namedEntities/3818 html5lib-tests ⃛ Named entity: tdot; with a semi-colon 6 B
004226 html5lib/namedEntities/3819 html5lib-tests &telrec Bad named entity: telrec without a semi-colon 7 B
004227 html5lib/namedEntities/3820 html5lib-tests ⌕ Named entity: telrec; with a semi-colon 8 B
004228 html5lib/namedEntities/3821 html5lib-tests &tfr Bad named entity: tfr without a semi-colon 4 B
004229 html5lib/namedEntities/3822 html5lib-tests 𝔱 Named entity: tfr; with a semi-colon 5 B
004230 html5lib/namedEntities/3823 html5lib-tests &there4 Bad named entity: there4 without a semi-colon 7 B
004231 html5lib/namedEntities/3824 html5lib-tests ∴ Named entity: there4; with a semi-colon 8 B
004232 html5lib/namedEntities/3825 html5lib-tests &therefore Bad named entity: therefore without a semi-colon 10 B
004233 html5lib/namedEntities/3826 html5lib-tests ∴ Named entity: therefore; with a semi-colon 11 B
004234 html5lib/namedEntities/3827 html5lib-tests &theta Bad named entity: theta without a semi-colon 6 B
004235 html5lib/namedEntities/3828 html5lib-tests θ Named entity: theta; with a semi-colon 7 B
004236 html5lib/namedEntities/3829 html5lib-tests &thetasym Bad named entity: thetasym without a semi-colon 9 B
004237 html5lib/namedEntities/3830 html5lib-tests ϑ Named entity: thetasym; with a semi-colon 10 B
004238 html5lib/namedEntities/3831 html5lib-tests &thetav Bad named entity: thetav without a semi-colon 7 B
004239 html5lib/namedEntities/3832 html5lib-tests ϑ Named entity: thetav; with a semi-colon 8 B
004240 html5lib/namedEntities/3833 html5lib-tests &thickapprox Bad named entity: thickapprox without a semi-colon 12 B
004241 html5lib/namedEntities/3834 html5lib-tests ≈ Named entity: thickapprox; with a semi-colon 13 B
004242 html5lib/namedEntities/3835 html5lib-tests &thicksim Bad named entity: thicksim without a semi-colon 9 B
004243 html5lib/namedEntities/3836 html5lib-tests ∼ Named entity: thicksim; with a semi-colon 10 B
004244 html5lib/namedEntities/3837 html5lib-tests &thinsp Bad named entity: thinsp without a semi-colon 7 B
004245 html5lib/namedEntities/3838 html5lib-tests   Named entity: thinsp; with a semi-colon 8 B
004246 html5lib/namedEntities/3839 html5lib-tests &thkap Bad named entity: thkap without a semi-colon 6 B
004247 html5lib/namedEntities/3840 html5lib-tests ≈ Named entity: thkap; with a semi-colon 7 B
004248 html5lib/namedEntities/3841 html5lib-tests &thksim Bad named entity: thksim without a semi-colon 7 B
004249 html5lib/namedEntities/3842 html5lib-tests ∼ Named entity: thksim; with a semi-colon 8 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.