Tests that ImageBitmap supports structured clone and that the pixel data survives the trip between main <--> worker

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

PASS bitmapWidth is imageWidth1
PASS bitmapHeight is imageHeight1
PASS bitmapWidth is imageWidth1
PASS bitmapHeight is imageHeight1
PASS bitmapWidth is imageWidth1
PASS bitmapHeight is imageHeight1
PASS The ImageBitmap pixel data survives the round trip
PASS bitmapWidth is 0
PASS bitmapHeight is 0
PASS bitmapWidth is imageWidth1
PASS bitmapHeight is imageHeight1
PASS The ImageBitmap pixel data survives the round trip
PASS bitmapWidth is imageWidth2
PASS bitmapHeight is imageHeight2
PASS bitmapWidth is imageWidth2
PASS bitmapHeight is imageHeight2
PASS The ImageBitmap pixel data survives the round trip
PASS successfullyParsed is true

TEST COMPLETE

