Test the parsing of :lang(stringList) for querySelector and style.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


valid language ranges
PASS document.querySelector(':lang(e)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"e\")"
PASS document.querySelector(':lang(e    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"e\")"
PASS document.querySelector(':lang(en)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en\")"
PASS document.querySelector(':lang(en    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en\")"
PASS document.querySelector(':lang(en-)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-\")"
PASS document.querySelector(':lang(en-    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-\")"
PASS document.querySelector(':lang(en--)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en--\")"
PASS document.querySelector(':lang(en--    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en--\")"
PASS document.querySelector(':lang(en---)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---\")"
PASS document.querySelector(':lang(en---    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---\")"
PASS document.querySelector(':lang(en-fr)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr\")"
PASS document.querySelector(':lang(en-fr    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr\")"
PASS document.querySelector(':lang(en-fr-)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr-\")"
PASS document.querySelector(':lang(en-fr-    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr-\")"
PASS document.querySelector(':lang(en-fr--)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr--\")"
PASS document.querySelector(':lang(en-fr--    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-fr--\")"
PASS document.querySelector(':lang(en--fr)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en--fr\")"
PASS document.querySelector(':lang(en--fr    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en--fr\")"
PASS document.querySelector(':lang(en---fr)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---fr\")"
PASS document.querySelector(':lang(en---fr    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---fr\")"
PASS document.querySelector(':lang(en---fr---)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---fr---\")"
PASS document.querySelector(':lang(en---fr---    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en---fr---\")"
PASS document.querySelector(':lang(de-DE)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-DE\")"
PASS document.querySelector(':lang(de-DE    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-DE\")"
PASS document.querySelector(':lang(de-DE-1996)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-DE-1996\")"
PASS document.querySelector(':lang(de-DE-1996    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-DE-1996\")"
PASS document.querySelector(':lang(de-Latn-DE)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latn-DE\")"
PASS document.querySelector(':lang(de-Latn-DE    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latn-DE\")"
PASS document.querySelector(':lang(de-Latf-DE)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latf-DE\")"
PASS document.querySelector(':lang(de-Latf-DE    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latf-DE\")"
PASS document.querySelector(':lang(de-Latn-DE-1996)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latn-DE-1996\")"
PASS document.querySelector(':lang(de-Latn-DE-1996    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-Latn-DE-1996\")"
PASS document.querySelector(':lang(de-CH)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-CH\")"
PASS document.querySelector(':lang(de-CH    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"de-CH\")"
PASS document.querySelector(':lang(it-CH)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"it-CH\")"
PASS document.querySelector(':lang(it-CH    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"it-CH\")"
PASS document.querySelector(':lang(fr-CH)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"fr-CH\")"
PASS document.querySelector(':lang(fr-CH    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"fr-CH\")"
PASS document.querySelector(':lang(rm-CH)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"rm-CH\")"
PASS document.querySelector(':lang(rm-CH    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"rm-CH\")"
PASS document.querySelector(':lang("*-CH")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-CH\")"
PASS document.querySelector(':lang("*-CH"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-CH\")"
PASS document.querySelector(':lang("*-DE-1996")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-DE-1996\")"
PASS document.querySelector(':lang("*-DE-1996"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-DE-1996\")"
PASS document.querySelector(':lang("*-br-zh")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-br-zh\")"
PASS document.querySelector(':lang("*-br-zh"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-br-zh\")"
PASS document.querySelector(':lang(id-\\*-sumatra)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"id-*-sumatra\")"
PASS document.querySelector(':lang(id-\\*-sumatra    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"id-*-sumatra\")"
PASS document.querySelector(':lang("*-en-\\*-fr")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-en-*-fr\")"
PASS document.querySelector(':lang("*-en-\\*-fr"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-en-*-fr\")"
PASS document.querySelector(':lang("*-en-\\*-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-en-*-*\")"
PASS document.querySelector(':lang("*-en-\\*-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-en-*-*\")"
PASS document.querySelector(':lang(\\*)') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*\")"
PASS document.querySelector(':lang(\\*    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*\")"
PASS document.querySelector(':lang("*-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*\")"
PASS document.querySelector(':lang("*-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*\")"
PASS document.querySelector(':lang("*-\\*-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*-*\")"
PASS document.querySelector(':lang("*-\\*-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*-*\")"
PASS document.querySelector(':lang("*-\\*-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*-*\")"
PASS document.querySelector(':lang("*-\\*-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-*-*\")"
PASS document.querySelector(':lang("ab-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"ab-*\")"
PASS document.querySelector(':lang("ab-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"ab-*\")"
PASS document.querySelector(':lang("*-ab-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*\")"
PASS document.querySelector(':lang("*-ab-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*\")"
PASS document.querySelector(':lang("*-ab-\\*-")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*-\")"
PASS document.querySelector(':lang("*-ab-\\*-"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*-\")"
PASS document.querySelector(':lang("*-ab-\\*--")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*--\")"
PASS document.querySelector(':lang("*-ab-\\*--"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*--\")"
PASS document.querySelector(':lang("*-ab-\\*---")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*---\")"
PASS document.querySelector(':lang("*-ab-\\*---"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-ab-*---\")"
PASS document.querySelector(':lang("*-foo-\\:")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:\")"
PASS document.querySelector(':lang("*-foo-\\:"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:\")"
PASS document.querySelector(':lang("*-foo-\\:")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:\")"
PASS document.querySelector(':lang("*-foo-\\:"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:\")"
PASS document.querySelector(':lang("*-foo-\\:\\`\\)")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:`)\")"
PASS document.querySelector(':lang("*-foo-\\:\\`\\)"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:`)\")"
PASS document.querySelector(':lang("*-foo-\\:\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:*\")"
PASS document.querySelector(':lang("*-foo-\\:\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"*-foo-:*\")"
PASS document.querySelector(':lang("en-\\*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-*\")"
PASS document.querySelector(':lang("en-\\*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"en-*\")"
PASS document.querySelector(':lang("fr-*")') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"fr-*\")"
PASS document.querySelector(':lang("fr-*"    )') did not throw exception.
PASS document.getElementById('style-container').sheet.cssRules.length is 1
PASS document.getElementById('style-container').sheet.cssRules[0].selectorText is ":lang(\"fr-*\")"
PASS successfullyParsed is true

TEST COMPLETE

