This tests setting and re-serialization of some CSS selectors.

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


PASS setThenReadSelectorText('') is '_foo'
PASS setThenReadSelectorText('123') is '_foo'
PASS setThenReadSelectorText('-') is '_foo'
PASS setThenReadSelectorText('$') is '_foo'
PASS setThenReadSelectorText(':') is '_foo'
PASS setThenReadSelectorText('.') is '_foo'
PASS setThenReadSelectorText('#') is '_foo'
PASS setThenReadSelectorText('[]') is '_foo'
PASS setThenReadSelectorText('()') is '_foo'

PASS setThenReadSelectorText('*') is '*'
PASS setThenReadSelectorText('a') is 'a'
PASS setThenReadSelectorText('#a') is '#a'
PASS setThenReadSelectorText('.a') is '.a'
PASS setThenReadSelectorText(':active') is ':active'
PASS setThenReadSelectorText('[a]') is '[a]'
PASS setThenReadSelectorText('[a="b"]') is '[a="b"]'
PASS setThenReadSelectorText('[a~="b"]') is '[a~="b"]'
PASS setThenReadSelectorText('[a|="b"]') is '[a|="b"]'
PASS setThenReadSelectorText('[a^="b"]') is '[a^="b"]'
PASS setThenReadSelectorText('[a$="b"]') is '[a$="b"]'
PASS setThenReadSelectorText('[a*="b"]') is '[a*="b"]'
PASS setThenReadSelectorText('[a="b" i]') is '[a="b" i]'
PASS setThenReadSelectorText('[a~="b" i]') is '[a~="b" i]'
PASS setThenReadSelectorText('[a|="b" i]') is '[a|="b" i]'
PASS setThenReadSelectorText('[a^="b" i]') is '[a^="b" i]'
PASS setThenReadSelectorText('[a$="b" i]') is '[a$="b" i]'
PASS setThenReadSelectorText('[a*="b" i]') is '[a*="b" i]'

PASS setThenReadSelectorText('*|a') is 'a'
PASS setThenReadSelectorText('*|*') is '*'
PASS setThenReadSelectorText('[*|a]') is '[*|a]'
PASS setThenReadSelectorText('|*') is '|*'
PASS setThenReadSelectorText('[*|a]') is '[*|a]'
PASS setThenReadSelectorText('[|a]') is '[a]'

PASS setThenReadSelectorText('a:active') is 'a:active'
PASS setThenReadSelectorText('a b') is 'a b'
PASS setThenReadSelectorText('a + b') is 'a + b'
PASS setThenReadSelectorText('a ~ b') is 'a ~ b'
PASS setThenReadSelectorText('a > b') is 'a > b'

PASS setThenReadSelectorText(':active') is ':active'
PASS setThenReadSelectorText(':any-link') is ':any-link'
PASS setThenReadSelectorText(':checked') is ':checked'
PASS setThenReadSelectorText(':disabled') is ':disabled'
PASS setThenReadSelectorText(':empty') is ':empty'
PASS setThenReadSelectorText(':enabled') is ':enabled'
PASS setThenReadSelectorText(':first-child') is ':first-child'
PASS setThenReadSelectorText(':first-of-type') is ':first-of-type'
PASS setThenReadSelectorText(':focus') is ':focus'
PASS setThenReadSelectorText(':hover') is ':hover'
PASS setThenReadSelectorText(':indeterminate') is ':indeterminate'
PASS setThenReadSelectorText(':link') is ':link'
PASS setThenReadSelectorText(':not(:placeholder-shown)') is ':not(:placeholder-shown)'
PASS setThenReadSelectorText(':placeholder-shown') is ':placeholder-shown'
PASS setThenReadSelectorText(':root') is ':root'
PASS setThenReadSelectorText(':target') is ':target'
PASS setThenReadSelectorText(':visited') is ':visited'

PASS setThenReadSelectorText(':dir(a)') is ':dir(a)'
PASS setThenReadSelectorText(':lang("a")') is ':lang("a")'
PASS setThenReadSelectorText(':lang(a)') is ':lang("a")'
PASS setThenReadSelectorText(':not(a)') is ':not(a)'
PASS setThenReadSelectorText(':role(a)') is ':role(a)'
PASS setThenReadSelectorText(':-webkit-any(a, b, p)') is ':-webkit-any(a, b, p)'

