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
001350 html5lib/namedEntities/0943 html5lib-tests √ Named entity: Sqrt; with a semi-colon 6 B
001351 html5lib/namedEntities/0944 html5lib-tests &Square Bad named entity: Square without a semi-colon 7 B
001352 html5lib/namedEntities/0945 html5lib-tests □ Named entity: Square; with a semi-colon 8 B
001353 html5lib/namedEntities/0946 html5lib-tests &SquareIntersection Bad named entity: SquareIntersection without a semi-colon 19 B
001354 html5lib/namedEntities/0947 html5lib-tests ⊓ Named entity: SquareIntersection; with a semi-colon 20 B
001355 html5lib/namedEntities/0948 html5lib-tests &SquareSubset Bad named entity: SquareSubset without a semi-colon 13 B
001356 html5lib/namedEntities/0949 html5lib-tests ⊏ Named entity: SquareSubset; with a semi-colon 14 B
001357 html5lib/namedEntities/0950 html5lib-tests &SquareSubsetEqual Bad named entity: SquareSubsetEqual without a semi-colon 18 B
001358 html5lib/namedEntities/0951 html5lib-tests ⊑ Named entity: SquareSubsetEqual; with a semi-colon 19 B
001359 html5lib/namedEntities/0952 html5lib-tests &SquareSuperset Bad named entity: SquareSuperset without a semi-colon 15 B
001360 html5lib/namedEntities/0953 html5lib-tests ⊐ Named entity: SquareSuperset; with a semi-colon 16 B
001361 html5lib/namedEntities/0954 html5lib-tests &SquareSupersetEqual Bad named entity: SquareSupersetEqual without a semi-colon 20 B
001362 html5lib/namedEntities/0955 html5lib-tests ⊒ Named entity: SquareSupersetEqual; with a semi-colon 21 B
001363 html5lib/namedEntities/0956 html5lib-tests &SquareUnion Bad named entity: SquareUnion without a semi-colon 12 B
001364 html5lib/namedEntities/0957 html5lib-tests ⊔ Named entity: SquareUnion; with a semi-colon 13 B
001365 html5lib/namedEntities/0958 html5lib-tests &Sscr Bad named entity: Sscr without a semi-colon 5 B
001366 html5lib/namedEntities/0959 html5lib-tests 𝒮 Named entity: Sscr; with a semi-colon 6 B
001367 html5lib/namedEntities/0960 html5lib-tests &Star Bad named entity: Star without a semi-colon 5 B
001368 html5lib/namedEntities/0961 html5lib-tests ⋆ Named entity: Star; with a semi-colon 6 B
001369 html5lib/namedEntities/0962 html5lib-tests &Sub Bad named entity: Sub without a semi-colon 4 B
001370 html5lib/namedEntities/0963 html5lib-tests ⋐ Named entity: Sub; with a semi-colon 5 B
001371 html5lib/namedEntities/0964 html5lib-tests &Subset Bad named entity: Subset without a semi-colon 7 B
001372 html5lib/namedEntities/0965 html5lib-tests ⋐ Named entity: Subset; with a semi-colon 8 B
001373 html5lib/namedEntities/0966 html5lib-tests &SubsetEqual Bad named entity: SubsetEqual without a semi-colon 12 B
001374 html5lib/namedEntities/0967 html5lib-tests ⊆ Named entity: SubsetEqual; with a semi-colon 13 B
001375 html5lib/namedEntities/0968 html5lib-tests &Succeeds Bad named entity: Succeeds without a semi-colon 9 B
001376 html5lib/namedEntities/0969 html5lib-tests ≻ Named entity: Succeeds; with a semi-colon 10 B
001377 html5lib/namedEntities/0970 html5lib-tests &SucceedsEqual Bad named entity: SucceedsEqual without a semi-colon 14 B
001378 html5lib/namedEntities/0971 html5lib-tests ⪰ Named entity: SucceedsEqual; with a semi-colon 15 B
001379 html5lib/namedEntities/0972 html5lib-tests &SucceedsSlantEqual Bad named entity: SucceedsSlantEqual without a semi-colon 19 B
001380 html5lib/namedEntities/0973 html5lib-tests ≽ Named entity: SucceedsSlantEqual; with a semi-colon 20 B
001381 html5lib/namedEntities/0974 html5lib-tests &SucceedsTilde Bad named entity: SucceedsTilde without a semi-colon 14 B
001382 html5lib/namedEntities/0975 html5lib-tests ≿ Named entity: SucceedsTilde; with a semi-colon 15 B
001383 html5lib/namedEntities/0976 html5lib-tests &SuchThat Bad named entity: SuchThat without a semi-colon 9 B
001384 html5lib/namedEntities/0977 html5lib-tests ∋ Named entity: SuchThat; with a semi-colon 10 B
001385 html5lib/namedEntities/0978 html5lib-tests &Sum Bad named entity: Sum without a semi-colon 4 B
001386 html5lib/namedEntities/0979 html5lib-tests ∑ Named entity: Sum; with a semi-colon 5 B
001387 html5lib/namedEntities/0980 html5lib-tests &Sup Bad named entity: Sup without a semi-colon 4 B
001388 html5lib/namedEntities/0981 html5lib-tests ⋑ Named entity: Sup; with a semi-colon 5 B
001389 html5lib/namedEntities/0982 html5lib-tests &Superset Bad named entity: Superset without a semi-colon 9 B
001390 html5lib/namedEntities/0983 html5lib-tests ⊃ Named entity: Superset; with a semi-colon 10 B
001391 html5lib/namedEntities/0984 html5lib-tests &SupersetEqual Bad named entity: SupersetEqual without a semi-colon 14 B
001392 html5lib/namedEntities/0985 html5lib-tests ⊇ Named entity: SupersetEqual; with a semi-colon 15 B
001393 html5lib/namedEntities/0986 html5lib-tests &Supset Bad named entity: Supset without a semi-colon 7 B
001394 html5lib/namedEntities/0987 html5lib-tests ⋑ Named entity: Supset; with a semi-colon 8 B
001395 html5lib/namedEntities/0988 html5lib-tests Þ Named entity: THORN without a semi-colon 6 B
001396 html5lib/namedEntities/0989 html5lib-tests Þ Named entity: THORN; with a semi-colon 7 B
001397 html5lib/namedEntities/0990 html5lib-tests &TRADE Bad named entity: TRADE without a semi-colon 6 B
001398 html5lib/namedEntities/0991 html5lib-tests ™ Named entity: TRADE; with a semi-colon 7 B
001399 html5lib/namedEntities/0992 html5lib-tests &TSHcy Bad named entity: TSHcy 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.