Test the argument bounds of canvas createImageData.

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


PASS ctx.createImageData(Infinity, Infinity) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(Infinity, 10) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(-Infinity, 10) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(10, Infinity) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(10, -Infinity) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(NaN, 10) threw exception TypeError: The provided value is non-finite.
PASS ctx.createImageData(10, NaN) threw exception TypeError: The provided value is non-finite.
PASS successfullyParsed is true

TEST COMPLETE

