This test checks that there is a stack property at creation of each error object.

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


PASS Error has .stack property at creation time.
PASS EvalError has .stack property at creation time.
PASS RangeError has .stack property at creation time.
PASS ReferenceError has .stack property at creation time.
PASS SyntaxError has .stack property at creation time.
PASS TypeError has .stack property at creation time.
PASS URIError has .stack property at creation time.
PASS successfullyParsed is true

TEST COMPLETE