PASS setThenReadSelectorText('::after') is '::after'
PASS setThenReadSelectorText('::before') is '::before'
PASS setThenReadSelectorText('::first-letter') is '::first-letter'
PASS setThenReadSelectorText('::first-line') is '::first-line'
PASS setThenReadSelectorText('::selection') is '::selection'

PASS setThenReadSelectorText(':-webkit-any-link') is ':-webkit-any-link'
PASS setThenReadSelectorText(':-webkit-autofill') is ':-webkit-autofill'
PASS setThenReadSelectorText(':-webkit-drag') is ':-webkit-drag'
PASS setThenReadSelectorText('a:any-link') is 'a:any-link'
PASS setThenReadSelectorText('a :any-link') is 'a :any-link'
PASS setThenReadSelectorText('div:any-link') is 'div:any-link'
PASS setThenReadSelectorText('div :any-link') is 'div :any-link'
PASS setThenReadSelectorText(':any-link > div') is ':any-link > div'
PASS setThenReadSelectorText(':any-link + div') is ':any-link + div'
PASS setThenReadSelectorText(':not(:any-link)') is ':not(:any-link)'

PASS setThenReadSelectorText(':nth-child(odd)') is ':nth-child(2n+1)'
PASS setThenReadSelectorText(':nth-child(even)') is ':nth-child(2n)'
PASS setThenReadSelectorText(':nth-child(n)') is ':nth-child(n)'
PASS setThenReadSelectorText(':nth-child(-n)') is ':nth-child(-n)'
PASS setThenReadSelectorText(':nth-child(5)') is ':nth-child(5)'
PASS setThenReadSelectorText(':nth-child(-5)') is ':nth-child(-5)'
PASS setThenReadSelectorText(':nth-child(5n+7)') is ':nth-child(5n+7)'
PASS setThenReadSelectorText(':nth-child(-5n+7)') is ':nth-child(-5n+7)'
PASS setThenReadSelectorText(':nth-child(5n-7)') is ':nth-child(5n-7)'
PASS setThenReadSelectorText(':nth-child(-5n-7)') is ':nth-child(-5n-7)'

PASS setThenReadSelectorText(':nth-child(odd of .foo, :nth-child(odd))') is ':nth-child(2n+1 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(even of .foo, :nth-child(odd))') is ':nth-child(2n of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(n of .foo, :nth-child(odd))') is ':nth-child(n of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(-n of .foo, :nth-child(odd))') is ':nth-child(-n of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(5 of .foo, :nth-child(odd))') is ':nth-child(5 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(-5 of .foo, :nth-child(odd))') is ':nth-child(-5 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(5n+7 of .foo, :nth-child(odd))') is ':nth-child(5n+7 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(-5n+7 of .foo, :nth-child(odd))') is ':nth-child(-5n+7 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(5n-7 of .foo, :nth-child(odd))') is ':nth-child(5n-7 of .foo, :nth-child(2n+1))'
PASS setThenReadSelectorText(':nth-child(-5n-7 of .foo, :nth-child(odd))') is ':nth-child(-5n-7 of .foo, :nth-child(2n+1))'

PASS setThenReadSelectorText(':nth-last-child(odd of .foo, :nth-last-child(odd))') is ':nth-last-child(2n+1 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(even of .foo, :nth-last-child(odd))') is ':nth-last-child(2n of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(n of .foo, :nth-last-child(odd))') is ':nth-last-child(n of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(-n of .foo, :nth-last-child(odd))') is ':nth-last-child(-n of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(5 of .foo, :nth-last-child(odd))') is ':nth-last-child(5 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(-5 of .foo, :nth-last-child(odd))') is ':nth-last-child(-5 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(5n+7 of .foo, :nth-last-child(odd))') is ':nth-last-child(5n+7 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(-5n+7 of .foo, :nth-last-child(odd))') is ':nth-last-child(-5n+7 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(5n-7 of .foo, :nth-last-child(odd))') is ':nth-last-child(5n-7 of .foo, :nth-last-child(2n+1))'
PASS setThenReadSelectorText(':nth-last-child(-5n-7 of .foo, :nth-last-child(odd))') is ':nth-last-child(-5n-7 of .foo, :nth-last-child(2n+1))'

