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
002354 html5lib/namedEntities/1947 html5lib-tests &equals Bad named entity: equals without a semi-colon 7 B
002355 html5lib/namedEntities/1948 html5lib-tests = Named entity: equals; with a semi-colon 8 B
002356 html5lib/namedEntities/1949 html5lib-tests &equest Bad named entity: equest without a semi-colon 7 B
002357 html5lib/namedEntities/1950 html5lib-tests ≟ Named entity: equest; with a semi-colon 8 B
002358 html5lib/namedEntities/1951 html5lib-tests &equiv Bad named entity: equiv without a semi-colon 6 B
002359 html5lib/namedEntities/1952 html5lib-tests ≡ Named entity: equiv; with a semi-colon 7 B
002360 html5lib/namedEntities/1953 html5lib-tests &equivDD Bad named entity: equivDD without a semi-colon 8 B
002361 html5lib/namedEntities/1954 html5lib-tests ⩸ Named entity: equivDD; with a semi-colon 9 B
002362 html5lib/namedEntities/1955 html5lib-tests &eqvparsl Bad named entity: eqvparsl without a semi-colon 9 B
002363 html5lib/namedEntities/1956 html5lib-tests ⧥ Named entity: eqvparsl; with a semi-colon 10 B
002364 html5lib/namedEntities/1957 html5lib-tests &erDot Bad named entity: erDot without a semi-colon 6 B
002365 html5lib/namedEntities/1958 html5lib-tests ≓ Named entity: erDot; with a semi-colon 7 B
002366 html5lib/namedEntities/1959 html5lib-tests &erarr Bad named entity: erarr without a semi-colon 6 B
002367 html5lib/namedEntities/1960 html5lib-tests ⥱ Named entity: erarr; with a semi-colon 7 B
002368 html5lib/namedEntities/1961 html5lib-tests &escr Bad named entity: escr without a semi-colon 5 B
002369 html5lib/namedEntities/1962 html5lib-tests ℯ Named entity: escr; with a semi-colon 6 B
002370 html5lib/namedEntities/1963 html5lib-tests &esdot Bad named entity: esdot without a semi-colon 6 B
002371 html5lib/namedEntities/1964 html5lib-tests ≐ Named entity: esdot; with a semi-colon 7 B
002372 html5lib/namedEntities/1965 html5lib-tests &esim Bad named entity: esim without a semi-colon 5 B
002373 html5lib/namedEntities/1966 html5lib-tests ≂ Named entity: esim; with a semi-colon 6 B
002374 html5lib/namedEntities/1967 html5lib-tests &eta Bad named entity: eta without a semi-colon 4 B
002375 html5lib/namedEntities/1968 html5lib-tests η Named entity: eta; with a semi-colon 5 B
002376 html5lib/namedEntities/1969 html5lib-tests ð Named entity: eth without a semi-colon 4 B
002377 html5lib/namedEntities/1970 html5lib-tests ð Named entity: eth; with a semi-colon 5 B
002378 html5lib/namedEntities/1971 html5lib-tests ë Named entity: euml without a semi-colon 5 B
002379 html5lib/namedEntities/1972 html5lib-tests ë Named entity: euml; with a semi-colon 6 B
002380 html5lib/namedEntities/1973 html5lib-tests &euro Bad named entity: euro without a semi-colon 5 B
002381 html5lib/namedEntities/1974 html5lib-tests € Named entity: euro; with a semi-colon 6 B
002382 html5lib/namedEntities/1975 html5lib-tests &excl Bad named entity: excl without a semi-colon 5 B
002383 html5lib/namedEntities/1976 html5lib-tests ! Named entity: excl; with a semi-colon 6 B
002384 html5lib/namedEntities/1977 html5lib-tests &exist Bad named entity: exist without a semi-colon 6 B
002385 html5lib/namedEntities/1978 html5lib-tests ∃ Named entity: exist; with a semi-colon 7 B
002386 html5lib/namedEntities/1979 html5lib-tests &expectation Bad named entity: expectation without a semi-colon 12 B
002387 html5lib/namedEntities/1980 html5lib-tests ℰ Named entity: expectation; with a semi-colon 13 B
002388 html5lib/namedEntities/1981 html5lib-tests &exponentiale Bad named entity: exponentiale without a semi-colon 13 B
002389 html5lib/namedEntities/1982 html5lib-tests ⅇ Named entity: exponentiale; with a semi-colon 14 B
002390 html5lib/namedEntities/1983 html5lib-tests &fallingdotseq Bad named entity: fallingdotseq without a semi-colon 14 B
002391 html5lib/namedEntities/1984 html5lib-tests ≒ Named entity: fallingdotseq; with a semi-colon 15 B
002392 html5lib/namedEntities/1985 html5lib-tests &fcy Bad named entity: fcy without a semi-colon 4 B
002393 html5lib/namedEntities/1986 html5lib-tests ф Named entity: fcy; with a semi-colon 5 B
002394 html5lib/namedEntities/1987 html5lib-tests &female Bad named entity: female without a semi-colon 7 B
002395 html5lib/namedEntities/1988 html5lib-tests ♀ Named entity: female; with a semi-colon 8 B
002396 html5lib/namedEntities/1989 html5lib-tests &ffilig Bad named entity: ffilig without a semi-colon 7 B
002397 html5lib/namedEntities/1990 html5lib-tests ffi Named entity: ffilig; with a semi-colon 8 B
002398 html5lib/namedEntities/1991 html5lib-tests &fflig Bad named entity: fflig without a semi-colon 6 B
002399 html5lib/namedEntities/1992 html5lib-tests ff Named entity: fflig; with a semi-colon 7 B
002400 html5lib/namedEntities/1993 html5lib-tests &ffllig Bad named entity: ffllig without a semi-colon 7 B
002401 html5lib/namedEntities/1994 html5lib-tests ffl Named entity: ffllig; with a semi-colon 8 B
002402 html5lib/namedEntities/1995 html5lib-tests &ffr Bad named entity: ffr without a semi-colon 4 B
002403 html5lib/namedEntities/1996 html5lib-tests 𝔣 Named entity: ffr; 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.