This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL.

Test: ../../../resources/webgl_test_files/conformance2/textures/misc/tex-mipmap-levels.html
[ 1: PASS ] getError was expected value: NO_ERROR : Should be no errors from setup.
[ 2: PASS ] getError was expected value: NO_ERROR : fillTexture(8x8, level=2) should succeed
[ 3: PASS ] getError was expected value: NO_ERROR : fillTexture(4x4, level=3) should succeed
[ 4: PASS ] getError was expected value: NO_ERROR : fillTexture(2x2, level=4) should succeed
[ 5: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_BASE_LEVEL) should succeed
[ 6: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_MAX_LEVEL) should succeed
[ 7: PASS ] getError was expected value: NO_ERROR : texParameter(TEXTURE_MAG_FILTER) should succeed
[ 8: PASS ] getError was expected value: NO_ERROR : texParameter(TEXTURE_MIN_FILTER) should succeed
[ 9: PASS ] getError was expected value: NO_ERROR : clearAndDrawQuad should succeed
[ 10: FAIL ] should draw with [0, 0, 255, 255] at (0, 0) expected: 0,0,255,255 was 0,0,0,255
[ 11: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : generateMipmap should succeed
[ 12: FAIL ] should draw with [255, 0, 0, 255] at (0, 0) expected: 255,0,0,255 was 0,0,0,255
[ 13: PASS ] getError was expected value: NO_ERROR : fillTexture(8x8, level=2) should succeed
[ 14: PASS ] getError was expected value: NO_ERROR : fillTexture(4x4, level=3) should succeed
[ 15: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_BASE_LEVEL) should succeed
[ 16: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_MAX_LEVEL) should succeed
[ 17: PASS ] getError was expected value: NO_ERROR : clearAndDrawQuad should succeed
[ 18: PASS ] incomplete texture should draw with [0, 0, 0, 255]
[ 19: PASS ] getError was expected value: NO_ERROR : fillTexture(8x8, level=2) should succeed
[ 20: PASS ] getError was expected value: NO_ERROR : fillTexture(4x4, level=3) should succeed
[ 21: PASS ] getError was expected value: NO_ERROR : fillTexture(2x2, level=4) should succeed
[ 22: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_BASE_LEVEL) should succeed
[ 23: PASS ] getError was expected value: INVALID_OPERATION : generateMipmap should fail if base level texture is not specified
[ 24: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : generateMipmap should succeed
[ 25: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : generateMipmap should succeed
[ 26: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texSubImage3D should succeed
[ 27: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : generateMipmap should succeed
[ 28: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed
[ 29: PASS ] getError was expected value: NO_ERROR : generateMipmap should succeed for zero-size texture
[ 30: PASS ] getError was expected value: NO_ERROR : generateMipmap should succeed
[ 31: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : generateMipmap should fail for non-texture-filterable format
[ 32: PASS ] getError was expected value: NO_ERROR : texParameter(TEXTURE_MAG_FILTER) should succeed
[ 33: PASS ] getError was expected value: NO_ERROR : texParameter(TEXTURE_MIN_FILTER) should succeed
[ 34: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : texParameter(TEXTURE_BASE_LEVEL) should succeed
[ 35: PASS ] getError was expected value: NO_ERROR : texStorage2D should succeed
[ 36: PASS ] getError was expected value: NO_ERROR : clearAndDrawQuad should succeed
[ 37: FAIL ] should draw with [255, 0, 0, 255] at (0, 0) expected: 255,0,0,255 was 0,0,0,255
[ 38: PASS ] successfullyParsed is true
[ FAIL ] 15 failures reported

