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
001654 html5lib/namedEntities/1247 html5lib-tests ∠ Named entity: angle; with a semi-colon 7 B
001655 html5lib/namedEntities/1248 html5lib-tests &angmsd Bad named entity: angmsd without a semi-colon 7 B
001656 html5lib/namedEntities/1249 html5lib-tests ∡ Named entity: angmsd; with a semi-colon 8 B
001657 html5lib/namedEntities/1250 html5lib-tests &angmsdaa Bad named entity: angmsdaa without a semi-colon 9 B
001658 html5lib/namedEntities/1251 html5lib-tests ⦨ Named entity: angmsdaa; with a semi-colon 10 B
001659 html5lib/namedEntities/1252 html5lib-tests &angmsdab Bad named entity: angmsdab without a semi-colon 9 B
001660 html5lib/namedEntities/1253 html5lib-tests ⦩ Named entity: angmsdab; with a semi-colon 10 B
001661 html5lib/namedEntities/1254 html5lib-tests &angmsdac Bad named entity: angmsdac without a semi-colon 9 B
001662 html5lib/namedEntities/1255 html5lib-tests ⦪ Named entity: angmsdac; with a semi-colon 10 B
001663 html5lib/namedEntities/1256 html5lib-tests &angmsdad Bad named entity: angmsdad without a semi-colon 9 B
001664 html5lib/namedEntities/1257 html5lib-tests ⦫ Named entity: angmsdad; with a semi-colon 10 B
001665 html5lib/namedEntities/1258 html5lib-tests &angmsdae Bad named entity: angmsdae without a semi-colon 9 B
001666 html5lib/namedEntities/1259 html5lib-tests ⦬ Named entity: angmsdae; with a semi-colon 10 B
001667 html5lib/namedEntities/1260 html5lib-tests &angmsdaf Bad named entity: angmsdaf without a semi-colon 9 B
001668 html5lib/namedEntities/1261 html5lib-tests ⦭ Named entity: angmsdaf; with a semi-colon 10 B
001669 html5lib/namedEntities/1262 html5lib-tests &angmsdag Bad named entity: angmsdag without a semi-colon 9 B
001670 html5lib/namedEntities/1263 html5lib-tests ⦮ Named entity: angmsdag; with a semi-colon 10 B
001671 html5lib/namedEntities/1264 html5lib-tests &angmsdah Bad named entity: angmsdah without a semi-colon 9 B
001672 html5lib/namedEntities/1265 html5lib-tests ⦯ Named entity: angmsdah; with a semi-colon 10 B
001673 html5lib/namedEntities/1266 html5lib-tests &angrt Bad named entity: angrt without a semi-colon 6 B
001674 html5lib/namedEntities/1267 html5lib-tests ∟ Named entity: angrt; with a semi-colon 7 B
001675 html5lib/namedEntities/1268 html5lib-tests &angrtvb Bad named entity: angrtvb without a semi-colon 8 B
001676 html5lib/namedEntities/1269 html5lib-tests ⊾ Named entity: angrtvb; with a semi-colon 9 B
001677 html5lib/namedEntities/1270 html5lib-tests &angrtvbd Bad named entity: angrtvbd without a semi-colon 9 B
001678 html5lib/namedEntities/1271 html5lib-tests ⦝ Named entity: angrtvbd; with a semi-colon 10 B
001679 html5lib/namedEntities/1272 html5lib-tests &angsph Bad named entity: angsph without a semi-colon 7 B
001680 html5lib/namedEntities/1273 html5lib-tests ∢ Named entity: angsph; with a semi-colon 8 B
001681 html5lib/namedEntities/1274 html5lib-tests &angst Bad named entity: angst without a semi-colon 6 B
001682 html5lib/namedEntities/1275 html5lib-tests Å Named entity: angst; with a semi-colon 7 B
001683 html5lib/namedEntities/1276 html5lib-tests &angzarr Bad named entity: angzarr without a semi-colon 8 B
001684 html5lib/namedEntities/1277 html5lib-tests ⍼ Named entity: angzarr; with a semi-colon 9 B
001685 html5lib/namedEntities/1278 html5lib-tests &aogon Bad named entity: aogon without a semi-colon 6 B
001686 html5lib/namedEntities/1279 html5lib-tests ą Named entity: aogon; with a semi-colon 7 B
001687 html5lib/namedEntities/1280 html5lib-tests &aopf Bad named entity: aopf without a semi-colon 5 B
001688 html5lib/namedEntities/1281 html5lib-tests 𝕒 Named entity: aopf; with a semi-colon 6 B
001689 html5lib/namedEntities/1282 html5lib-tests &ap Bad named entity: ap without a semi-colon 3 B
001690 html5lib/namedEntities/1283 html5lib-tests ≈ Named entity: ap; with a semi-colon 4 B
001691 html5lib/namedEntities/1284 html5lib-tests &apE Bad named entity: apE without a semi-colon 4 B
001692 html5lib/namedEntities/1285 html5lib-tests ⩰ Named entity: apE; with a semi-colon 5 B
001693 html5lib/namedEntities/1286 html5lib-tests &apacir Bad named entity: apacir without a semi-colon 7 B
001694 html5lib/namedEntities/1287 html5lib-tests ⩯ Named entity: apacir; with a semi-colon 8 B
001695 html5lib/namedEntities/1288 html5lib-tests &ape Bad named entity: ape without a semi-colon 4 B
001696 html5lib/namedEntities/1289 html5lib-tests ≊ Named entity: ape; with a semi-colon 5 B
001697 html5lib/namedEntities/1290 html5lib-tests &apid Bad named entity: apid without a semi-colon 5 B
001698 html5lib/namedEntities/1291 html5lib-tests ≋ Named entity: apid; with a semi-colon 6 B
001699 html5lib/namedEntities/1292 html5lib-tests &apos Bad named entity: apos without a semi-colon 5 B
001700 html5lib/namedEntities/1293 html5lib-tests ' Named entity: apos; with a semi-colon 6 B
001701 html5lib/namedEntities/1294 html5lib-tests &approx Bad named entity: approx without a semi-colon 7 B
001702 html5lib/namedEntities/1295 html5lib-tests ≈ Named entity: approx; with a semi-colon 8 B
001703 html5lib/namedEntities/1296 html5lib-tests &approxeq Bad named entity: approxeq without a semi-colon 9 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.