PASS setThenReadSelectorText(':matches(single)') is ':matches(single)'
PASS setThenReadSelectorText(':matches(a, b, p)') is ':matches(a, b, p)'
PASS setThenReadSelectorText(':matches(#alice, #bob, #chris)') is ':matches(#alice, #bob, #chris)'
PASS setThenReadSelectorText(':matches(.selector, #tama, #hanayo, #midoriko)') is ':matches(.selector, #tama, #hanayo, #midoriko)'
PASS setThenReadSelectorText(':matches(.name, #ok, :visited)') is ':matches(.name, #ok, :visited)'
PASS setThenReadSelectorText(':matches(.name, #ok, :visited, :link)') is ':matches(.name, #ok, :visited, :link)'
PASS setThenReadSelectorText(':matches(.name, #ok, :matches(:visited))') is ':matches(.name, #ok, :matches(:visited))'
PASS setThenReadSelectorText(':matches(.name, #ok, :not(:link))') is ':matches(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':matches(.name, #ok, :not(:link))') is ':matches(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':matches(.name, #ok, :-webkit-any(hello))') is ':matches(.name, #ok, :-webkit-any(hello))'
PASS setThenReadSelectorText(':matches(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))') is ':matches(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))'
PASS setThenReadSelectorText(':matches([type="file"])') is ':matches([type="file"])'
PASS setThenReadSelectorText(':matches(:hover)') is ':matches(:hover)'
PASS setThenReadSelectorText('input:matches([type="file"], :hover, :focus):enabled') is 'input:matches([type="file"], :hover, :focus):enabled'
PASS setThenReadSelectorText(':matches(input[type="file"], a:hover, button:focus)') is ':matches(input[type="file"], a:hover, button:focus)'
PASS setThenReadSelectorText(':matches(.class1.class2.class3)') is ':matches(.class1.class2.class3)'
PASS setThenReadSelectorText(':matches(.class1:hover)') is ':matches(.class1:hover)'
PASS setThenReadSelectorText(':matches(a.class1.class2.class3:hover)') is ':matches(a.class1.class2.class3:hover)'
PASS setThenReadSelectorText(':matches(::first-letter, ::first-line)') is ':matches(::first-letter, ::first-line)'
PASS setThenReadSelectorText(':matches(a > ::first-letter, b ~ ::first-line, c ::after, d + ::before)') is ':matches(a > ::first-letter, b ~ ::first-line, c ::after, d + ::before)'
PASS setThenReadSelectorText(':matches(.ok a > ::first-letter, .ok b ~ ::first-line, .ok c ::after, .ok d + ::before)') is ':matches(.ok a > ::first-letter, .ok b ~ ::first-line, .ok c ::after, .ok d + ::before)'
PASS setThenReadSelectorText(':matches(.ok a > .ok ::first-letter, .ok b ~ .ok ::first-line, .ok c .ok ::after, .ok d + .ok ::before)') is ':matches(.ok a > .ok ::first-letter, .ok b ~ .ok ::first-line, .ok c .ok ::after, .ok d + .ok ::before)'
PASS setThenReadSelectorText(':-webkit-any(:matches(single))') is ':-webkit-any(:matches(single))'
PASS setThenReadSelectorText(':-webkit-any(:matches(a, b, p))') is ':-webkit-any(:matches(a, b, p))'
PASS setThenReadSelectorText(':-webkit-any(:matches(#alice, #bob, #chris))') is ':-webkit-any(:matches(#alice, #bob, #chris))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.selector, #tama, #hanayo, #midoriko))') is ':-webkit-any(:matches(.selector, #tama, #hanayo, #midoriko))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :visited))') is ':-webkit-any(:matches(.name, #ok, :visited))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :visited, :link))') is ':-webkit-any(:matches(.name, #ok, :visited, :link))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :matches(:visited)))') is ':-webkit-any(:matches(.name, #ok, :matches(:visited)))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :not(:link)))') is ':-webkit-any(:matches(.name, #ok, :not(:link)))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :not(:link)))') is ':-webkit-any(:matches(.name, #ok, :not(:link)))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :-webkit-any(hello)))') is ':-webkit-any(:matches(.name, #ok, :-webkit-any(hello)))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko)))') is ':-webkit-any(:matches(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko)))'
PASS setThenReadSelectorText(':-webkit-any(:matches([type="file"]))') is ':-webkit-any(:matches([type="file"]))'
PASS setThenReadSelectorText(':-webkit-any(:matches(:hover))') is ':-webkit-any(:matches(:hover))'
PASS setThenReadSelectorText(':-webkit-any(input:matches([type="file"], :hover, :focus):enabled)') is ':-webkit-any(input:matches([type="file"], :hover, :focus):enabled)'
PASS setThenReadSelectorText(':-webkit-any(:matches(input[type="file"], a:hover, button:focus))') is ':-webkit-any(:matches(input[type="file"], a:hover, button:focus))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.class1.class2.class3))') is ':-webkit-any(:matches(.class1.class2.class3))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.class1:hover))') is ':-webkit-any(:matches(.class1:hover))'
PASS setThenReadSelectorText(':-webkit-any(:matches(a.class1.class2.class3:hover))') is ':-webkit-any(:matches(a.class1.class2.class3:hover))'
PASS setThenReadSelectorText(':-webkit-any(:matches(::first-letter, ::first-line))') is ':-webkit-any(:matches(::first-letter, ::first-line))'
PASS setThenReadSelectorText(':-webkit-any(:matches(a > ::first-letter, b ~ ::first-line, c ::after, d + ::before))') is ':-webkit-any(:matches(a > ::first-letter, b ~ ::first-line, c ::after, d + ::before))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.ok a > ::first-letter, .ok b ~ ::first-line, .ok c ::after, .ok d + ::before))') is ':-webkit-any(:matches(.ok a > ::first-letter, .ok b ~ ::first-line, .ok c ::after, .ok d + ::before))'
PASS setThenReadSelectorText(':-webkit-any(:matches(.ok a > .ok ::first-letter, .ok b ~ .ok ::first-line, .ok c .ok ::after, .ok d + .ok ::before))') is ':-webkit-any(:matches(.ok a > .ok ::first-letter, .ok b ~ .ok ::first-line, .ok c .ok ::after, .ok d + .ok ::before))'

