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
006450 generated/1615 Generated &Bc�&n⟨U+10FFFF⟩ º{񍧑g é0f0= 53 B
006451 generated/1616 Generated ␀񒽍&box␀ 15 B
006452 generated/1617 Generated A ␉ℏ🎉🎉#×&fork&se&E€ 43 B
006453 generated/1618 Generated ;↛⟨U+2061⟩↣-🎉␊& 38 B
006454 generated/1619 Generated >&us"&boxuL�⟨U+FFFF⟩=∸=F⟨U+FFFF⟩Ѕ␍ 49 B
006455 generated/1620 Generated €⊃⃒ 12 B
006456 generated/1621 Generated a␍x&lopf€𽍡g 23 B
006457 generated/1622 Generated -Faé≳&loopa 25 B
006458 generated/1623 Generated …x 6 B
006459 generated/1624 Generated 7␉∈&sfro=␀񕪓򂰉&lh⋟⋗7< 53 B
006460 generated/1625 Generated 񤙢␍fx 12 B
006461 generated/1626 Generated ↭>🎉񹁯x␀⪩�é&Ograf0 46 B
006462 generated/1627 Generated ␍␍⋏␉ &lhard"…␉é覜… 47 B
006463 generated/1628 Generated 🎉<"€=&qprime' ␍&NotLeftTr 30 B
006464 generated/1629 Generated ;&ohba>"Z€ 13 B
006465 generated/1630 Generated 󜎃⟨U+2062⟩🎉␍򌝶g␍é<'␍&pZ⟨U+10FFFF⟩ € 61 B
006466 generated/1631 Generated #x日 5 B
006467 generated/1632 Generated ␍#␉7><&L7a␊F&Jukcy&laq 22 B
006468 generated/1633 Generated ≡"򒇘=򴫍&r&󚟯=>=#&triang-&box 54 B
006469 generated/1634 Generated ⋍�x򝳼�x& &E␊&b􇑸 Ê翫 61 B
006470 generated/1635 Generated ␉>&u⍼⇤#󝗹''≐&⎴#&&Scy 51 B
006471 generated/1636 Generated ␊␉€󸾼g&utilde&l󕤆< 33 B
006472 generated/1637 Generated x€ 4 B
006473 generated/1638 Generated &d⇕␀9⫆̸&LessEqualGx 34 B
006474 generated/1639 Generated �g␉>F-󕐦␊f#żx€򱇣g 46 B
006475 generated/1640 Generated "򵯧9Õ␊Ax#򠳮🎉#ℭ€ 56 B
006476 generated/1641 Generated с日ℬ 16 B
006477 generated/1642 Generated &awc񘻡␍€ 18 B
006478 generated/1643 Generated #9&angx&squar⟨U+FFFF⟩ 21 B
006479 generated/1644 Generated =⥩󟐿 18 B
006480 generated/1645 Generated 󘿮g⟨U+FFFF⟩ 9f󥙾x򔓰g' 38 B
006481 generated/1646 Generated &NotTildeFu󫃮g�g-󑐉⋉ 50 B
006482 generated/1647 Generated f<=Ax<␍&n␉f0Z 16 B
006483 generated/1648 Generated ⊵#'0␍9&pref 7 32 B
006484 generated/1649 Generated ⟨U+10FFFF⟩⟨U+00A0⟩␊€⋔€&oh&bé-0F 41 B
006485 generated/1650 Generated a񅻟;␊>€# 17 B
006486 generated/1651 Generated ␀x􁀭&€ ␍񵻕g␉ é>񷷟 43 B
006487 generated/1652 Generated 𒒨g򍽏>󻓄⟨U+2062⟩� 53 B
006488 generated/1653 Generated "日&a9'a␉␀≍日&'򔧧=" 35 B
006489 generated/1654 Generated A&backco日𝔸𸖘🎉␊ 34 B
006490 generated/1655 Generated 9&b<&horbar␉7𞿎 23 B
006491 generated/1656 Generated &su&cuv�x␊𣭓>&ca 25 B
006492 generated/1657 Generated 7»&�x<⃒&l񅚗g€⟨U+10FFFF⟩x¹F7< &leftl& 76 B
006493 generated/1658 Generated 󞖒g�␍ 🎉␊&supdsF>f🎉… >⩼A 日󙾄g 76 B
006494 generated/1659 Generated 9A&&Fourx'&-␍ 20 B
006495 generated/1660 Generated ␀␍񃣗aZ 14 B
006496 generated/1661 Generated ;&🎉 6 B
006497 generated/1662 Generated &xdtr= 6 B
006498 generated/1663 Generated 󕢢g#&for< 15 B
006499 generated/1664 Generated f␍9␉␀񂕾򜳆g;<é&IJl"&b; 35 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.