Bug 181660

Summary: [GTK] Three WebGL tests newly failing
Product: WebKit Reporter: Michael Catanzaro <mcatanzaro>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: aperez, bugs-noreply, calvaris, dino, mcatanzaro, zan
Priority: P2    
Version: Other   
Hardware: PC   
OS: Linux   

Description Michael Catanzaro 2018-01-15 17:52:26 PST
The following WebGL layout tests:

webgl/1.0.2/conformance/limits/gl-min-textures.html
webgl/1.0.3/conformance/glsl/bugs/sampler-array-using-loop-index.html

began failing after r226950, r226951, or r226952. I'm not sure which commit is most suspicious. Updating expectations accordingly.

--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/webgl/1.0.2/conformance/limits/gl-min-textures-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/webgl/1.0.2/conformance/limits/gl-min-textures-actual.txt
@@ -1,5 +1,5 @@
 This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL.
 
 Test: ../../resources/webgl_test_files/conformance/limits/gl-min-textures.html
-PASS
+FAIL


--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/webgl/1.0.3/conformance/glsl/bugs/sampler-array-using-loop-index-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/webgl/1.0.3/conformance/glsl/bugs/sampler-array-using-loop-index-actual.txt
@@ -1,5 +1,5 @@
 This test runs the WebGL Test listed below in an iframe and reports PASS or FAIL.
 
 Test: ../../../resources/webgl_test_files/conformance/glsl/bugs/sampler-array-using-loop-index.html
-PASS
+FAIL
Comment 1 Michael Catanzaro 2018-01-15 17:57:58 PST
Sorry, it's three tests failing. fast/canvas/webgl/webgl-depth-texture.html has a more interesting diff:

--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/fast/canvas/webgl/webgl-depth-texture-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/fast/canvas/webgl/webgl-depth-texture-actual.txt
@@ -7,75 +7,8 @@
 Testing binding enum with extension disabled
 PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_ENUM.
 PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_ENUM.
-PASS Successfully enabled WEBGL_depth_texture extension
-PASS WEBGL_depth_texture listed as supported and getExtension succeeded
-Testing WEBGL_depth_texture
-
-testing: UNSIGNED_SHORT
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, new Uint16Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, canvas2) generated one of expected GL errors: INVALID_VALUE or INVALID_ENUM or INVALID_OPERATION.
-PASS gl.copyTexImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 0, 0, 1, 1, 0) generated one of expected GL errors: INVALID_ENUM or INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 8, 8, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null) generated expected GL error: NO_ERROR.
-PASS gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 1, 1, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, new Uint16Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 0, 0, 1, 1) generated expected GL error: INVALID_OPERATION.
-PASS gl.generateMipmap(gl.TEXTURE_2D) generated expected GL error: INVALID_OPERATION.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
-PASS depth texture rendered correctly.
-PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.TEXTURE_2D, tex, 0) generated expected GL error: NO_ERROR.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
-PASS gl.clear(gl.DEPTH_BUFFER_BIT) generated expected GL error: INVALID_FRAMEBUFFER_OPERATION.
-PASS gl.getError() is gl.NO_ERROR
-
-testing: UNSIGNED_INT
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_NEGATIVE_X, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 1, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, new Uint32Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, canvas2) generated one of expected GL errors: INVALID_VALUE or INVALID_ENUM or INVALID_OPERATION.
-PASS gl.copyTexImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 0, 0, 1, 1, 0) generated one of expected GL errors: INVALID_ENUM or INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 8, 8, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null) generated expected GL error: NO_ERROR.
-PASS gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 1, 1, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, new Uint32Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 0, 0, 1, 1) generated expected GL error: INVALID_OPERATION.
-PASS gl.generateMipmap(gl.TEXTURE_2D) generated expected GL error: INVALID_OPERATION.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
-PASS depth texture rendered correctly.
-PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.TEXTURE_2D, tex, 0) generated expected GL error: NO_ERROR.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
-PASS gl.clear(gl.DEPTH_BUFFER_BIT) generated expected GL error: INVALID_FRAMEBUFFER_OPERATION.
-PASS gl.getError() is gl.NO_ERROR
-
-testing: UNSIGNED_INT_24_8_WEBGL
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_CUBE_MAP_POSITIVE_Y, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 1, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_STENCIL, 1, 1, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, new Uint32Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_STENCIL, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, canvas2) generated one of expected GL errors: INVALID_VALUE or INVALID_ENUM or INVALID_OPERATION.
-PASS gl.copyTexImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_STENCIL, 0, 0, 1, 1, 0) generated one of expected GL errors: INVALID_ENUM or INVALID_OPERATION.
-PASS gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_STENCIL, 8, 8, 0, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, null) generated expected GL error: NO_ERROR.
-PASS gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 1, 1, gl.DEPTH_STENCIL, ext.UNSIGNED_INT_24_8_WEBGL, new Uint32Array(1)) generated expected GL error: INVALID_OPERATION.
-PASS gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, 0, 0, 1, 1) generated expected GL error: INVALID_OPERATION.
-PASS gl.generateMipmap(gl.TEXTURE_2D) generated expected GL error: INVALID_OPERATION.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is gl.FRAMEBUFFER_COMPLETE
-PASS depth texture rendered correctly.
-PASS gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.DEPTH_ATTACHMENT, gl.TEXTURE_2D, tex, 0) generated expected GL error: NO_ERROR.
-PASS gl.checkFramebufferStatus(gl.FRAMEBUFFER) is not gl.FRAMEBUFFER_COMPLETE
-PASS gl.clear(gl.DEPTH_BUFFER_BIT) generated expected GL error: INVALID_FRAMEBUFFER_OPERATION.
-PASS gl.getError() is gl.NO_ERROR
+PASS No WEBGL_depth_texture support -- this is legal
+PASS WEBGL_depth_texture not listed as supported and getExtension failed -- this is legal
 
 PASS successfullyParsed is true
Comment 2 Michael Catanzaro 2018-01-15 17:59:37 PST
(In reply to Michael Catanzaro from comment #1)
> +PASS No WEBGL_depth_texture support -- this is legal
> +PASS WEBGL_depth_texture not listed as supported and getExtension failed --
> this is legal

Surely this must be caused by the X server update in r226950, not by r226951 or r226952.
Comment 3 Michael Catanzaro 2018-06-03 15:33:18 PDT
fast/canvas/webgl/webgl-depth-texture.html was fixed by some commit between r231561-r231591, inclusive.
Comment 4 Michael Catanzaro 2018-06-03 15:47:04 PDT
(In reply to Michael Catanzaro from comment #3)
> fast/canvas/webgl/webgl-depth-texture.html was fixed by some commit between
> r231561-r231591, inclusive.

Actually, they're all fixed.