Test that we invalidate the element subtree minimally on class attribute change

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


Adding class style5
PASS hasExpectedStyle is true
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class NotThere
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
Adding class style1
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class style2
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class style2
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class style3
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class style3
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class style4
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class NotThere
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
Removing class style1
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class style5
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class style5
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class dynamicStyle
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class dynamicStyle
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Inserting stylesheet 'root.dynamicStyle target { color:rgb(6, 6, 6); }'
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "NoStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Adding class dynamicStyle
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
Removing class dynamicStyle
PASS testStyleChangeType("root", "NoStyleChange") || testStyleChangeType("root", "InlineStyleChange") is true
PASS testStyleChangeType("target", "InlineStyleChange") is true
PASS testStyleChangeType("inert", "NoStyleChange") is true
PASS hasExpectedStyle is true
PASS successfullyParsed is true

TEST COMPLETE