PASS setThenReadSelectorText(':not(div)') is ':not(div)'
PASS setThenReadSelectorText(':not(.div)') is ':not(.div)'
PASS setThenReadSelectorText(':not(#div)') is ':not(#div)'
PASS setThenReadSelectorText(':not([div])') is ':not([div])'
PASS setThenReadSelectorText(':not(:empty)') is ':not(:empty)'
PASS setThenReadSelectorText(':not(div.div#div[div]:empty)') is ':not(div.div#div[div]:empty)'
PASS setThenReadSelectorText(':not(div.div:empty[div]#div)') is ':not(div.div:empty[div]#div)'
PASS setThenReadSelectorText(':not(div.div, #div[div], :empty)') is ':not(div.div, #div[div], :empty)'
PASS setThenReadSelectorText(':not(div, .div, #div, [div], :empty)') is ':not(div, .div, #div, [div], :empty)'
PASS setThenReadSelectorText(':not(:not(div))') is ':not(:not(div))'
PASS setThenReadSelectorText(':not(:not(div)):not(:not(foo)):not(:not(bar))') is ':not(:not(div)):not(:not(foo)):not(:not(bar))'
PASS setThenReadSelectorText(':not(:not(div, :not(foo, bar))):not(:not(foo)):not(:not(bar, baz))') is ':not(:not(div, :not(foo, bar))):not(:not(foo)):not(:not(bar, baz))'
PASS setThenReadSelectorText(':not(:matches(*))') is ':not(:matches(*))'
PASS setThenReadSelectorText(':not(:matches(foo, bar))') is ':not(:matches(foo, bar))'
PASS setThenReadSelectorText(':not(:matches(foo, bar), :matches(.foo, .bar), :matches(#foo, #bar), :matches([foo], [bar]))') is ':not(:matches(foo, bar), :matches(.foo, .bar), :matches(#foo, #bar), :matches([foo], [bar]))'
PASS setThenReadSelectorText(':not(:matches(foo, bar:not(:empty)), :matches(.foo, .bar:not(:not(.mosaic))), :matches(#foo, #bar), :matches([foo], [bar]))') is ':not(:matches(foo, bar:not(:empty)), :matches(.foo, .bar:not(:not(.mosaic))), :matches(#foo, #bar), :matches([foo], [bar]))'
PASS setThenReadSelectorText(':nth-child(2n of :not(a.b, c#d.e))') is ':nth-child(2n of :not(a.b, c#d.e))'
PASS setThenReadSelectorText(':not(:nth-child(2n of :not(a.b, c#d.e)))') is ':not(:nth-child(2n of :not(a.b, c#d.e)))'
PASS setThenReadSelectorText(':not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child)') is ':not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child)'
PASS setThenReadSelectorText('a:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) b + c:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) ~ d:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) > d:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child)') is 'a:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) b + c:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) ~ d:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child) > d:not(a .b, #c > [d], e + f:empty, .g ~ #h:first-child)'

