This test performs a check that :valid/:invalid CSS psudo selectors are lively applied.

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


Chheck the initial state:
PASS backgroundOf(el) is invalidColor
Change name:
PASS backgroundOf(el) is invalidColor
PASS backgroundOf(el) is invalidColor
Change disabled:
PASS backgroundOf(el) is disabledColor
PASS backgroundOf(el) is invalidColor
Change readOnly:
PASS backgroundOf(el) is normalColor
PASS backgroundOf(el) is invalidColor
Inside/outside of a form:
PASS backgroundOf(el) is invalidColor
PASS backgroundOf(el) is invalidColor
Change the value by DOM attribute:
PASS backgroundOf(el) is validColor
PASS backgroundOf(el) is invalidColor
Change the value by DOM attribute for a focused text field:
PASS backgroundOf(el) is validColor
Change the value by key input:
PASS backgroundOf(el) is validColor
PASS backgroundOf(el) is invalidColor
Change required:
PASS backgroundOf(el) is validColor
PASS backgroundOf(el) is invalidColor
Change pattern:
PASS backgroundOf(el) is validColor
PASS backgroundOf(el) is invalidColor
PASS backgroundOf(el) is validColor
Change step:
PASS backgroundOf(el) is validColor
PASS backgroundOf(el) is invalidColor
PASS backgroundOf(el) is validColor
PASS successfullyParsed is true

TEST COMPLETE


