Check that targeted class invalidation works with the :host pseudo class.

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

PASS getComputedStyle(host1, null).backgroundColor is transparent
PASS getComputedStyle(inner, null).backgroundColor is transparent
PASS getComputedStyle(host3, null).backgroundColor is transparent
PASS getComputedStyle(host4, null).backgroundColor is transparent
PASS internals.updateStyleAndReturnAffectedElementCount() is 1
PASS getComputedStyle(host1, null).backgroundColor is green
PASS internals.updateStyleAndReturnAffectedElementCount() is 1
PASS getComputedStyle(inner, null).backgroundColor is green
PASS internals.updateStyleAndReturnAffectedElementCount() is 1
PASS getComputedStyle(host3, null).backgroundColor is green
PASS internals.updateStyleAndReturnAffectedElementCount() is 1
PASS getComputedStyle(host4, null).backgroundColor is green
PASS successfullyParsed is true

TEST COMPLETE

