| OLD | NEW |
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 import os | 4 import os |
| 5 | 5 |
| 6 from gpu_tests.gpu_test_expectations import GpuTestExpectations | 6 from gpu_tests.gpu_test_expectations import GpuTestExpectations |
| 7 | 7 |
| 8 # See the GpuTestExpectations class for documentation. | 8 # See the GpuTestExpectations class for documentation. |
| 9 | 9 |
| 10 class WebGLConformanceExpectations(GpuTestExpectations): | 10 class WebGLConformanceExpectations(GpuTestExpectations): |
| 11 def __init__(self, conformance_path): | 11 def __init__(self, conformance_path): |
| 12 self.conformance_path = conformance_path | 12 self.conformance_path = conformance_path |
| 13 super(WebGLConformanceExpectations, self).__init__() | 13 super(WebGLConformanceExpectations, self).__init__() |
| 14 | 14 |
| 15 def Fail(self, pattern, condition=None, bug=None): | 15 def Fail(self, pattern, condition=None, bug=None): |
| 16 self.CheckPatternIsValid(pattern) | 16 self.CheckPatternIsValid(pattern) |
| 17 GpuTestExpectations.Fail(self, pattern, condition, bug) | 17 GpuTestExpectations.Fail(self, pattern, condition, bug) |
| 18 | 18 |
| 19 def Skip(self, pattern, condition=None, bug=None): | 19 def Skip(self, pattern, condition=None, bug=None): |
| 20 self.CheckPatternIsValid(pattern) | 20 self.CheckPatternIsValid(pattern) |
| 21 GpuTestExpectations.Skip(self, pattern, condition, bug) | 21 GpuTestExpectations.Skip(self, pattern, condition, bug) |
| 22 | 22 |
| 23 def CheckPatternIsValid(self, pattern): | 23 def CheckPatternIsValid(self, pattern): |
| 24 # Look for basic wildcards. | 24 # Look for basic wildcards. |
| 25 if not '*' in pattern: | 25 if not '*' in pattern and not 'WebglExtension.' in pattern: |
| 26 full_path = os.path.normpath(os.path.join(self.conformance_path, pattern)) | 26 full_path = os.path.normpath(os.path.join(self.conformance_path, pattern)) |
| 27 if not os.path.exists(full_path): | 27 if not os.path.exists(full_path): |
| 28 raise Exception('The WebGL conformance test path specified in ' + | 28 raise Exception('The WebGL conformance test path specified in ' + |
| 29 'expectation does not exist: ' + full_path) | 29 'expectation does not exist: ' + full_path) |
| 30 | 30 |
| 31 def SetExpectations(self): | 31 def SetExpectations(self): |
| 32 # =================================== |
| 33 # Extension availability expectations |
| 34 # =================================== |
| 35 # It's expected that not all extensions will be available on all platforms. |
| 36 # Having a test listed here is not necessarily a problem. |
| 37 |
| 38 self.Fail('WebglExtension.EXT_color_buffer_float', |
| 39 ['win', 'mac']) |
| 40 self.Fail('WebglExtension.WEBGL_compressed_texture_astc', |
| 41 ['win', 'mac', 'linux']) |
| 42 self.Fail('WebglExtension.WEBGL_compressed_texture_atc', |
| 43 ['win', 'mac', 'linux']) |
| 44 self.Fail('WebglExtension.WEBGL_compressed_texture_etc1', |
| 45 ['mac', 'linux']) |
| 46 self.Fail('WebglExtension.WEBGL_compressed_texture_pvrtc', |
| 47 ['win', 'mac', 'linux']) |
| 48 |
| 49 # Extensions not available under D3D9 |
| 50 self.Fail('WebglExtension.EXT_disjoint_timer_query', |
| 51 ['win', 'd3d9']) |
| 52 self.Fail('WebglExtension.EXT_sRGB', |
| 53 ['win', 'd3d9']) |
| 54 self.Fail('WebglExtension.WEBGL_compressed_texture_etc1', |
| 55 ['win', 'd3d9']) |
| 56 |
| 57 self.Fail('WebglExtension.WEBGL_depth_texture', |
| 58 ['win', 'amd', 'd3d9']) |
| 59 |
| 60 self.Fail('WebglExtension.WEBGL_draw_buffers', |
| 61 ['win', 'd3d9']) |
| 62 |
| 63 # ======================== |
| 64 # Conformance expectations |
| 65 # ======================== |
| 32 # Fails on all platforms | 66 # Fails on all platforms |
| 33 self.Fail('deqp/data/gles2/shaders/functions.html', | 67 self.Fail('deqp/data/gles2/shaders/functions.html', |
| 34 bug=478572) | 68 bug=478572) |
| 35 self.Fail('deqp/data/gles2/shaders/scoping.html', | 69 self.Fail('deqp/data/gles2/shaders/scoping.html', |
| 36 bug=478572) | 70 bug=478572) |
| 37 self.Fail('conformance/extensions/ext-sRGB.html', | 71 self.Fail('conformance/extensions/ext-sRGB.html', |
| 38 bug=540900) | 72 bug=540900) |
| 39 | 73 |
| 40 # Remove after we roll in https://github.com/KhronosGroup/WebGL/pull/1520. | 74 # Remove after we roll in https://github.com/KhronosGroup/WebGL/pull/1520. |
| 41 self.Fail('conformance/extensions/oes-vertex-array-object.html', | 75 self.Fail('conformance/extensions/oes-vertex-array-object.html', |
| (...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 self.Fail('conformance/textures/misc/texture-npot.html', | 457 self.Fail('conformance/textures/misc/texture-npot.html', |
| 424 ['chromeos', ('intel', 0xa011)], bug=375554) | 458 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 425 self.Fail('conformance/textures/misc/texture-npot-video.html', | 459 self.Fail('conformance/textures/misc/texture-npot-video.html', |
| 426 ['chromeos', ('intel', 0xa011)], bug=375554) | 460 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 427 self.Fail('conformance/textures/misc/texture-size.html', | 461 self.Fail('conformance/textures/misc/texture-size.html', |
| 428 ['chromeos', ('intel', 0xa011)], bug=375554) | 462 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 429 self.Fail('conformance/uniforms/gl-uniform-arrays.html', | 463 self.Fail('conformance/uniforms/gl-uniform-arrays.html', |
| 430 ['chromeos', ('intel', 0xa011)], bug=375554) | 464 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 431 self.Skip('conformance/uniforms/uniform-default-values.html', | 465 self.Skip('conformance/uniforms/uniform-default-values.html', |
| 432 ['chromeos', ('intel', 0xa011)], bug=375554) | 466 ['chromeos', ('intel', 0xa011)], bug=375554) |
| OLD | NEW |