Commit 7206bff5 authored by kbr's avatar kbr Committed by Commit bot

Run WebGL 1.0 tests as part of the WebGL 2.0 conformance suite.

Now that the shards are more evenly distributed, this is feasible.
Increase the number of shards to handle the additional ~15 minutes of
run time.

BUG=586033
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2133673003
Cr-Commit-Position: refs/heads/master@{#405246}
parent 97a65d53
......@@ -926,7 +926,6 @@ TELEMETRY_GPU_INTEGRATION_TESTS = {
'target_name': 'webgl_conformance',
'args': [
'--webgl-conformance-version=2.0.0',
'--webgl2-only=true',
# The current working directory when run via isolate is
# out/Debug or out/Release. Reference this file relatively to
# it.
......@@ -934,9 +933,9 @@ TELEMETRY_GPU_INTEGRATION_TESTS = {
'../../content/test/data/gpu/webgl2_conformance_tests_output.json',
],
'swarming': {
# These tests currently take about an hour to run. Split them
# into roughly 5-minute shards.
'shards': 12,
# These tests currently take about an hour and fifteen minutes
# to run. Split them into roughly 5-minute shards.
'shards': 15,
},
},
'webgl2_conformance_angle_tests': {
......@@ -966,7 +965,6 @@ TELEMETRY_GPU_INTEGRATION_TESTS = {
],
'args': [
'--webgl-conformance-version=2.0.0',
'--webgl2-only=true',
# The current working directory when run via isolate is
# out/Debug or out/Release. Reference this file relatively to
# it.
......@@ -974,9 +972,9 @@ TELEMETRY_GPU_INTEGRATION_TESTS = {
'../../content/test/data/gpu/webgl2_conformance_tests_output.json',
],
'swarming': {
# These tests currently take about an hour to run. Split them
# into roughly 5-minute shards.
'shards': 12,
# These tests currently take about an hour and fifteen minutes
# to run. Split them into roughly 5-minute shards.
'shards': 15,
},
},
}
......
......@@ -31,6 +31,19 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
# All platforms.
self.Fail('conformance/misc/invalid-passed-params.html', bug=483282)
self.Fail('conformance/textures/image_bitmap_from_canvas/' +
'tex-2d-rgba-rgba-unsigned_byte.html', bug=483282)
self.Fail('conformance/textures/image_bitmap_from_canvas/' +
'tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html', bug=483282)
self.Fail('conformance/textures/image_bitmap_from_canvas/' +
'tex-2d-rgba-rgba-unsigned_short_5_5_5_1.html', bug=483282)
self.Fail('conformance/textures/image_bitmap_from_canvas/' +
'tex-2d-rgb-rgb-unsigned_byte.html', bug=483282)
self.Fail('conformance/textures/image_bitmap_from_canvas/' +
'tex-2d-rgb-rgb-unsigned_short_5_6_5.html', bug=483282)
# Too slow (take about one hour to run)
self.Skip('deqp/functional/gles3/builtinprecision/*.html', bug=619403)
......@@ -62,6 +75,24 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
['amd'], bug=617290)
# Windows only.
self.Fail('conformance/glsl/bugs/' +
'pow-of-small-constant-in-user-defined-function.html',
['win'], bug=485641)
self.Fail('conformance/misc/uninitialized-test.html',
['win'], bug=483282)
self.Fail('conformance/rendering/point-specific-shader-variables.html',
['win'], bug=616335)
self.Fail('conformance/textures/webgl_canvas/' +
'tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html',
['win'], bug=483282)
self.Fail('conformance/textures/webgl_canvas/' +
'tex-2d-rgba-rgba-unsigned_short_5_5_5_1.html',
['win'], bug=483282)
self.Fail('conformance/textures/webgl_canvas/' +
'tex-2d-rgb-rgb-unsigned_short_5_6_5.html',
['win'], bug=483282)
self.Fail('deqp/data/gles2/shaders/functions.html',
['win'], bug=478572)
self.Fail('deqp/functional/gles3/shaderloop_for.html',
['win'], bug=617817)
self.Fail('deqp/functional/gles3/shaderloop_while.html',
......@@ -125,6 +156,7 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
# It's unfortunate that this suppression needs to be so broad, but
# basically any test that uses readPixels is potentially flaky, and
# it's infeasible to suppress individual failures one by one.
self.Flaky('conformance/*', ['win', ('amd', 0x6779)], bug=491419)
self.Flaky('conformance2/*', ['win', ('amd', 0x6779)], bug=491419)
self.Flaky('deqp/*', ['win', ('amd', 0x6779)], bug=491419)
......@@ -180,6 +212,10 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
['win', 'intel'], bug=626068)
# Mac only.
self.Fail('conformance/glsl/misc/shaders-with-invariance.html',
['mac'], bug=483282)
self.Fail('deqp/data/gles2/shaders/scoping.html',
['mac'], bug=483282)
self.Flaky('deqp/functional/gles3/shaderindexing/varying.html',
['mac'], bug=619264)
self.Fail('deqp/functional/gles3/shaderloop_do_while.html',
......@@ -252,6 +288,16 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
['mac'], bug=483282)
# Mac Retina NVIDIA
self.Fail('conformance/attribs/gl-disabled-vertex-attrib.html',
['mac', ('nvidia', 0xfe9)], bug=483282)
self.Fail(
'conformance/glsl/bugs/array-of-struct-with-int-first-position.html',
['mac', ('nvidia', 0xfd5), ('nvidia', 0xfe9)], bug=368912)
self.Fail('conformance/programs/' +
'gl-bind-attrib-location-long-names-test.html',
['mac', ('nvidia', 0xfe9)], bug=483282)
self.Fail('conformance/programs/gl-bind-attrib-location-test.html',
['mac', ('nvidia', 0xfe9)], bug=483282)
self.Fail('conformance2/textures/misc/tex-input-validation.html',
['mac', ('nvidia', 0xfe9), 'no_angle'], bug=483282)
self.Fail('conformance2/textures/misc/tex-mipmap-levels.html',
......@@ -467,6 +513,22 @@ class WebGL2ConformanceExpectations(WebGLConformanceExpectations):
['mac', 'intel'], bug=483282)
# Linux only.
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_byte.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_5_5_5_1.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_byte.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_short_5_6_5.html',
['linux'], bug=627525)
self.Fail('conformance2/glsl3/vector-dynamic-indexing.html',
['linux'], bug=483282)
......
......@@ -329,11 +329,15 @@ class WebglConformance(gpu_test_base.TestBase):
i = 0
min_version = None
max_version = None
while i < len(line_tokens):
token = line_tokens[i]
if token == '--min-version':
i += 1
min_version = line_tokens[i]
elif token == '--max-version':
i += 1
max_version = line_tokens[i]
i += 1
min_version_to_compare = min_version or folder_min_version
......@@ -342,6 +346,9 @@ class WebglConformance(gpu_test_base.TestBase):
_CompareVersion(version, min_version_to_compare) < 0):
continue
if max_version and _CompareVersion(version, max_version) > 0:
continue
if (webgl2_only and not '.txt' in test_name and
(not min_version_to_compare or
not min_version_to_compare.startswith('2'))):
......
......@@ -402,7 +402,7 @@ class WebGLConformanceExpectations(GpuTestExpectations):
# This is because webview already has this expectation below
self.Fail('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_byte.html',
['android-content-shell', 'android-chromium',
['android', 'android-content-shell', 'android-chromium',
('qualcomm', 'Adreno (TM) 430')], bug=611945)
self.Fail('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_short_5_6_5.html',
......@@ -410,15 +410,15 @@ class WebGLConformanceExpectations(GpuTestExpectations):
('qualcomm', 'Adreno (TM) 430')], bug=611945)
self.Fail('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_byte.html',
['android-content-shell', 'android-chromium',
['android', 'android-content-shell', 'android-chromium',
('qualcomm', 'Adreno (TM) 430')], bug=611945)
self.Fail('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html',
['android-content-shell', 'android-chromium',
['android', 'android-content-shell', 'android-chromium',
('qualcomm', 'Adreno (TM) 430')], bug=611945)
self.Fail('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_5_5_5_1.html',
['android-content-shell', 'android-chromium',
['android', 'android-content-shell', 'android-chromium',
('qualcomm', 'Adreno (TM) 430')], bug=611945)
self.Fail('conformance/textures/webgl_canvas/' +
'tex-2d-rgb-rgb-unsigned_byte.html',
......@@ -638,6 +638,22 @@ class WebGLConformanceExpectations(GpuTestExpectations):
['mac', ('amd', 0x6821)], bug=599272)
# Linux failures
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_byte.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgba-rgba-unsigned_short_5_5_5_1.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_byte.html',
['linux'], bug=627525)
self.Flaky('conformance/textures/video/' +
'tex-2d-rgb-rgb-unsigned_short_5_6_5.html',
['linux'], bug=627525)
# OpenGL
self.Fail('conformance/extensions/oes-texture-half-float.html',
['linux', 'opengl'], bug=607283)
......
......@@ -143,5 +143,10 @@ class WebGLConformanceExpectationsTest(unittest.TestCase):
conflicts = non_gpu_conflicts and gpu_conflicts
if conflicts:
print "WARNING: Found a conflict for", pattern
print "WARNING: Found a conflict for", pattern, " :"
print " ", c1
print " ", c2
print " Type:" + (" (non-gpu)" if non_gpu_conflicts else "") + \
(" (gpu)" if gpu_conflicts else "")
self.assertEquals(conflicts, False)
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment