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
002054 html5lib/namedEntities/1647 html5lib-tests &complexes Bad named entity: complexes without a semi-colon 10 B
002055 html5lib/namedEntities/1648 html5lib-tests ℂ Named entity: complexes; with a semi-colon 11 B
002056 html5lib/namedEntities/1649 html5lib-tests &cong Bad named entity: cong without a semi-colon 5 B
002057 html5lib/namedEntities/1650 html5lib-tests ≅ Named entity: cong; with a semi-colon 6 B
002058 html5lib/namedEntities/1651 html5lib-tests &congdot Bad named entity: congdot without a semi-colon 8 B
002059 html5lib/namedEntities/1652 html5lib-tests ⩭ Named entity: congdot; with a semi-colon 9 B
002060 html5lib/namedEntities/1653 html5lib-tests &conint Bad named entity: conint without a semi-colon 7 B
002061 html5lib/namedEntities/1654 html5lib-tests ∮ Named entity: conint; with a semi-colon 8 B
002062 html5lib/namedEntities/1655 html5lib-tests &copf Bad named entity: copf without a semi-colon 5 B
002063 html5lib/namedEntities/1656 html5lib-tests 𝕔 Named entity: copf; with a semi-colon 6 B
002064 html5lib/namedEntities/1657 html5lib-tests &coprod Bad named entity: coprod without a semi-colon 7 B
002065 html5lib/namedEntities/1658 html5lib-tests ∐ Named entity: coprod; with a semi-colon 8 B
002066 html5lib/namedEntities/1659 html5lib-tests © Named entity: copy without a semi-colon 5 B
002067 html5lib/namedEntities/1660 html5lib-tests © Named entity: copy; with a semi-colon 6 B
002068 html5lib/namedEntities/1661 html5lib-tests ℗ Named entity: copysr; with a semi-colon 8 B
002069 html5lib/namedEntities/1662 html5lib-tests &crarr Bad named entity: crarr without a semi-colon 6 B
002070 html5lib/namedEntities/1663 html5lib-tests ↵ Named entity: crarr; with a semi-colon 7 B
002071 html5lib/namedEntities/1664 html5lib-tests &cross Bad named entity: cross without a semi-colon 6 B
002072 html5lib/namedEntities/1665 html5lib-tests ✗ Named entity: cross; with a semi-colon 7 B
002073 html5lib/namedEntities/1666 html5lib-tests &cscr Bad named entity: cscr without a semi-colon 5 B
002074 html5lib/namedEntities/1667 html5lib-tests 𝒸 Named entity: cscr; with a semi-colon 6 B
002075 html5lib/namedEntities/1668 html5lib-tests &csub Bad named entity: csub without a semi-colon 5 B
002076 html5lib/namedEntities/1669 html5lib-tests ⫏ Named entity: csub; with a semi-colon 6 B
002077 html5lib/namedEntities/1670 html5lib-tests &csube Bad named entity: csube without a semi-colon 6 B
002078 html5lib/namedEntities/1671 html5lib-tests ⫑ Named entity: csube; with a semi-colon 7 B
002079 html5lib/namedEntities/1672 html5lib-tests &csup Bad named entity: csup without a semi-colon 5 B
002080 html5lib/namedEntities/1673 html5lib-tests ⫐ Named entity: csup; with a semi-colon 6 B
002081 html5lib/namedEntities/1674 html5lib-tests &csupe Bad named entity: csupe without a semi-colon 6 B
002082 html5lib/namedEntities/1675 html5lib-tests ⫒ Named entity: csupe; with a semi-colon 7 B
002083 html5lib/namedEntities/1676 html5lib-tests &ctdot Bad named entity: ctdot without a semi-colon 6 B
002084 html5lib/namedEntities/1677 html5lib-tests ⋯ Named entity: ctdot; with a semi-colon 7 B
002085 html5lib/namedEntities/1678 html5lib-tests &cudarrl Bad named entity: cudarrl without a semi-colon 8 B
002086 html5lib/namedEntities/1679 html5lib-tests ⤸ Named entity: cudarrl; with a semi-colon 9 B
002087 html5lib/namedEntities/1680 html5lib-tests &cudarrr Bad named entity: cudarrr without a semi-colon 8 B
002088 html5lib/namedEntities/1681 html5lib-tests ⤵ Named entity: cudarrr; with a semi-colon 9 B
002089 html5lib/namedEntities/1682 html5lib-tests &cuepr Bad named entity: cuepr without a semi-colon 6 B
002090 html5lib/namedEntities/1683 html5lib-tests ⋞ Named entity: cuepr; with a semi-colon 7 B
002091 html5lib/namedEntities/1684 html5lib-tests &cuesc Bad named entity: cuesc without a semi-colon 6 B
002092 html5lib/namedEntities/1685 html5lib-tests ⋟ Named entity: cuesc; with a semi-colon 7 B
002093 html5lib/namedEntities/1686 html5lib-tests &cularr Bad named entity: cularr without a semi-colon 7 B
002094 html5lib/namedEntities/1687 html5lib-tests ↶ Named entity: cularr; with a semi-colon 8 B
002095 html5lib/namedEntities/1688 html5lib-tests &cularrp Bad named entity: cularrp without a semi-colon 8 B
002096 html5lib/namedEntities/1689 html5lib-tests ⤽ Named entity: cularrp; with a semi-colon 9 B
002097 html5lib/namedEntities/1690 html5lib-tests &cup Bad named entity: cup without a semi-colon 4 B
002098 html5lib/namedEntities/1691 html5lib-tests ∪ Named entity: cup; with a semi-colon 5 B
002099 html5lib/namedEntities/1692 html5lib-tests &cupbrcap Bad named entity: cupbrcap without a semi-colon 9 B
002100 html5lib/namedEntities/1693 html5lib-tests ⩈ Named entity: cupbrcap; with a semi-colon 10 B
002101 html5lib/namedEntities/1694 html5lib-tests &cupcap Bad named entity: cupcap without a semi-colon 7 B
002102 html5lib/namedEntities/1695 html5lib-tests ⩆ Named entity: cupcap; with a semi-colon 8 B
002103 html5lib/namedEntities/1696 html5lib-tests &cupcup Bad named entity: cupcup without a semi-colon 7 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.