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
001700 html5lib/namedEntities/1293 html5lib-tests ' Named entity: apos; with a semi-colon 6 B
001701 html5lib/namedEntities/1294 html5lib-tests &approx Bad named entity: approx without a semi-colon 7 B
001702 html5lib/namedEntities/1295 html5lib-tests ≈ Named entity: approx; with a semi-colon 8 B
001703 html5lib/namedEntities/1296 html5lib-tests &approxeq Bad named entity: approxeq without a semi-colon 9 B
001704 html5lib/namedEntities/1297 html5lib-tests ≊ Named entity: approxeq; with a semi-colon 10 B
001705 html5lib/namedEntities/1298 html5lib-tests å Named entity: aring without a semi-colon 6 B
001706 html5lib/namedEntities/1299 html5lib-tests å Named entity: aring; with a semi-colon 7 B
001707 html5lib/namedEntities/1300 html5lib-tests &ascr Bad named entity: ascr without a semi-colon 5 B
001708 html5lib/namedEntities/1301 html5lib-tests 𝒶 Named entity: ascr; with a semi-colon 6 B
001709 html5lib/namedEntities/1302 html5lib-tests &ast Bad named entity: ast without a semi-colon 4 B
001710 html5lib/namedEntities/1303 html5lib-tests * Named entity: ast; with a semi-colon 5 B
001711 html5lib/namedEntities/1304 html5lib-tests &asymp Bad named entity: asymp without a semi-colon 6 B
001712 html5lib/namedEntities/1305 html5lib-tests ≈ Named entity: asymp; with a semi-colon 7 B
001713 html5lib/namedEntities/1306 html5lib-tests &asympeq Bad named entity: asympeq without a semi-colon 8 B
001714 html5lib/namedEntities/1307 html5lib-tests ≍ Named entity: asympeq; with a semi-colon 9 B
001715 html5lib/namedEntities/1308 html5lib-tests ã Named entity: atilde without a semi-colon 7 B
001716 html5lib/namedEntities/1309 html5lib-tests ã Named entity: atilde; with a semi-colon 8 B
001717 html5lib/namedEntities/1310 html5lib-tests ä Named entity: auml without a semi-colon 5 B
001718 html5lib/namedEntities/1311 html5lib-tests ä Named entity: auml; with a semi-colon 6 B
001719 html5lib/namedEntities/1312 html5lib-tests &awconint Bad named entity: awconint without a semi-colon 9 B
001720 html5lib/namedEntities/1313 html5lib-tests ∳ Named entity: awconint; with a semi-colon 10 B
001721 html5lib/namedEntities/1314 html5lib-tests &awint Bad named entity: awint without a semi-colon 6 B
001722 html5lib/namedEntities/1315 html5lib-tests ⨑ Named entity: awint; with a semi-colon 7 B
001723 html5lib/namedEntities/1316 html5lib-tests &bNot Bad named entity: bNot without a semi-colon 5 B
001724 html5lib/namedEntities/1317 html5lib-tests ⫭ Named entity: bNot; with a semi-colon 6 B
001725 html5lib/namedEntities/1318 html5lib-tests &backcong Bad named entity: backcong without a semi-colon 9 B
001726 html5lib/namedEntities/1319 html5lib-tests ≌ Named entity: backcong; with a semi-colon 10 B
001727 html5lib/namedEntities/1320 html5lib-tests &backepsilon Bad named entity: backepsilon without a semi-colon 12 B
001728 html5lib/namedEntities/1321 html5lib-tests ϶ Named entity: backepsilon; with a semi-colon 13 B
001729 html5lib/namedEntities/1322 html5lib-tests &backprime Bad named entity: backprime without a semi-colon 10 B
001730 html5lib/namedEntities/1323 html5lib-tests ‵ Named entity: backprime; with a semi-colon 11 B
001731 html5lib/namedEntities/1324 html5lib-tests &backsim Bad named entity: backsim without a semi-colon 8 B
001732 html5lib/namedEntities/1325 html5lib-tests ∽ Named entity: backsim; with a semi-colon 9 B
001733 html5lib/namedEntities/1326 html5lib-tests &backsimeq Bad named entity: backsimeq without a semi-colon 10 B
001734 html5lib/namedEntities/1327 html5lib-tests ⋍ Named entity: backsimeq; with a semi-colon 11 B
001735 html5lib/namedEntities/1328 html5lib-tests &barvee Bad named entity: barvee without a semi-colon 7 B
001736 html5lib/namedEntities/1329 html5lib-tests ⊽ Named entity: barvee; with a semi-colon 8 B
001737 html5lib/namedEntities/1330 html5lib-tests &barwed Bad named entity: barwed without a semi-colon 7 B
001738 html5lib/namedEntities/1331 html5lib-tests ⌅ Named entity: barwed; with a semi-colon 8 B
001739 html5lib/namedEntities/1332 html5lib-tests &barwedge Bad named entity: barwedge without a semi-colon 9 B
001740 html5lib/namedEntities/1333 html5lib-tests ⌅ Named entity: barwedge; with a semi-colon 10 B
001741 html5lib/namedEntities/1334 html5lib-tests &bbrk Bad named entity: bbrk without a semi-colon 5 B
001742 html5lib/namedEntities/1335 html5lib-tests ⎵ Named entity: bbrk; with a semi-colon 6 B
001743 html5lib/namedEntities/1336 html5lib-tests &bbrktbrk Bad named entity: bbrktbrk without a semi-colon 9 B
001744 html5lib/namedEntities/1337 html5lib-tests ⎶ Named entity: bbrktbrk; with a semi-colon 10 B
001745 html5lib/namedEntities/1338 html5lib-tests &bcong Bad named entity: bcong without a semi-colon 6 B
001746 html5lib/namedEntities/1339 html5lib-tests ≌ Named entity: bcong; with a semi-colon 7 B
001747 html5lib/namedEntities/1340 html5lib-tests &bcy Bad named entity: bcy without a semi-colon 4 B
001748 html5lib/namedEntities/1341 html5lib-tests б Named entity: bcy; with a semi-colon 5 B
001749 html5lib/namedEntities/1342 html5lib-tests &bdquo Bad named entity: bdquo without a semi-colon 6 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.