PASS setThenReadSelectorText('::-webkit-file-upload-button') is '::-webkit-file-upload-button'
PASS setThenReadSelectorText('::-webkit-search-cancel-button') is '::-webkit-search-cancel-button'
PASS setThenReadSelectorText('::-webkit-search-decoration') is '::-webkit-search-decoration'
PASS setThenReadSelectorText('::-webkit-search-results-button') is '::-webkit-search-results-button'
PASS setThenReadSelectorText('::-webkit-search-results-decoration') is '::-webkit-search-results-decoration'
PASS setThenReadSelectorText('::-webkit-slider-thumb') is '::-webkit-slider-thumb'

PASS setThenReadSelectorText('a::-webkit-slider-thumb') is 'a::-webkit-slider-thumb'
PASS setThenReadSelectorText('a ::-webkit-slider-thumb') is 'a ::-webkit-slider-thumb'
PASS setThenReadSelectorText('[a]::-webkit-slider-thumb') is '[a]::-webkit-slider-thumb'
PASS setThenReadSelectorText('[a] ::-webkit-slider-thumb') is '[a] ::-webkit-slider-thumb'
PASS setThenReadSelectorText('.a::-webkit-slider-thumb') is '.a::-webkit-slider-thumb'
PASS setThenReadSelectorText('.a ::-webkit-slider-thumb') is '.a ::-webkit-slider-thumb'
PASS setThenReadSelectorText('#a::-webkit-slider-thumb') is '#a::-webkit-slider-thumb'
PASS setThenReadSelectorText('#a ::-webkit-slider-thumb') is '#a ::-webkit-slider-thumb'
PASS setThenReadSelectorText('* ::-webkit-slider-thumb') is '* ::-webkit-slider-thumb'

PASS setThenReadSelectorText('a[b]::-webkit-slider-thumb') is 'a[b]::-webkit-slider-thumb'
PASS setThenReadSelectorText('a.b::-webkit-slider-thumb') is 'a.b::-webkit-slider-thumb'
PASS setThenReadSelectorText('a#b::-webkit-slider-thumb') is 'a#b::-webkit-slider-thumb'
PASS setThenReadSelectorText('a[b].c#d::-webkit-slider-thumb') is 'a[b].c#d::-webkit-slider-thumb'

PASS setThenReadSelectorText('a[b]::placeholder') is 'a[b]::placeholder'
PASS setThenReadSelectorText('a.b::placeholder') is 'a.b::placeholder'
PASS setThenReadSelectorText('a#b::placeholder') is 'a#b::placeholder'
PASS setThenReadSelectorText('a[b].c#d::placeholder') is 'a[b].c#d::placeholder'
PASS setThenReadSelectorText('a[b]::-webkit-input-placeholder') is 'a[b]::-webkit-input-placeholder'
PASS setThenReadSelectorText('a.b::-webkit-input-placeholder') is 'a.b::-webkit-input-placeholder'
PASS setThenReadSelectorText('a#b::-webkit-input-placeholder') is 'a#b::-webkit-input-placeholder'
PASS setThenReadSelectorText('a[b].c#d::-webkit-input-placeholder') is 'a[b].c#d::-webkit-input-placeholder'

PASS setThenReadSelectorText('a[b]:default') is 'a[b]:default'
PASS setThenReadSelectorText('a.b:default') is 'a.b:default'
PASS setThenReadSelectorText('a#b:default') is 'a#b:default'
PASS setThenReadSelectorText('a[b].c#d:default') is 'a[b].c#d:default'

