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
004450 html5lib/namedEntities/4043 html5lib-tests ⫌︀ Named entity: varsupsetneqq; with a semi-colon 15 B
004451 html5lib/namedEntities/4044 html5lib-tests &vartheta Bad named entity: vartheta without a semi-colon 9 B
004452 html5lib/namedEntities/4045 html5lib-tests ϑ Named entity: vartheta; with a semi-colon 10 B
004453 html5lib/namedEntities/4046 html5lib-tests &vartriangleleft Bad named entity: vartriangleleft without a semi-colon 16 B
004454 html5lib/namedEntities/4047 html5lib-tests ⊲ Named entity: vartriangleleft; with a semi-colon 17 B
004455 html5lib/namedEntities/4048 html5lib-tests &vartriangleright Bad named entity: vartriangleright without a semi-colon 17 B
004456 html5lib/namedEntities/4049 html5lib-tests ⊳ Named entity: vartriangleright; with a semi-colon 18 B
004457 html5lib/namedEntities/4050 html5lib-tests &vcy Bad named entity: vcy without a semi-colon 4 B
004458 html5lib/namedEntities/4051 html5lib-tests в Named entity: vcy; with a semi-colon 5 B
004459 html5lib/namedEntities/4052 html5lib-tests &vdash Bad named entity: vdash without a semi-colon 6 B
004460 html5lib/namedEntities/4053 html5lib-tests ⊢ Named entity: vdash; with a semi-colon 7 B
004461 html5lib/namedEntities/4054 html5lib-tests &vee Bad named entity: vee without a semi-colon 4 B
004462 html5lib/namedEntities/4055 html5lib-tests ∨ Named entity: vee; with a semi-colon 5 B
004463 html5lib/namedEntities/4056 html5lib-tests &veebar Bad named entity: veebar without a semi-colon 7 B
004464 html5lib/namedEntities/4057 html5lib-tests ⊻ Named entity: veebar; with a semi-colon 8 B
004465 html5lib/namedEntities/4058 html5lib-tests &veeeq Bad named entity: veeeq without a semi-colon 6 B
004466 html5lib/namedEntities/4059 html5lib-tests ≚ Named entity: veeeq; with a semi-colon 7 B
004467 html5lib/namedEntities/4060 html5lib-tests &vellip Bad named entity: vellip without a semi-colon 7 B
004468 html5lib/namedEntities/4061 html5lib-tests ⋮ Named entity: vellip; with a semi-colon 8 B
004469 html5lib/namedEntities/4062 html5lib-tests &verbar Bad named entity: verbar without a semi-colon 7 B
004470 html5lib/namedEntities/4063 html5lib-tests | Named entity: verbar; with a semi-colon 8 B
004471 html5lib/namedEntities/4064 html5lib-tests &vert Bad named entity: vert without a semi-colon 5 B
004472 html5lib/namedEntities/4065 html5lib-tests | Named entity: vert; with a semi-colon 6 B
004473 html5lib/namedEntities/4066 html5lib-tests &vfr Bad named entity: vfr without a semi-colon 4 B
004474 html5lib/namedEntities/4067 html5lib-tests 𝔳 Named entity: vfr; with a semi-colon 5 B
004475 html5lib/namedEntities/4068 html5lib-tests &vltri Bad named entity: vltri without a semi-colon 6 B
004476 html5lib/namedEntities/4069 html5lib-tests ⊲ Named entity: vltri; with a semi-colon 7 B
004477 html5lib/namedEntities/4070 html5lib-tests &vnsub Bad named entity: vnsub without a semi-colon 6 B
004478 html5lib/namedEntities/4071 html5lib-tests ⊂⃒ Named entity: vnsub; with a semi-colon 7 B
004479 html5lib/namedEntities/4072 html5lib-tests &vnsup Bad named entity: vnsup without a semi-colon 6 B
004480 html5lib/namedEntities/4073 html5lib-tests ⊃⃒ Named entity: vnsup; with a semi-colon 7 B
004481 html5lib/namedEntities/4074 html5lib-tests &vopf Bad named entity: vopf without a semi-colon 5 B
004482 html5lib/namedEntities/4075 html5lib-tests 𝕧 Named entity: vopf; with a semi-colon 6 B
004483 html5lib/namedEntities/4076 html5lib-tests &vprop Bad named entity: vprop without a semi-colon 6 B
004484 html5lib/namedEntities/4077 html5lib-tests ∝ Named entity: vprop; with a semi-colon 7 B
004485 html5lib/namedEntities/4078 html5lib-tests &vrtri Bad named entity: vrtri without a semi-colon 6 B
004486 html5lib/namedEntities/4079 html5lib-tests ⊳ Named entity: vrtri; with a semi-colon 7 B
004487 html5lib/namedEntities/4080 html5lib-tests &vscr Bad named entity: vscr without a semi-colon 5 B
004488 html5lib/namedEntities/4081 html5lib-tests 𝓋 Named entity: vscr; with a semi-colon 6 B
004489 html5lib/namedEntities/4082 html5lib-tests &vsubnE Bad named entity: vsubnE without a semi-colon 7 B
004490 html5lib/namedEntities/4083 html5lib-tests ⫋︀ Named entity: vsubnE; with a semi-colon 8 B
004491 html5lib/namedEntities/4084 html5lib-tests &vsubne Bad named entity: vsubne without a semi-colon 7 B
004492 html5lib/namedEntities/4085 html5lib-tests ⊊︀ Named entity: vsubne; with a semi-colon 8 B
004493 html5lib/namedEntities/4086 html5lib-tests &vsupnE Bad named entity: vsupnE without a semi-colon 7 B
004494 html5lib/namedEntities/4087 html5lib-tests ⫌︀ Named entity: vsupnE; with a semi-colon 8 B
004495 html5lib/namedEntities/4088 html5lib-tests &vsupne Bad named entity: vsupne without a semi-colon 7 B
004496 html5lib/namedEntities/4089 html5lib-tests ⊋︀ Named entity: vsupne; with a semi-colon 8 B
004497 html5lib/namedEntities/4090 html5lib-tests &vzigzag Bad named entity: vzigzag without a semi-colon 8 B
004498 html5lib/namedEntities/4091 html5lib-tests ⦚ Named entity: vzigzag; with a semi-colon 9 B
004499 html5lib/namedEntities/4092 html5lib-tests &wcirc Bad named entity: wcirc without 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.