Title: [282135] trunk
Revision
282135
Author
commit-qu...@webkit.org
Date
2021-09-08 02:04:27 -0700 (Wed, 08 Sep 2021)

Log Message

webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html fails on Metal
https://bugs.webkit.org/show_bug.cgi?id=229948

Patch by Kimmo Kinnunen <kkinnu...@apple.com> on 2021-09-08
Reviewed by Dean Jackson.

Source/WebCore:

Validate the texStorage3D target using correct
validation function. The validation should be removed, as
same is done in ANGLE, but for consistency it should be
removed from all functions. Until removal, use correct
WebKit-side validation too.

Fixes tests:
webgl/2.0.0/deqp/functional/gles3/negativetextureapi.html
webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html
webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d.html
webgl/2.0.y/conformance2/textures/misc/tex-storage-and-subimage-3d.html

* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::texStorage3D):

LayoutTests:

Enable webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html
explicitly until 2.0.y is activated.

* webgl/TestExpectations:
* webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d-expected.txt:
* webgl/2.0.0/deqp/functional/gles3/negativetextureapi-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (282134 => 282135)


--- trunk/LayoutTests/ChangeLog	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/LayoutTests/ChangeLog	2021-09-08 09:04:27 UTC (rev 282135)
@@ -1,3 +1,17 @@
+2021-09-08  Kimmo Kinnunen  <kkinnu...@apple.com>
+
+        webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html fails on Metal
+        https://bugs.webkit.org/show_bug.cgi?id=229948
+
+        Reviewed by Dean Jackson.
+
+        Enable webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html
+        explicitly until 2.0.y is activated.
+
+        * webgl/TestExpectations:
+        * webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d-expected.txt:
+        * webgl/2.0.0/deqp/functional/gles3/negativetextureapi-expected.txt:
+
 2021-09-08  Frédéric Wang  <fw...@igalia.com>
 
         Testing for the fact that media elements are treated as replaced elements

Modified: trunk/LayoutTests/webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d-expected.txt (282134 => 282135)


--- trunk/LayoutTests/webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d-expected.txt	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/LayoutTests/webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d-expected.txt	2021-09-08 09:04:27 UTC (rev 282135)
@@ -1,62 +1,4 @@
 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-storage-and-subimage-3d.html