PASS setThenReadSelectorText('a[b]:in-range') is 'a[b]:in-range'
PASS setThenReadSelectorText('a.b:in-range') is 'a.b:in-range'
PASS setThenReadSelectorText('a#b:in-range') is 'a#b:in-range'
PASS setThenReadSelectorText('a[b].c#d:in-range') is 'a[b].c#d:in-range'

PASS setThenReadSelectorText('a[b]:out-of-range') is 'a[b]:out-of-range'
PASS setThenReadSelectorText('a.b:out-of-range') is 'a.b:out-of-range'
PASS setThenReadSelectorText('a#b:out-of-range') is 'a#b:out-of-range'
PASS setThenReadSelectorText('a[b].c#d:out-of-range') is 'a[b].c#d:out-of-range'

PASS setThenReadSelectorText('a[b]:focus-within') is 'a[b]:focus-within'
PASS setThenReadSelectorText('a.b:focus-within') is 'a.b:focus-within'
PASS setThenReadSelectorText('a#b:focus-within') is 'a#b:focus-within'
PASS setThenReadSelectorText('a[b].c#d:focus-within') is 'a[b].c#d:focus-within'

PASS setThenReadSelectorText('input:not([type="file"]):focus') is 'input:not([type="file"]):focus'
PASS setThenReadSelectorText(':-webkit-any([type="file"])') is ':-webkit-any([type="file"])'
PASS setThenReadSelectorText(':-webkit-any(:hover)') is ':-webkit-any(:hover)'
PASS setThenReadSelectorText('input:-webkit-any([type="file"], :hover, :focus):enabled') is 'input:-webkit-any([type="file"], :hover, :focus):enabled'
PASS setThenReadSelectorText(':-webkit-any(input[type="file"], a:hover, button:focus)') is ':-webkit-any(input[type="file"], a:hover, button:focus)'
PASS setThenReadSelectorText(':-webkit-any(.class1.class2.class3)') is ':-webkit-any(.class1.class2.class3)'
PASS setThenReadSelectorText(':-webkit-any(.class1:hover)') is ':-webkit-any(.class1:hover)'
PASS setThenReadSelectorText(':-webkit-any(a.class1.class2.class3:hover)') is ':-webkit-any(a.class1.class2.class3:hover)'

PASS setThenReadSelectorText('*:active') is ':active'

PASS setThenReadSelectorText('input[type=file]:focus') is 'input[type="file"]:focus'

PASS setThenReadSelectorText('a+b') is 'a + b'
PASS setThenReadSelectorText('a~b') is 'a ~ b'
PASS setThenReadSelectorText('a>b') is 'a > b'

PASS setThenReadSelectorText(':after') is '::after'
PASS setThenReadSelectorText(':before') is '::before'
PASS setThenReadSelectorText(':first-letter') is '::first-letter'
PASS setThenReadSelectorText(':first-line') is '::first-line'
PASS setThenReadSelectorText(':-webkit-any(    a.class1  ,  	#id,[attr]  )') is ':-webkit-any(a.class1, #id, [attr])'

