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
003504 html5lib/namedEntities/3097 html5lib-tests ⦶ Named entity: omid; with a semi-colon 6 B
003505 html5lib/namedEntities/3098 html5lib-tests &ominus Bad named entity: ominus without a semi-colon 7 B
003506 html5lib/namedEntities/3099 html5lib-tests ⊖ Named entity: ominus; with a semi-colon 8 B
003507 html5lib/namedEntities/3100 html5lib-tests &oopf Bad named entity: oopf without a semi-colon 5 B
003508 html5lib/namedEntities/3101 html5lib-tests 𝕠 Named entity: oopf; with a semi-colon 6 B
003509 html5lib/namedEntities/3102 html5lib-tests &opar Bad named entity: opar without a semi-colon 5 B
003510 html5lib/namedEntities/3103 html5lib-tests ⦷ Named entity: opar; with a semi-colon 6 B
003511 html5lib/namedEntities/3104 html5lib-tests &operp Bad named entity: operp without a semi-colon 6 B
003512 html5lib/namedEntities/3105 html5lib-tests ⦹ Named entity: operp; with a semi-colon 7 B
003513 html5lib/namedEntities/3106 html5lib-tests &oplus Bad named entity: oplus without a semi-colon 6 B
003514 html5lib/namedEntities/3107 html5lib-tests ⊕ Named entity: oplus; with a semi-colon 7 B
003515 html5lib/namedEntities/3108 html5lib-tests &or Bad named entity: or without a semi-colon 3 B
003516 html5lib/namedEntities/3109 html5lib-tests ∨ Named entity: or; with a semi-colon 4 B
003517 html5lib/namedEntities/3110 html5lib-tests &orarr Bad named entity: orarr without a semi-colon 6 B
003518 html5lib/namedEntities/3111 html5lib-tests ↻ Named entity: orarr; with a semi-colon 7 B
003519 html5lib/namedEntities/3112 html5lib-tests &ord Bad named entity: ord without a semi-colon 4 B
003520 html5lib/namedEntities/3113 html5lib-tests ⩝ Named entity: ord; with a semi-colon 5 B
003521 html5lib/namedEntities/3114 html5lib-tests &order Bad named entity: order without a semi-colon 6 B
003522 html5lib/namedEntities/3115 html5lib-tests ℴ Named entity: order; with a semi-colon 7 B
003523 html5lib/namedEntities/3116 html5lib-tests &orderof Bad named entity: orderof without a semi-colon 8 B
003524 html5lib/namedEntities/3117 html5lib-tests ℴ Named entity: orderof; with a semi-colon 9 B
003525 html5lib/namedEntities/3118 html5lib-tests ª Named entity: ordf without a semi-colon 5 B
003526 html5lib/namedEntities/3119 html5lib-tests ª Named entity: ordf; with a semi-colon 6 B
003527 html5lib/namedEntities/3120 html5lib-tests º Named entity: ordm without a semi-colon 5 B
003528 html5lib/namedEntities/3121 html5lib-tests º Named entity: ordm; with a semi-colon 6 B
003529 html5lib/namedEntities/3122 html5lib-tests &origof Bad named entity: origof without a semi-colon 7 B
003530 html5lib/namedEntities/3123 html5lib-tests ⊶ Named entity: origof; with a semi-colon 8 B
003531 html5lib/namedEntities/3124 html5lib-tests &oror Bad named entity: oror without a semi-colon 5 B
003532 html5lib/namedEntities/3125 html5lib-tests ⩖ Named entity: oror; with a semi-colon 6 B
003533 html5lib/namedEntities/3126 html5lib-tests &orslope Bad named entity: orslope without a semi-colon 8 B
003534 html5lib/namedEntities/3127 html5lib-tests ⩗ Named entity: orslope; with a semi-colon 9 B
003535 html5lib/namedEntities/3128 html5lib-tests &orv Bad named entity: orv without a semi-colon 4 B
003536 html5lib/namedEntities/3129 html5lib-tests ⩛ Named entity: orv; with a semi-colon 5 B
003537 html5lib/namedEntities/3130 html5lib-tests &oscr Bad named entity: oscr without a semi-colon 5 B
003538 html5lib/namedEntities/3131 html5lib-tests ℴ Named entity: oscr; with a semi-colon 6 B
003539 html5lib/namedEntities/3132 html5lib-tests ø Named entity: oslash without a semi-colon 7 B
003540 html5lib/namedEntities/3133 html5lib-tests ø Named entity: oslash; with a semi-colon 8 B
003541 html5lib/namedEntities/3134 html5lib-tests &osol Bad named entity: osol without a semi-colon 5 B
003542 html5lib/namedEntities/3135 html5lib-tests ⊘ Named entity: osol; with a semi-colon 6 B
003543 html5lib/namedEntities/3136 html5lib-tests õ Named entity: otilde without a semi-colon 7 B
003544 html5lib/namedEntities/3137 html5lib-tests õ Named entity: otilde; with a semi-colon 8 B
003545 html5lib/namedEntities/3138 html5lib-tests &otimes Bad named entity: otimes without a semi-colon 7 B
003546 html5lib/namedEntities/3139 html5lib-tests ⊗ Named entity: otimes; with a semi-colon 8 B
003547 html5lib/namedEntities/3140 html5lib-tests &otimesas Bad named entity: otimesas without a semi-colon 9 B
003548 html5lib/namedEntities/3141 html5lib-tests ⨶ Named entity: otimesas; with a semi-colon 10 B
003549 html5lib/namedEntities/3142 html5lib-tests ö Named entity: ouml without a semi-colon 5 B
003550 html5lib/namedEntities/3143 html5lib-tests ö Named entity: ouml; with a semi-colon 6 B
003551 html5lib/namedEntities/3144 html5lib-tests &ovbar Bad named entity: ovbar without a semi-colon 6 B
003552 html5lib/namedEntities/3145 html5lib-tests ⌽ Named entity: ovbar; with a semi-colon 7 B
003553 html5lib/namedEntities/3146 html5lib-tests &par Bad named entity: par without a semi-colon 4 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.