Operations on the Node prototype object should be writable, enumerable and configurable.

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


PASS successfullyParsed is true

TEST COMPLETE

