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
Clear

5,931 of 6,835 cases

Case Name Expected Note Size
002904 html5lib/namedEntities/2497 html5lib-tests &lesseqqgtr Bad named entity: lesseqqgtr without a semi-colon 11 B
002905 html5lib/namedEntities/2498 html5lib-tests ⪋ Named entity: lesseqqgtr; with a semi-colon 12 B
002906 html5lib/namedEntities/2499 html5lib-tests &lessgtr Bad named entity: lessgtr without a semi-colon 8 B
002907 html5lib/namedEntities/2500 html5lib-tests ≶ Named entity: lessgtr; with a semi-colon 9 B
002908 html5lib/namedEntities/2501 html5lib-tests &lesssim Bad named entity: lesssim without a semi-colon 8 B
002909 html5lib/namedEntities/2502 html5lib-tests ≲ Named entity: lesssim; with a semi-colon 9 B
002910 html5lib/namedEntities/2503 html5lib-tests &lfisht Bad named entity: lfisht without a semi-colon 7 B
002911 html5lib/namedEntities/2504 html5lib-tests ⥼ Named entity: lfisht; with a semi-colon 8 B
002912 html5lib/namedEntities/2505 html5lib-tests &lfloor Bad named entity: lfloor without a semi-colon 7 B
002913 html5lib/namedEntities/2506 html5lib-tests ⌊ Named entity: lfloor; with a semi-colon 8 B
002914 html5lib/namedEntities/2507 html5lib-tests &lfr Bad named entity: lfr without a semi-colon 4 B
002915 html5lib/namedEntities/2508 html5lib-tests 𝔩 Named entity: lfr; with a semi-colon 5 B
002916 html5lib/namedEntities/2509 html5lib-tests &lg Bad named entity: lg without a semi-colon 3 B
002917 html5lib/namedEntities/2510 html5lib-tests ≶ Named entity: lg; with a semi-colon 4 B
002918 html5lib/namedEntities/2511 html5lib-tests &lgE Bad named entity: lgE without a semi-colon 4 B
002919 html5lib/namedEntities/2512 html5lib-tests ⪑ Named entity: lgE; with a semi-colon 5 B
002920 html5lib/namedEntities/2513 html5lib-tests &lhard Bad named entity: lhard without a semi-colon 6 B
002921 html5lib/namedEntities/2514 html5lib-tests ↽ Named entity: lhard; with a semi-colon 7 B
002922 html5lib/namedEntities/2515 html5lib-tests &lharu Bad named entity: lharu without a semi-colon 6 B
002923 html5lib/namedEntities/2516 html5lib-tests ↼ Named entity: lharu; with a semi-colon 7 B
002924 html5lib/namedEntities/2517 html5lib-tests &lharul Bad named entity: lharul without a semi-colon 7 B
002925 html5lib/namedEntities/2518 html5lib-tests ⥪ Named entity: lharul; with a semi-colon 8 B
002926 html5lib/namedEntities/2519 html5lib-tests &lhblk Bad named entity: lhblk without a semi-colon 6 B
002927 html5lib/namedEntities/2520 html5lib-tests ▄ Named entity: lhblk; with a semi-colon 7 B
002928 html5lib/namedEntities/2521 html5lib-tests &ljcy Bad named entity: ljcy without a semi-colon 5 B
002929 html5lib/namedEntities/2522 html5lib-tests љ Named entity: ljcy; with a semi-colon 6 B
002930 html5lib/namedEntities/2523 html5lib-tests &ll Bad named entity: ll without a semi-colon 3 B
002931 html5lib/namedEntities/2524 html5lib-tests ≪ Named entity: ll; with a semi-colon 4 B
002932 html5lib/namedEntities/2525 html5lib-tests &llarr Bad named entity: llarr without a semi-colon 6 B
002933 html5lib/namedEntities/2526 html5lib-tests ⇇ Named entity: llarr; with a semi-colon 7 B
002934 html5lib/namedEntities/2527 html5lib-tests &llcorner Bad named entity: llcorner without a semi-colon 9 B
002935 html5lib/namedEntities/2528 html5lib-tests ⌞ Named entity: llcorner; with a semi-colon 10 B
002936 html5lib/namedEntities/2529 html5lib-tests &llhard Bad named entity: llhard without a semi-colon 7 B
002937 html5lib/namedEntities/2530 html5lib-tests ⥫ Named entity: llhard; with a semi-colon 8 B
002938 html5lib/namedEntities/2531 html5lib-tests &lltri Bad named entity: lltri without a semi-colon 6 B
002939 html5lib/namedEntities/2532 html5lib-tests ◺ Named entity: lltri; with a semi-colon 7 B
002940 html5lib/namedEntities/2533 html5lib-tests &lmidot Bad named entity: lmidot without a semi-colon 7 B
002941 html5lib/namedEntities/2534 html5lib-tests ŀ Named entity: lmidot; with a semi-colon 8 B
002942 html5lib/namedEntities/2535 html5lib-tests &lmoust Bad named entity: lmoust without a semi-colon 7 B
002943 html5lib/namedEntities/2536 html5lib-tests ⎰ Named entity: lmoust; with a semi-colon 8 B
002944 html5lib/namedEntities/2537 html5lib-tests &lmoustache Bad named entity: lmoustache without a semi-colon 11 B
002945 html5lib/namedEntities/2538 html5lib-tests ⎰ Named entity: lmoustache; with a semi-colon 12 B
002946 html5lib/namedEntities/2539 html5lib-tests &lnE Bad named entity: lnE without a semi-colon 4 B
002947 html5lib/namedEntities/2540 html5lib-tests ≨ Named entity: lnE; with a semi-colon 5 B
002948 html5lib/namedEntities/2541 html5lib-tests &lnap Bad named entity: lnap without a semi-colon 5 B
002949 html5lib/namedEntities/2542 html5lib-tests ⪉ Named entity: lnap; with a semi-colon 6 B
002950 html5lib/namedEntities/2543 html5lib-tests &lnapprox Bad named entity: lnapprox without a semi-colon 9 B
002951 html5lib/namedEntities/2544 html5lib-tests ⪉ Named entity: lnapprox; with a semi-colon 10 B
002952 html5lib/namedEntities/2545 html5lib-tests &lne Bad named entity: lne without a semi-colon 4 B
002953 html5lib/namedEntities/2546 html5lib-tests ⪇ Named entity: lne; with 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.