Tests that an observation is received after disconnecting a visible target

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


PASS observations.length is 1
PASS observations[0].target.tagName is "DIV"
PASS observations[0].target.foo is 1
PASS observations[0].contentRect.width > 0.0 is true
PASS observations[0].contentRect.height > 0.0 is true
* Removing target from document
PASS observations.length is 1
PASS observations[0].target.tagName is "DIV"
PASS observations[0].target.foo is 1
PASS observations[0].contentRect.width is 0.0
PASS observations[0].contentRect.height is 0.0
PASS successfullyParsed is true

TEST COMPLETE

