This test makes sure that calling checkValidity() on a cloned node does not crash a Debug build. The test passes if there is no crash (and if you don't see any 'FAIL's)

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


PASS element.checkValidity() is true
PASS element2.checkValidity() is true
PASS element.checkValidity() is true
PASS element2.checkValidity() is true
PASS element.checkValidity() is true
PASS element2.checkValidity() is false
PASS element.checkValidity() is true
PASS element2.value is "a"
PASS element2.checkValidity() is true
PASS element2.checkValidity() is true
PASS successfullyParsed is true

TEST COMPLETE

