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
000950 html5lib/namedEntities/0543 html5lib-tests ⟵ Named entity: LongLeftArrow; with a semi-colon 15 B
000951 html5lib/namedEntities/0544 html5lib-tests &LongLeftRightArrow Bad named entity: LongLeftRightArrow without a semi-colon 19 B
000952 html5lib/namedEntities/0545 html5lib-tests ⟷ Named entity: LongLeftRightArrow; with a semi-colon 20 B
000953 html5lib/namedEntities/0546 html5lib-tests &LongRightArrow Bad named entity: LongRightArrow without a semi-colon 15 B
000954 html5lib/namedEntities/0547 html5lib-tests ⟶ Named entity: LongRightArrow; with a semi-colon 16 B
000955 html5lib/namedEntities/0548 html5lib-tests &Longleftarrow Bad named entity: Longleftarrow without a semi-colon 14 B
000956 html5lib/namedEntities/0549 html5lib-tests ⟸ Named entity: Longleftarrow; with a semi-colon 15 B
000957 html5lib/namedEntities/0550 html5lib-tests &Longleftrightarrow Bad named entity: Longleftrightarrow without a semi-colon 19 B
000958 html5lib/namedEntities/0551 html5lib-tests ⟺ Named entity: Longleftrightarrow; with a semi-colon 20 B
000959 html5lib/namedEntities/0552 html5lib-tests &Longrightarrow Bad named entity: Longrightarrow without a semi-colon 15 B
000960 html5lib/namedEntities/0553 html5lib-tests ⟹ Named entity: Longrightarrow; with a semi-colon 16 B
000961 html5lib/namedEntities/0554 html5lib-tests &Lopf Bad named entity: Lopf without a semi-colon 5 B
000962 html5lib/namedEntities/0555 html5lib-tests 𝕃 Named entity: Lopf; with a semi-colon 6 B
000963 html5lib/namedEntities/0556 html5lib-tests &LowerLeftArrow Bad named entity: LowerLeftArrow without a semi-colon 15 B
000964 html5lib/namedEntities/0557 html5lib-tests ↙ Named entity: LowerLeftArrow; with a semi-colon 16 B
000965 html5lib/namedEntities/0558 html5lib-tests &LowerRightArrow Bad named entity: LowerRightArrow without a semi-colon 16 B
000966 html5lib/namedEntities/0559 html5lib-tests ↘ Named entity: LowerRightArrow; with a semi-colon 17 B
000967 html5lib/namedEntities/0560 html5lib-tests &Lscr Bad named entity: Lscr without a semi-colon 5 B
000968 html5lib/namedEntities/0561 html5lib-tests ℒ Named entity: Lscr; with a semi-colon 6 B
000969 html5lib/namedEntities/0562 html5lib-tests &Lsh Bad named entity: Lsh without a semi-colon 4 B
000970 html5lib/namedEntities/0563 html5lib-tests ↰ Named entity: Lsh; with a semi-colon 5 B
000971 html5lib/namedEntities/0564 html5lib-tests &Lstrok Bad named entity: Lstrok without a semi-colon 7 B
000972 html5lib/namedEntities/0565 html5lib-tests Ł Named entity: Lstrok; with a semi-colon 8 B
000973 html5lib/namedEntities/0566 html5lib-tests &Lt Bad named entity: Lt without a semi-colon 3 B
000974 html5lib/namedEntities/0567 html5lib-tests ≪ Named entity: Lt; with a semi-colon 4 B
000975 html5lib/namedEntities/0568 html5lib-tests &Map Bad named entity: Map without a semi-colon 4 B
000976 html5lib/namedEntities/0569 html5lib-tests ⤅ Named entity: Map; with a semi-colon 5 B
000977 html5lib/namedEntities/0570 html5lib-tests &Mcy Bad named entity: Mcy without a semi-colon 4 B
000978 html5lib/namedEntities/0571 html5lib-tests М Named entity: Mcy; with a semi-colon 5 B
000979 html5lib/namedEntities/0572 html5lib-tests &MediumSpace Bad named entity: MediumSpace without a semi-colon 12 B
000980 html5lib/namedEntities/0573 html5lib-tests   Named entity: MediumSpace; with a semi-colon 13 B
000981 html5lib/namedEntities/0574 html5lib-tests &Mellintrf Bad named entity: Mellintrf without a semi-colon 10 B
000982 html5lib/namedEntities/0575 html5lib-tests ℳ Named entity: Mellintrf; with a semi-colon 11 B
000983 html5lib/namedEntities/0576 html5lib-tests &Mfr Bad named entity: Mfr without a semi-colon 4 B
000984 html5lib/namedEntities/0577 html5lib-tests 𝔐 Named entity: Mfr; with a semi-colon 5 B
000985 html5lib/namedEntities/0578 html5lib-tests &MinusPlus Bad named entity: MinusPlus without a semi-colon 10 B
000986 html5lib/namedEntities/0579 html5lib-tests ∓ Named entity: MinusPlus; with a semi-colon 11 B
000987 html5lib/namedEntities/0580 html5lib-tests &Mopf Bad named entity: Mopf without a semi-colon 5 B
000988 html5lib/namedEntities/0581 html5lib-tests 𝕄 Named entity: Mopf; with a semi-colon 6 B
000989 html5lib/namedEntities/0582 html5lib-tests &Mscr Bad named entity: Mscr without a semi-colon 5 B
000990 html5lib/namedEntities/0583 html5lib-tests ℳ Named entity: Mscr; with a semi-colon 6 B
000991 html5lib/namedEntities/0584 html5lib-tests &Mu Bad named entity: Mu without a semi-colon 3 B
000992 html5lib/namedEntities/0585 html5lib-tests Μ Named entity: Mu; with a semi-colon 4 B
000993 html5lib/namedEntities/0586 html5lib-tests &NJcy Bad named entity: NJcy without a semi-colon 5 B
000994 html5lib/namedEntities/0587 html5lib-tests Њ Named entity: NJcy; with a semi-colon 6 B
000995 html5lib/namedEntities/0588 html5lib-tests &Nacute Bad named entity: Nacute without a semi-colon 7 B
000996 html5lib/namedEntities/0589 html5lib-tests Ń Named entity: Nacute; with a semi-colon 8 B
000997 html5lib/namedEntities/0590 html5lib-tests &Ncaron Bad named entity: Ncaron without a semi-colon 7 B
000998 html5lib/namedEntities/0591 html5lib-tests Ň Named entity: Ncaron; with a semi-colon 8 B
000999 html5lib/namedEntities/0592 html5lib-tests &Ncedil Bad named entity: Ncedil 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.