Tests for checkValidity() with invalid event canceling

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


"invalid" event is not canceled.
PASS input.addEventListener("invalid", nothingListener, false); !input.checkValidity() && invalidFired is true
PASS invalidFired = false; !form.checkValidity() && invalidFired is true

"invalid" event is canceled.
PASS input.addEventListener("invalid", cancelListener, false); !input.checkValidity() && invalidFired is true
PASS invalidFired = false; !form.checkValidity() && invalidFired is true
PASS successfullyParsed is true

TEST COMPLETE

