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
001450 html5lib/namedEntities/1043 html5lib-tests Û Named entity: Ucirc; with a semi-colon 7 B
001451 html5lib/namedEntities/1044 html5lib-tests &Ucy Bad named entity: Ucy without a semi-colon 4 B
001452 html5lib/namedEntities/1045 html5lib-tests У Named entity: Ucy; with a semi-colon 5 B
001453 html5lib/namedEntities/1046 html5lib-tests &Udblac Bad named entity: Udblac without a semi-colon 7 B
001454 html5lib/namedEntities/1047 html5lib-tests Ű Named entity: Udblac; with a semi-colon 8 B
001455 html5lib/namedEntities/1048 html5lib-tests &Ufr Bad named entity: Ufr without a semi-colon 4 B
001456 html5lib/namedEntities/1049 html5lib-tests 𝔘 Named entity: Ufr; with a semi-colon 5 B
001457 html5lib/namedEntities/1050 html5lib-tests Ù Named entity: Ugrave without a semi-colon 7 B
001458 html5lib/namedEntities/1051 html5lib-tests Ù Named entity: Ugrave; with a semi-colon 8 B
001459 html5lib/namedEntities/1052 html5lib-tests &Umacr Bad named entity: Umacr without a semi-colon 6 B
001460 html5lib/namedEntities/1053 html5lib-tests Ū Named entity: Umacr; with a semi-colon 7 B
001461 html5lib/namedEntities/1054 html5lib-tests &UnderBar Bad named entity: UnderBar without a semi-colon 9 B
001462 html5lib/namedEntities/1055 html5lib-tests _ Named entity: UnderBar; with a semi-colon 10 B
001463 html5lib/namedEntities/1056 html5lib-tests &UnderBrace Bad named entity: UnderBrace without a semi-colon 11 B
001464 html5lib/namedEntities/1057 html5lib-tests ⏟ Named entity: UnderBrace; with a semi-colon 12 B
001465 html5lib/namedEntities/1058 html5lib-tests &UnderBracket Bad named entity: UnderBracket without a semi-colon 13 B
001466 html5lib/namedEntities/1059 html5lib-tests ⎵ Named entity: UnderBracket; with a semi-colon 14 B
001467 html5lib/namedEntities/1060 html5lib-tests &UnderParenthesis Bad named entity: UnderParenthesis without a semi-colon 17 B
001468 html5lib/namedEntities/1061 html5lib-tests ⏝ Named entity: UnderParenthesis; with a semi-colon 18 B
001469 html5lib/namedEntities/1062 html5lib-tests &Union Bad named entity: Union without a semi-colon 6 B
001470 html5lib/namedEntities/1063 html5lib-tests ⋃ Named entity: Union; with a semi-colon 7 B
001471 html5lib/namedEntities/1064 html5lib-tests &UnionPlus Bad named entity: UnionPlus without a semi-colon 10 B
001472 html5lib/namedEntities/1065 html5lib-tests ⊎ Named entity: UnionPlus; with a semi-colon 11 B
001473 html5lib/namedEntities/1066 html5lib-tests &Uogon Bad named entity: Uogon without a semi-colon 6 B
001474 html5lib/namedEntities/1067 html5lib-tests Ų Named entity: Uogon; with a semi-colon 7 B
001475 html5lib/namedEntities/1068 html5lib-tests &Uopf Bad named entity: Uopf without a semi-colon 5 B
001476 html5lib/namedEntities/1069 html5lib-tests 𝕌 Named entity: Uopf; with a semi-colon 6 B
001477 html5lib/namedEntities/1070 html5lib-tests &UpArrow Bad named entity: UpArrow without a semi-colon 8 B
001478 html5lib/namedEntities/1071 html5lib-tests ↑ Named entity: UpArrow; with a semi-colon 9 B
001479 html5lib/namedEntities/1072 html5lib-tests &UpArrowBar Bad named entity: UpArrowBar without a semi-colon 11 B
001480 html5lib/namedEntities/1073 html5lib-tests ⤒ Named entity: UpArrowBar; with a semi-colon 12 B
001481 html5lib/namedEntities/1074 html5lib-tests &UpArrowDownArrow Bad named entity: UpArrowDownArrow without a semi-colon 17 B
001482 html5lib/namedEntities/1075 html5lib-tests ⇅ Named entity: UpArrowDownArrow; with a semi-colon 18 B
001483 html5lib/namedEntities/1076 html5lib-tests &UpDownArrow Bad named entity: UpDownArrow without a semi-colon 12 B
001484 html5lib/namedEntities/1077 html5lib-tests ↕ Named entity: UpDownArrow; with a semi-colon 13 B
001485 html5lib/namedEntities/1078 html5lib-tests &UpEquilibrium Bad named entity: UpEquilibrium without a semi-colon 14 B
001486 html5lib/namedEntities/1079 html5lib-tests ⥮ Named entity: UpEquilibrium; with a semi-colon 15 B
001487 html5lib/namedEntities/1080 html5lib-tests &UpTee Bad named entity: UpTee without a semi-colon 6 B
001488 html5lib/namedEntities/1081 html5lib-tests ⊥ Named entity: UpTee; with a semi-colon 7 B
001489 html5lib/namedEntities/1082 html5lib-tests &UpTeeArrow Bad named entity: UpTeeArrow without a semi-colon 11 B
001490 html5lib/namedEntities/1083 html5lib-tests ↥ Named entity: UpTeeArrow; with a semi-colon 12 B
001491 html5lib/namedEntities/1084 html5lib-tests &Uparrow Bad named entity: Uparrow without a semi-colon 8 B
001492 html5lib/namedEntities/1085 html5lib-tests ⇑ Named entity: Uparrow; with a semi-colon 9 B
001493 html5lib/namedEntities/1086 html5lib-tests &Updownarrow Bad named entity: Updownarrow without a semi-colon 12 B
001494 html5lib/namedEntities/1087 html5lib-tests ⇕ Named entity: Updownarrow; with a semi-colon 13 B
001495 html5lib/namedEntities/1088 html5lib-tests &UpperLeftArrow Bad named entity: UpperLeftArrow without a semi-colon 15 B
001496 html5lib/namedEntities/1089 html5lib-tests ↖ Named entity: UpperLeftArrow; with a semi-colon 16 B
001497 html5lib/namedEntities/1090 html5lib-tests &UpperRightArrow Bad named entity: UpperRightArrow without a semi-colon 16 B
001498 html5lib/namedEntities/1091 html5lib-tests ↗ Named entity: UpperRightArrow; with a semi-colon 17 B
001499 html5lib/namedEntities/1092 html5lib-tests &Upsi Bad named entity: Upsi without a semi-colon 5 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.