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
001154 html5lib/namedEntities/0747 html5lib-tests Ο Named entity: Omicron; with a semi-colon 9 B
001155 html5lib/namedEntities/0748 html5lib-tests &Oopf Bad named entity: Oopf without a semi-colon 5 B
001156 html5lib/namedEntities/0749 html5lib-tests 𝕆 Named entity: Oopf; with a semi-colon 6 B
001157 html5lib/namedEntities/0750 html5lib-tests &OpenCurlyDoubleQuote Bad named entity: OpenCurlyDoubleQuote without a semi-colon 21 B
001158 html5lib/namedEntities/0751 html5lib-tests “ Named entity: OpenCurlyDoubleQuote; with a semi-colon 22 B
001159 html5lib/namedEntities/0752 html5lib-tests &OpenCurlyQuote Bad named entity: OpenCurlyQuote without a semi-colon 15 B
001160 html5lib/namedEntities/0753 html5lib-tests ‘ Named entity: OpenCurlyQuote; with a semi-colon 16 B
001161 html5lib/namedEntities/0754 html5lib-tests &Or Bad named entity: Or without a semi-colon 3 B
001162 html5lib/namedEntities/0755 html5lib-tests ⩔ Named entity: Or; with a semi-colon 4 B
001163 html5lib/namedEntities/0756 html5lib-tests &Oscr Bad named entity: Oscr without a semi-colon 5 B
001164 html5lib/namedEntities/0757 html5lib-tests 𝒪 Named entity: Oscr; with a semi-colon 6 B
001165 html5lib/namedEntities/0758 html5lib-tests Ø Named entity: Oslash without a semi-colon 7 B
001166 html5lib/namedEntities/0759 html5lib-tests Ø Named entity: Oslash; with a semi-colon 8 B
001167 html5lib/namedEntities/0760 html5lib-tests Õ Named entity: Otilde without a semi-colon 7 B
001168 html5lib/namedEntities/0761 html5lib-tests Õ Named entity: Otilde; with a semi-colon 8 B
001169 html5lib/namedEntities/0762 html5lib-tests &Otimes Bad named entity: Otimes without a semi-colon 7 B
001170 html5lib/namedEntities/0763 html5lib-tests ⨷ Named entity: Otimes; with a semi-colon 8 B
001171 html5lib/namedEntities/0764 html5lib-tests Ö Named entity: Ouml without a semi-colon 5 B
001172 html5lib/namedEntities/0765 html5lib-tests Ö Named entity: Ouml; with a semi-colon 6 B
001173 html5lib/namedEntities/0766 html5lib-tests &OverBar Bad named entity: OverBar without a semi-colon 8 B
001174 html5lib/namedEntities/0767 html5lib-tests ‾ Named entity: OverBar; with a semi-colon 9 B
001175 html5lib/namedEntities/0768 html5lib-tests &OverBrace Bad named entity: OverBrace without a semi-colon 10 B
001176 html5lib/namedEntities/0769 html5lib-tests ⏞ Named entity: OverBrace; with a semi-colon 11 B
001177 html5lib/namedEntities/0770 html5lib-tests &OverBracket Bad named entity: OverBracket without a semi-colon 12 B
001178 html5lib/namedEntities/0771 html5lib-tests ⎴ Named entity: OverBracket; with a semi-colon 13 B
001179 html5lib/namedEntities/0772 html5lib-tests &OverParenthesis Bad named entity: OverParenthesis without a semi-colon 16 B
001180 html5lib/namedEntities/0773 html5lib-tests ⏜ Named entity: OverParenthesis; with a semi-colon 17 B
001181 html5lib/namedEntities/0774 html5lib-tests &PartialD Bad named entity: PartialD without a semi-colon 9 B
001182 html5lib/namedEntities/0775 html5lib-tests ∂ Named entity: PartialD; with a semi-colon 10 B
001183 html5lib/namedEntities/0776 html5lib-tests &Pcy Bad named entity: Pcy without a semi-colon 4 B
001184 html5lib/namedEntities/0777 html5lib-tests П Named entity: Pcy; with a semi-colon 5 B
001185 html5lib/namedEntities/0778 html5lib-tests &Pfr Bad named entity: Pfr without a semi-colon 4 B
001186 html5lib/namedEntities/0779 html5lib-tests 𝔓 Named entity: Pfr; with a semi-colon 5 B
001187 html5lib/namedEntities/0780 html5lib-tests &Phi Bad named entity: Phi without a semi-colon 4 B
001188 html5lib/namedEntities/0781 html5lib-tests Φ Named entity: Phi; with a semi-colon 5 B
001189 html5lib/namedEntities/0782 html5lib-tests &Pi Bad named entity: Pi without a semi-colon 3 B
001190 html5lib/namedEntities/0783 html5lib-tests Π Named entity: Pi; with a semi-colon 4 B
001191 html5lib/namedEntities/0784 html5lib-tests &PlusMinus Bad named entity: PlusMinus without a semi-colon 10 B
001192 html5lib/namedEntities/0785 html5lib-tests ± Named entity: PlusMinus; with a semi-colon 11 B
001193 html5lib/namedEntities/0786 html5lib-tests &Poincareplane Bad named entity: Poincareplane without a semi-colon 14 B
001194 html5lib/namedEntities/0787 html5lib-tests ℌ Named entity: Poincareplane; with a semi-colon 15 B
001195 html5lib/namedEntities/0788 html5lib-tests &Popf Bad named entity: Popf without a semi-colon 5 B
001196 html5lib/namedEntities/0789 html5lib-tests ℙ Named entity: Popf; with a semi-colon 6 B
001197 html5lib/namedEntities/0790 html5lib-tests &Pr Bad named entity: Pr without a semi-colon 3 B
001198 html5lib/namedEntities/0791 html5lib-tests ⪻ Named entity: Pr; with a semi-colon 4 B
001199 html5lib/namedEntities/0792 html5lib-tests &Precedes Bad named entity: Precedes without a semi-colon 9 B
001200 html5lib/namedEntities/0793 html5lib-tests ≺ Named entity: Precedes; with a semi-colon 10 B
001201 html5lib/namedEntities/0794 html5lib-tests &PrecedesEqual Bad named entity: PrecedesEqual without a semi-colon 14 B
001202 html5lib/namedEntities/0795 html5lib-tests ⪯ Named entity: PrecedesEqual; with a semi-colon 15 B
001203 html5lib/namedEntities/0796 html5lib-tests &PrecedesSlantEqual Bad named entity: PrecedesSlantEqual without a semi-colon 19 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.