This tests that isTrusted returns the correct value under certain situations.

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


PASS document.createEvent('Event').isTrusted is false
PASS createAndInitEvent().isTrusted is false
PASS originalEvent.isTrusted is true
PASS redispatched is true
PASS originalEvent.isTrusted is false
PASS originalEvent.isTrusted is false
PASS successfullyParsed is true

TEST COMPLETE