PASS setThenReadSelectorText(':matches(single    )') is ':matches(single)'
PASS setThenReadSelectorText(':matches(a,b    ,p)') is ':matches(a, b, p)'
PASS setThenReadSelectorText(':matches(#alice,                   #bob,#chris)') is ':matches(#alice, #bob, #chris)'
PASS setThenReadSelectorText(':matches(  .selector,#tama,                #hanayo,#midoriko)') is ':matches(.selector, #tama, #hanayo, #midoriko)'
PASS setThenReadSelectorText(':matches(    .name,#ok,:visited   )') is ':matches(.name, #ok, :visited)'
PASS setThenReadSelectorText(':matches(    .name,#ok,    :visited, :link)') is ':matches(.name, #ok, :visited, :link)'
PASS setThenReadSelectorText(':matches(    .name,#ok,    :matches(:visited    ))') is ':matches(.name, #ok, :matches(:visited))'
PASS setThenReadSelectorText(':matches(.name,  #ok,:not(:link))') is ':matches(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':matches(.name,#ok,:not(:link))') is ':matches(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':matches(    .name,#ok,:-webkit-any(   hello))') is ':matches(.name, #ok, :-webkit-any(hello))'
PASS setThenReadSelectorText(':matches(    .name,#ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))') is ':matches(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))'
PASS setThenReadSelectorText(':matches(       [type="file"])') is ':matches([type="file"])'
PASS setThenReadSelectorText(':matches(  :hover    )') is ':matches(:hover)'
PASS setThenReadSelectorText('input:matches([type="file"],:hover,:focus):enabled') is 'input:matches([type="file"], :hover, :focus):enabled'
PASS setThenReadSelectorText(':matches(input[type="file"], a:hover, button:focus)') is ':matches(input[type="file"], a:hover, button:focus)'
PASS setThenReadSelectorText(':matches( .class1.class2.class3   )') is ':matches(.class1.class2.class3)'
PASS setThenReadSelectorText(':matches(.class1:hover   )') is ':matches(.class1:hover)'
PASS setThenReadSelectorText(':matches(a.class1.class2.class3:hover   )') is ':matches(a.class1.class2.class3:hover)'
PASS setThenReadSelectorText(':matches(:first-letter,::first-line)') is ':matches(::first-letter, ::first-line)'
PASS setThenReadSelectorText(':matches(a>:first-letter,b   ~ ::first-line, c :after, d+ :before)') is ':matches(a > ::first-letter, b ~ ::first-line, c ::after, d + ::before)'
PASS setThenReadSelectorText(':matches(.ok a >    ::first-letter, .ok b~ ::first-line, .ok c :after, .ok d +:before)') is ':matches(.ok a > ::first-letter, .ok b ~ ::first-line, .ok c ::after, .ok d + ::before)'
PASS setThenReadSelectorText(':matches(.ok a> .ok ::first-letter, .ok b   ~.ok :first-line, .ok c .ok    ::after, .ok d + .ok ::before)') is ':matches(.ok a > .ok ::first-letter, .ok b ~ .ok ::first-line, .ok c .ok ::after, .ok d + .ok ::before)'

PASS setThenReadSelectorText(':not(single    )') is ':not(single)'
PASS setThenReadSelectorText(':not(a,b    ,p)') is ':not(a, b, p)'
PASS setThenReadSelectorText(':not(#alice,                   #bob,#chris)') is ':not(#alice, #bob, #chris)'
PASS setThenReadSelectorText(':not(  .selector,#tama,                #hanayo,#midoriko)') is ':not(.selector, #tama, #hanayo, #midoriko)'
PASS setThenReadSelectorText(':not(    .name,#ok,:visited   )') is ':not(.name, #ok, :visited)'
PASS setThenReadSelectorText(':not(    .name,#ok,    :visited, :link)') is ':not(.name, #ok, :visited, :link)'
PASS setThenReadSelectorText(':not(    .name,#ok,    :not(:visited    ))') is ':not(.name, #ok, :not(:visited))'
PASS setThenReadSelectorText(':not(.name,  #ok,:not(:link))') is ':not(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':not(.name,#ok,:not(:link))') is ':not(.name, #ok, :not(:link))'
PASS setThenReadSelectorText(':not(    .name,#ok,:-webkit-any(   hello))') is ':not(.name, #ok, :-webkit-any(hello))'
PASS setThenReadSelectorText(':not(    .name,#ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))') is ':not(.name, #ok, :-webkit-any(.selector, #tama, #hanayo, #midoriko))'
PASS setThenReadSelectorText(':not(       [type="file"])') is ':not([type="file"])'
PASS setThenReadSelectorText(':not(  :hover    )') is ':not(:hover)'
PASS setThenReadSelectorText('input:not([type="file"],:hover,:focus):enabled') is 'input:not([type="file"], :hover, :focus):enabled'
PASS setThenReadSelectorText(':not(input[type="file"], a:hover, button:focus)') is ':not(input[type="file"], a:hover, button:focus)'
PASS setThenReadSelectorText(':not( .class1.class2.class3   )') is ':not(.class1.class2.class3)'
PASS setThenReadSelectorText(':not(.class1:hover   )') is ':not(.class1:hover)'
PASS setThenReadSelectorText(':not(a.class1.class2.class3:hover   )') is ':not(a.class1.class2.class3:hover)'
PASS setThenReadSelectorText(':not(:matches(single    ),:matches(a,b    ,p),:matches(#alice,                   #bob,#chris))') is ':not(:matches(single), :matches(a, b, p), :matches(#alice, #bob, #chris))'

PASS successfullyParsed is true

TEST COMPLETE

