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
005800 generated/0965 Generated ␀␍⟨U+FFFF⟩&⟨U+00A0⟩ &sup℘ˇ7& 40 B
005801 generated/0966 Generated &Doⅅ;0…Z 15 B
005802 generated/0967 Generated ␉⟨U+FFFF⟩= 10 B
005803 generated/0968 Generated &fZ⪹ѓAx9>&napp⎵&#…x=&Vertica 65 B
005804 generated/0969 Generated #F#∩␉ Z'xZ 16 B
005805 generated/0970 Generated 󘳛'􍤲� é&DiacriticalDoubleAcuteZ7;␀>Я' 65 B
005806 generated/0971 Generated x񛛥€Ì� 񻲓gx␉񰀄xF>>7 50 B
005807 generated/0972 Generated F�g&l􎮛=fF7&�⟨U+00A0⟩>␀Ю⟨U+10FFFF⟩= 58 B
005808 generated/0973 Generated ⟨U+00A0⟩=񭡏g⟨U+10FFFF⟩�󄙗␊␊x&⇖x&alep� 򯊮 75 B
005809 generated/0974 Generated ╩0&ni⟨U+FFFF⟩ &Empty&Jopf 30 B
005810 generated/0975 Generated 􍛱g= 11 B
005811 generated/0976 Generated 7 1 B
005812 generated/0977 Generated 񮒦f⟨U+10FFFF⟩<򊺉&it 32 B
005813 generated/0978 Generated f;� Ζ␀Z7"9 21 B
005814 generated/0979 Generated ␍񯉑A񬤜g9␍񍪀7􏞿é' 47 B
005815 generated/0980 Generated €� 10 B
005816 generated/0981 Generated >€򐄍ga␍񫤩g⟨U+FFFF⟩;𝔼é0&ga򯛨 54 B
005817 generated/0982 Generated &9 6 B
005818 generated/0983 Generated 日󱲿7Z�-0>9'򹌰⥜␍¶󜟜 69 B
005819 generated/0984 Generated &urcorn⟨U+FFFF⟩ f␀€󋡏g&>r日⊥�x 51 B
005820 generated/0985 Generated a񛅢␍ 15 B
005821 generated/0986 Generated &␉ф€F⩽␊ 17 B
005822 generated/0987 Generated &sup&bdq&efr񭏿"Ax7Z󣱮g 42 B
005823 generated/0988 Generated 󄽛g9␉␉9 '€ f7�᫥ 43 B
005824 generated/0989 Generated ␀⟨U+FFFF⟩ "⟨U+2060⟩𕌒g€Fa€&Short= 45 B
005825 generated/0990 Generated 󎈽⟨U+FFFF⟩�x␀"&succc0␉␀ŸZ􋝭g≎ 67 B
005826 generated/0991 Generated ⨿…=é 7ℭ⟨U+10FFFF⟩𾼷g0 Z0 46 B
005827 generated/0992 Generated ⟨U+10FFFF⟩x🎉 F 16 B
005828 generated/0993 Generated Ax≵>&€#􄝃gZx 34 B
005829 generated/0994 Generated ⇃é&mapsto␉x"#񗌓 39 B
005830 generated/0995 Generated 日x-Ź'f␊€ 19 B
005831 generated/0996 Generated 򝄐⊢日&epsi 27 B
005832 generated/0997 Generated 0 &mumapa🎉'€A7 ⟨U+00A0⟩0"a 40 B
005833 generated/0998 Generated � &𝒫ℜ򪤱g␊񪮡" 38 B
005834 generated/0999 Generated ␉⟶🎉␍&c…x&pcy⟨U+00A0⟩�x&R␀#␉A 64 B
005835 generated/1000 Generated &nVda9 6 B
005836 generated/1001 Generated &frac5='€&sho⊗󑃃 38 B
005837 generated/1002 Generated ∂̸f🎉…◊ ␍⟨U+10FFFF⟩ €">a≿±񊘲 76 B
005838 generated/1003 Generated &Nsc€0 8 B
005839 generated/1004 Generated "&sup�Z日0& 14 B
005840 generated/1005 Generated &swA␍𝕪򼊀g 20 B
005841 generated/1006 Generated 0Z#⦶">FAx 17 B
005842 generated/1007 Generated #∩Ю⊓︀=&raqu␉é𝔐␊𒯃g#&Cap 49 B
005843 generated/1008 Generated &an򍌓x日⊥Ã 31 B
005844 generated/1009 Generated ␍日&pfA 򢆚 21 B
005845 generated/1010 Generated <&r⋂𭢱日🎉␊é␍ €-򨩚 56 B
005846 generated/1011 Generated &Idoté𝕊򰵓򏖬&shortpa␉9日𦈩g日€x 61 B
005847 generated/1012 Generated 򂺚€ 13 B
005848 generated/1013 Generated 日␍ ⇏Z 22 B
005849 generated/1014 Generated F&z&Tcaro#␀x&plu򥥄g 25 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.