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
004404 html5lib/namedEntities/3997 html5lib-tests ũ Named entity: utilde; with a semi-colon 8 B
004405 html5lib/namedEntities/3998 html5lib-tests &utri Bad named entity: utri without a semi-colon 5 B
004406 html5lib/namedEntities/3999 html5lib-tests ▵ Named entity: utri; with a semi-colon 6 B
004407 html5lib/namedEntities/4000 html5lib-tests &utrif Bad named entity: utrif without a semi-colon 6 B
004408 html5lib/namedEntities/4001 html5lib-tests ▴ Named entity: utrif; with a semi-colon 7 B
004409 html5lib/namedEntities/4002 html5lib-tests &uuarr Bad named entity: uuarr without a semi-colon 6 B
004410 html5lib/namedEntities/4003 html5lib-tests ⇈ Named entity: uuarr; with a semi-colon 7 B
004411 html5lib/namedEntities/4004 html5lib-tests ü Named entity: uuml without a semi-colon 5 B
004412 html5lib/namedEntities/4005 html5lib-tests ü Named entity: uuml; with a semi-colon 6 B
004413 html5lib/namedEntities/4006 html5lib-tests &uwangle Bad named entity: uwangle without a semi-colon 8 B
004414 html5lib/namedEntities/4007 html5lib-tests ⦧ Named entity: uwangle; with a semi-colon 9 B
004415 html5lib/namedEntities/4008 html5lib-tests &vArr Bad named entity: vArr without a semi-colon 5 B
004416 html5lib/namedEntities/4009 html5lib-tests ⇕ Named entity: vArr; with a semi-colon 6 B
004417 html5lib/namedEntities/4010 html5lib-tests &vBar Bad named entity: vBar without a semi-colon 5 B
004418 html5lib/namedEntities/4011 html5lib-tests ⫨ Named entity: vBar; with a semi-colon 6 B
004419 html5lib/namedEntities/4012 html5lib-tests &vBarv Bad named entity: vBarv without a semi-colon 6 B
004420 html5lib/namedEntities/4013 html5lib-tests ⫩ Named entity: vBarv; with a semi-colon 7 B
004421 html5lib/namedEntities/4014 html5lib-tests &vDash Bad named entity: vDash without a semi-colon 6 B
004422 html5lib/namedEntities/4015 html5lib-tests ⊨ Named entity: vDash; with a semi-colon 7 B
004423 html5lib/namedEntities/4016 html5lib-tests &vangrt Bad named entity: vangrt without a semi-colon 7 B
004424 html5lib/namedEntities/4017 html5lib-tests ⦜ Named entity: vangrt; with a semi-colon 8 B
004425 html5lib/namedEntities/4018 html5lib-tests &varepsilon Bad named entity: varepsilon without a semi-colon 11 B
004426 html5lib/namedEntities/4019 html5lib-tests ϵ Named entity: varepsilon; with a semi-colon 12 B
004427 html5lib/namedEntities/4020 html5lib-tests &varkappa Bad named entity: varkappa without a semi-colon 9 B
004428 html5lib/namedEntities/4021 html5lib-tests ϰ Named entity: varkappa; with a semi-colon 10 B
004429 html5lib/namedEntities/4022 html5lib-tests &varnothing Bad named entity: varnothing without a semi-colon 11 B
004430 html5lib/namedEntities/4023 html5lib-tests ∅ Named entity: varnothing; with a semi-colon 12 B
004431 html5lib/namedEntities/4024 html5lib-tests &varphi Bad named entity: varphi without a semi-colon 7 B
004432 html5lib/namedEntities/4025 html5lib-tests ϕ Named entity: varphi; with a semi-colon 8 B
004433 html5lib/namedEntities/4026 html5lib-tests &varpi Bad named entity: varpi without a semi-colon 6 B
004434 html5lib/namedEntities/4027 html5lib-tests ϖ Named entity: varpi; with a semi-colon 7 B
004435 html5lib/namedEntities/4028 html5lib-tests &varpropto Bad named entity: varpropto without a semi-colon 10 B
004436 html5lib/namedEntities/4029 html5lib-tests ∝ Named entity: varpropto; with a semi-colon 11 B
004437 html5lib/namedEntities/4030 html5lib-tests &varr Bad named entity: varr without a semi-colon 5 B
004438 html5lib/namedEntities/4031 html5lib-tests ↕ Named entity: varr; with a semi-colon 6 B
004439 html5lib/namedEntities/4032 html5lib-tests &varrho Bad named entity: varrho without a semi-colon 7 B
004440 html5lib/namedEntities/4033 html5lib-tests ϱ Named entity: varrho; with a semi-colon 8 B
004441 html5lib/namedEntities/4034 html5lib-tests &varsigma Bad named entity: varsigma without a semi-colon 9 B
004442 html5lib/namedEntities/4035 html5lib-tests ς Named entity: varsigma; with a semi-colon 10 B
004443 html5lib/namedEntities/4036 html5lib-tests &varsubsetneq Bad named entity: varsubsetneq without a semi-colon 13 B
004444 html5lib/namedEntities/4037 html5lib-tests ⊊︀ Named entity: varsubsetneq; with a semi-colon 14 B
004445 html5lib/namedEntities/4038 html5lib-tests &varsubsetneqq Bad named entity: varsubsetneqq without a semi-colon 14 B
004446 html5lib/namedEntities/4039 html5lib-tests ⫋︀ Named entity: varsubsetneqq; with a semi-colon 15 B
004447 html5lib/namedEntities/4040 html5lib-tests &varsupsetneq Bad named entity: varsupsetneq without a semi-colon 13 B
004448 html5lib/namedEntities/4041 html5lib-tests ⊋︀ Named entity: varsupsetneq; with a semi-colon 14 B
004449 html5lib/namedEntities/4042 html5lib-tests &varsupsetneqq Bad named entity: varsupsetneqq without a semi-colon 14 B
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

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.