-
-[ 1: PASS ] WebGL context exists
-[ 2: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero width
-[ 3: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero height
-[ 4: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero depth
-[ 5: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for negative height
-[ 6: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero levels
-[ 7: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_2D
-[ 8: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_CUBE_MAP
-[ 9: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail when no texture is bound
-[ 10: PASS ] getError was expected value: INVALID_ENUM : texStorage3D should fail for bad internalformat RGBA
-[ 11: PASS ] getError was expected value: INVALID_ENUM : texSubImage3D should generate INVALID_ENUM if passed TEXTURE_2D target
-[ 12: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail if texStorage3D has not succeeded
-[ 13: PASS ] getError was expected value: NO_ERROR : texStorage3D should succeed with a good sized internalformat
-[ 14: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail on immutable-format texture
-[ 15: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 16: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail for too-high level
-[ 17: PASS ] getError was expected value: INVALID_VALUE : texSubImage3D should fail for dimension out of range
-[ 18: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero width
-[ 19: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero height
-[ 20: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero depth
-[ 21: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for negative height
-[ 22: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero levels
-[ 23: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail for too many levels
-[ 24: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_2D
-[ 25: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_CUBE_MAP
-[ 26: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail when no texture is bound
-[ 27: PASS ] getError was expected value: INVALID_ENUM : texStorage3D should fail for bad internalformat RGB
-[ 28: PASS ] getError was expected value: INVALID_ENUM : texSubImage3D should generate INVALID_ENUM if passed TEXTURE_2D target
-[ 29: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail if texStorage3D has not succeeded
-[ 30: PASS ] getError was expected value: NO_ERROR : texStorage3D should succeed with a good sized internalformat
-[ 31: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail on immutable-format texture
-[ 32: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 33: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 34: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 35: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail for too-high level
-[ 36: PASS ] getError was expected value: INVALID_VALUE : texSubImage3D should fail for dimension out of range
-[ 37: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero width
-[ 38: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero height
-[ 39: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero depth
-[ 40: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for negative height
-[ 41: PASS ] getError was expected value: INVALID_VALUE : texStorage3D should fail for zero levels
-[ 42: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail for too many levels
-[ 43: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_2D
-[ 44: FAIL ] getError expected: INVALID_ENUM. Was INVALID_OPERATION : texStorage3D should fail for target TEXTURE_CUBE_MAP
-[ 45: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail when no texture is bound
-[ 46: PASS ] getError was expected value: INVALID_ENUM : texStorage3D should fail for bad internalformat RGBA
-[ 47: PASS ] getError was expected value: INVALID_ENUM : texSubImage3D should generate INVALID_ENUM if passed TEXTURE_2D target
-[ 48: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail if texStorage3D has not succeeded
-[ 49: PASS ] getError was expected value: NO_ERROR : texStorage3D should succeed with a good sized internalformat
-[ 50: PASS ] getError was expected value: INVALID_OPERATION : texStorage3D should fail on immutable-format texture
-[ 51: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 52: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 53: PASS ] getError was expected value: NO_ERROR : texSubImage3D should succeed on immutable texture as long as the format is compatible
-[ 54: PASS ] getError was expected value: INVALID_OPERATION : texSubImage3D should fail for too-high level
-[ 55: PASS ] getError was expected value: INVALID_VALUE : texSubImage3D should fail for dimension out of range
-[ 56: PASS ] getError was expected value: NO_ERROR : there should be no errors
-[ 57: PASS ] successfullyParsed is true
-[ FAIL ] 6 failures reported
+[ PASS ] All tests passed

Modified: trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/negativetextureapi-expected.txt (282134 => 282135)


--- trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/negativetextureapi-expected.txt	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/LayoutTests/webgl/2.0.0/deqp/functional/gles3/negativetextureapi-expected.txt	2021-09-08 09:04:27 UTC (rev 282135)
@@ -1,96 +1,4 @@
 This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL.
 
 Test: ../../../resources/webgl_test_files/deqp/functional/gles3/negativetextureapi.html
-
-[ 1: PASS ] negativeTextureApi.activetexture: Passed
-[ 2: PASS ] negativeTextureApi.bindTexture: Passed
-[ 3: PASS ] negativeTextureApi.compressedteximage2d_invalid_target: Passed
-[ 4: PASS ] negativeTextureApi.compressedteximage2d_invalid_format: Passed
-[ 5: PASS ] negativeTextureApi.compressedteximage2d_neg_level: Passed
-[ 6: PASS ] negativeTextureApi.compressedteximage2d_max_level: Passed
-[ 7: PASS ] negativeTextureApi.compressedteximage2d_neg_width_height: Passed
-[ 8: PASS ] negativeTextureApi.compressedteximage2d_max_width_height: Passed
-[ 9: PASS ] negativeTextureApi.compressedteximage2d_invalid_border: Passed
-[ 10: PASS ] negativeTextureApi.compressedteximage2d_invalid_size: Passed
-[ 11: PASS ] negativeTextureApi.copyteximage2d_invalid_target: Passed
-[ 12: PASS ] negativeTextureApi.copyteximage2d_invalid_format: Passed
-[ 13: PASS ] negativeTextureApi.copyteximage2d_inequal_width_height_cube: Passed
-[ 14: PASS ] negativeTextureApi.copyteximage2d_neg_level: Passed
-[ 15: PASS ] negativeTextureApi.copyteximage2d_max_level: Passed
-[ 16: PASS ] negativeTextureApi.copyteximage2d_neg_width_height: Passed
-[ 17: PASS ] negativeTextureApi.copyteximage2d_max_width_height: Passed
-[ 18: PASS ] negativeTextureApi.copyteximage2d_invalid_border: Passed
-[ 19: PASS ] negativeTextureApi.copyteximage2d_incomplete_framebuffer: Passed
-[ 20: PASS ] negativeTextureApi.copytexsubimage2d_invalid_target: Passed
-[ 21: PASS ] negativeTextureApi.copytexsubimage2d_neg_level: Passed
-[ 22: PASS ] negativeTextureApi.copytexsubimage2d_max_level: Passed
-[ 23: PASS ] negativeTextureApi.copytexsubimage2d_neg_offset: Passed
-[ 24: PASS ] negativeTextureApi.copytexsubimage2d_invalid_offset: Passed
-[ 25: PASS ] negativeTextureApi.copytexsubimage2d_neg_width_height: Passed
-[ 26: PASS ] negativeTextureApi.copytexsubimage2d_incomplete_framebuffer: Passed
-[ 27: PASS ] negativeTextureApi.deletetextures: Passed
-[ 28: PASS ] negativeTextureApi.generatemipmap: Passed
-[ 29: PASS ] negativeTextureApi.pixelstorei: Passed
-[ 30: PASS ] negativeTextureApi.teximage2d: Passed
-[ 31: PASS ] negativeTextureApi.teximage2d_inequal_width_height_cube: Passed
-[ 32: PASS ] negativeTextureApi.teximage2d_neg_level: Passed
-[ 33: PASS ] negativeTextureApi.teximage2d_max_level: Passed
-[ 34: PASS ] negativeTextureApi.teximage2d_neg_width_height: Passed
-[ 35: PASS ] negativeTextureApi.teximage2d_max_width_height: Passed
-[ 36: PASS ] negativeTextureApi.teximage2d_invalid_border: Passed
-[ 37: PASS ] negativeTextureApi.texsubimage2d: Passed
-[ 38: PASS ] negativeTextureApi.texsubimage2d_neg_level: Passed
-[ 39: PASS ] negativeTextureApi.texsubimage2d_max_level: Passed
-[ 40: PASS ] negativeTextureApi.texsubimage2d_neg_offset: Passed
-[ 41: PASS ] negativeTextureApi.texsubimage2d_invalid_offset: Passed
-[ 42: PASS ] negativeTextureApi.texsubimage2d_neg_width_height: Passed
-[ 43: PASS ] negativeTextureApi.texparameteri: Passed
-[ 44: PASS ] negativeTextureApi.texparameterf: Passed
-[ 45: PASS ] negativeTextureApi.compressedtexsubimage2d: Passed
-[ 46: PASS ] negativeTextureApi.compressedtexsubimage2d_neg_level: Passed
-[ 47: PASS ] negativeTextureApi.compressedtexsubimage2d_max_level: Passed
-[ 48: PASS ] negativeTextureApi.compressedtexsubimage2d_neg_offset: Passed
-[ 49: PASS ] negativeTextureApi.compressedtexsubimage2d_invalid_offset: Passed
-[ 50: PASS ] negativeTextureApi.compressedtexsubimage2d_neg_width_height: Passed
-[ 51: PASS ] negativeTextureApi.compressedtexsubimage2d_invalid_size: Passed
-[ 52: PASS ] negativeTextureApi.teximage3d: Passed
-[ 53: PASS ] negativeTextureApi.teximage3d_neg_level: Passed
-[ 54: PASS ] negativeTextureApi.teximage3d_max_level: Passed
-[ 55: PASS ] negativeTextureApi.teximage3d_neg_width_height_depth: Passed
-[ 56: PASS ] negativeTextureApi.teximage3d_max_width_height_depth: Passed
-[ 57: PASS ] negativeTextureApi.teximage3d_invalid_border: Passed
-[ 58: PASS ] negativeTextureApi.texsubimage3d: Passed
-[ 59: PASS ] negativeTextureApi.texsubimage3d_neg_level: Passed
-[ 60: PASS ] negativeTextureApi.texsubimage3d_max_level: Passed
-[ 61: PASS ] negativeTextureApi.texsubimage3d_neg_offset: Passed
-[ 62: PASS ] negativeTextureApi.texsubimage3d_invalid_offset: Passed
-[ 63: PASS ] negativeTextureApi.texsubimage3d_neg_width_height: Passed
-[ 64: PASS ] negativeTextureApi.copytexsubimage3d: Passed
-[ 65: PASS ] negativeTextureApi.copytexsubimage3d_neg_level: Passed
-[ 66: PASS ] negativeTextureApi.copytexsubimage3d_max_level: Passed
-[ 67: PASS ] negativeTextureApi.copytexsubimage3d_neg_offset: Passed
-[ 68: PASS ] negativeTextureApi.copytexsubimage3d_invalid_offset: Passed
-[ 69: PASS ] negativeTextureApi.copytexsubimage3d_neg_width_height: Passed
-[ 70: PASS ] negativeTextureApi.copytexsubimage3d_incomplete_framebuffer: Passed
-[ 71: PASS ] negativeTextureApi.compressedteximage3d: Passed
-[ 72: PASS ] negativeTextureApi.compressedteximage3d_neg_level: Passed
-[ 73: PASS ] negativeTextureApi.compressedteximage3d_max_level: Passed
-[ 74: PASS ] negativeTextureApi.compressedteximage3d_neg_width_height_depth: Passed
-[ 75: PASS ] negativeTextureApi.compressedteximage3d_max_width_height_depth: Passed
-[ 76: PASS ] negativeTextureApi.compressedteximage3d_invalid_border: Passed
-[ 77: PASS ] negativeTextureApi.compressedteximage3d_invalid_size: Passed
-[ 78: PASS ] negativeTextureApi.compressedtexsubimage3d: Passed
-[ 79: PASS ] negativeTextureApi.compressedtexsubimage3d_neg_level: Passed
-[ 80: PASS ] negativeTextureApi.compressedtexsubimage3d_max_level: Passed
-[ 81: PASS ] negativeTextureApi.compressedtexsubimage3d_neg_offset: Passed
-[ 82: PASS ] negativeTextureApi.compressedtexsubimage3d_invalid_offset: Passed
-[ 83: PASS ] negativeTextureApi.compressedtexsubimage3d_neg_width_height_depth: Passed
-[ 84: PASS ] negativeTextureApi.compressedtexsubimage3d_invalid_size: Passed
-[ 85: PASS ] negativeTextureApi.texstorage2d: Passed
-[ 86: PASS ] negativeTextureApi.texstorage2d_invalid_binding: Passed
-[ 87: PASS ] negativeTextureApi.texstorage2d_invalid_levels: Passed
-[ 88: FAIL ] negativeTextureApi.texstorage3d: Expected gl.INVALID_ENUM, but got gl.INVALID_OPERATION.
-[ 89: PASS ] negativeTextureApi.texstorage3d_invalid_binding: Passed
-[ 90: PASS ] negativeTextureApi.texstorage3d_invalid_levels: Passed
-[ 91: PASS ] negativeTextureApi.texstorage3d_invalid_levels: successfullyParsed is true
-[ FAIL ] 1 failures reported
+[ PASS ] All tests passed

Modified: trunk/LayoutTests/webgl/TestExpectations (282134 => 282135)


--- trunk/LayoutTests/webgl/TestExpectations	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/LayoutTests/webgl/TestExpectations	2021-09-08 09:04:27 UTC (rev 282135)
@@ -29,3 +29,4 @@
 # Explicitly enable tests which we have fixed. These expectations will be removed when 1.0.x/2.0.y is enabled.
 webgl/2.0.y/deqp/functional/gles3/negativestateapi.html [ Pass ]
 webgl/2.0.y/deqp/functional/gles3/rbostatequery.html [ Pass ]
+webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html [ Pass ]

Modified: trunk/Source/WebCore/ChangeLog (282134 => 282135)


--- trunk/Source/WebCore/ChangeLog	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/Source/WebCore/ChangeLog	2021-09-08 09:04:27 UTC (rev 282135)
@@ -1,3 +1,25 @@
+2021-09-08  Kimmo Kinnunen  <kkinnu...@apple.com>
+
+        webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html fails on Metal
+        https://bugs.webkit.org/show_bug.cgi?id=229948
+
+        Reviewed by Dean Jackson.
+
+        Validate the texStorage3D target using correct
+        validation function. The validation should be removed, as
+        same is done in ANGLE, but for consistency it should be
+        removed from all functions. Until removal, use correct
+        WebKit-side validation too.
+
+        Fixes tests:
+        webgl/2.0.0/deqp/functional/gles3/negativetextureapi.html
+        webgl/2.0.y/deqp/functional/gles3/negativetextureapi.html
+        webgl/2.0.0/conformance2/textures/misc/tex-storage-and-subimage-3d.html
+        webgl/2.0.y/conformance2/textures/misc/tex-storage-and-subimage-3d.html
+
+        * html/canvas/WebGL2RenderingContext.cpp:
+        (WebCore::WebGL2RenderingContext::texStorage3D):
+
 2021-09-08  Tim Nguyen  <n...@apple.com>
 
         Support animations on ::backdrop

Modified: trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp (282134 => 282135)


--- trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp	2021-09-08 08:29:27 UTC (rev 282134)
+++ trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp	2021-09-08 09:04:27 UTC (rev 282135)
@@ -1078,7 +1078,7 @@
     if (isContextLostOrPending())
         return;
 
-    auto texture = validateTextureBinding("texStorage3D", target);
+    auto texture = validateTexture3DBinding("texStorage3D", target);
     if (!texture)
         return;
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to