| 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 Flaky(self, pattern, condition=None, bug=None, max_num_retries=2): | 19 def Flaky(self, pattern, condition=None, bug=None, max_num_retries=2): |
| 20 self.CheckPatternIsValid(pattern) | 20 self.CheckPatternIsValid(pattern) |
| 21 GpuTestExpectations.Flaky(self, pattern, condition, bug=bug, | 21 GpuTestExpectations.Flaky(self, pattern, condition, bug=bug, |
| 22 max_num_retries=max_num_retries) | 22 max_num_retries=max_num_retries) |
| 23 | 23 |
| 24 def Skip(self, pattern, condition=None, bug=None): | 24 def Skip(self, pattern, condition=None, bug=None): |
| 25 self.CheckPatternIsValid(pattern) | 25 self.CheckPatternIsValid(pattern) |
| 26 GpuTestExpectations.Skip(self, pattern, condition, bug) | 26 GpuTestExpectations.Skip(self, pattern, condition, bug) |
| 27 | 27 |
| 28 def CheckPatternIsValid(self, pattern): | 28 def CheckPatternIsValid(self, pattern): |
| 29 # Look for basic wildcards. | 29 # Look for basic wildcards. |
| 30 if not '*' in pattern and not 'WebglExtension.' in pattern: | 30 if not '*' in pattern and not 'WebglExtension_' in pattern: |
| 31 full_path = os.path.normpath(os.path.join(self.conformance_path, pattern)) | 31 full_path = os.path.normpath(os.path.join(self.conformance_path, pattern)) |
| 32 if not os.path.exists(full_path): | 32 if not os.path.exists(full_path): |
| 33 raise Exception('The WebGL conformance test path specified in ' + | 33 raise Exception('The WebGL conformance test path specified in ' + |
| 34 'expectation does not exist: ' + full_path) | 34 'expectation does not exist: ' + full_path) |
| 35 | 35 |
| 36 def SetExpectations(self): | 36 def SetExpectations(self): |
| 37 # =================================== | 37 # =================================== |
| 38 # Extension availability expectations | 38 # Extension availability expectations |
| 39 # =================================== | 39 # =================================== |
| 40 # It's expected that not all extensions will be available on all platforms. | 40 # It's expected that not all extensions will be available on all platforms. |
| 41 # Having a test listed here is not necessarily a problem. | 41 # Having a test listed here is not necessarily a problem. |
| 42 | 42 |
| 43 self.Fail('WebglExtension.EXT_color_buffer_float', | 43 self.Fail('WebglExtension_EXT_color_buffer_float', |
| 44 ['win', 'mac']) | 44 ['win', 'mac']) |
| 45 self.Fail('WebglExtension.WEBGL_compressed_texture_astc', | 45 self.Fail('WebglExtension_WEBGL_compressed_texture_astc', |
| 46 ['win', 'mac', 'linux']) | 46 ['win', 'mac', 'linux']) |
| 47 self.Fail('WebglExtension.WEBGL_compressed_texture_atc', | 47 self.Fail('WebglExtension_WEBGL_compressed_texture_atc', |
| 48 ['win', 'mac', 'linux']) | 48 ['win', 'mac', 'linux']) |
| 49 self.Fail('WebglExtension.WEBGL_compressed_texture_etc1', | 49 self.Fail('WebglExtension_WEBGL_compressed_texture_etc1', |
| 50 ['mac', 'linux']) | 50 ['mac', 'linux']) |
| 51 self.Fail('WebglExtension.WEBGL_compressed_texture_pvrtc', | 51 self.Fail('WebglExtension_WEBGL_compressed_texture_pvrtc', |
| 52 ['win', 'mac', 'linux']) | 52 ['win', 'mac', 'linux']) |
| 53 | 53 |
| 54 # Extensions not available under D3D9 | 54 # Extensions not available under D3D9 |
| 55 self.Fail('WebglExtension.EXT_disjoint_timer_query', | 55 self.Fail('WebglExtension_EXT_disjoint_timer_query', |
| 56 ['win', 'd3d9']) | 56 ['win', 'd3d9']) |
| 57 self.Fail('WebglExtension.EXT_sRGB', | 57 self.Fail('WebglExtension_EXT_sRGB', |
| 58 ['win', 'd3d9']) | 58 ['win', 'd3d9']) |
| 59 self.Fail('WebglExtension.WEBGL_compressed_texture_etc1', | 59 self.Fail('WebglExtension_WEBGL_compressed_texture_etc1', |
| 60 ['win', 'd3d9']) | 60 ['win', 'd3d9']) |
| 61 | 61 |
| 62 self.Fail('WebglExtension.WEBGL_depth_texture', | 62 self.Fail('WebglExtension_WEBGL_depth_texture', |
| 63 ['win', 'amd', 'd3d9']) | 63 ['win', 'amd', 'd3d9']) |
| 64 | 64 |
| 65 self.Fail('WebglExtension.WEBGL_draw_buffers', | 65 self.Fail('WebglExtension_WEBGL_draw_buffers', |
| 66 ['win', 'd3d9']) | 66 ['win', 'd3d9']) |
| 67 | 67 |
| 68 # Android general | 68 # Android general |
| 69 self.Fail('WebglExtension.EXT_disjoint_timer_query', | 69 self.Fail('WebglExtension_EXT_disjoint_timer_query', |
| 70 ['android']) | 70 ['android']) |
| 71 self.Fail('WebglExtension.EXT_frag_depth', | 71 self.Fail('WebglExtension_EXT_frag_depth', |
| 72 ['android']) | 72 ['android']) |
| 73 self.Fail('WebglExtension.EXT_shader_texture_lod', | 73 self.Fail('WebglExtension_EXT_shader_texture_lod', |
| 74 ['android']) | 74 ['android']) |
| 75 self.Fail('WebglExtension.WEBGL_compressed_texture_astc', | 75 self.Fail('WebglExtension_WEBGL_compressed_texture_astc', |
| 76 ['android']) | 76 ['android']) |
| 77 self.Fail('WebglExtension.WEBGL_compressed_texture_pvrtc', | 77 self.Fail('WebglExtension_WEBGL_compressed_texture_pvrtc', |
| 78 ['android']) | 78 ['android']) |
| 79 self.Fail('WebglExtension.WEBGL_compressed_texture_s3tc', | 79 self.Fail('WebglExtension_WEBGL_compressed_texture_s3tc', |
| 80 ['android']) | 80 ['android']) |
| 81 self.Fail('WebglExtension.WEBGL_depth_texture', | 81 self.Fail('WebglExtension_WEBGL_depth_texture', |
| 82 ['android']) | 82 ['android']) |
| 83 self.Fail('WebglExtension.WEBGL_draw_buffers', | 83 self.Fail('WebglExtension_WEBGL_draw_buffers', |
| 84 ['android']) | 84 ['android']) |
| 85 | 85 |
| 86 # Nexus 5 | 86 # Nexus 5 |
| 87 self.Fail('WebglExtension.OES_texture_float_linear', | 87 self.Fail('WebglExtension_OES_texture_float_linear', |
| 88 ['android', ('qualcomm', 'Adreno (TM) 330')]) | 88 ['android', ('qualcomm', 'Adreno (TM) 330')]) |
| 89 | 89 |
| 90 # Nexus 5X |
| 91 self.Fail('WebglExtension_EXT_sRGB', |
| 92 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) |
| 93 |
| 90 # Nexus 6 (Adreno 420) and 6P (Adreno 430) | 94 # Nexus 6 (Adreno 420) and 6P (Adreno 430) |
| 91 self.Fail('WebglExtension.EXT_sRGB', | 95 self.Fail('WebglExtension_EXT_sRGB', |
| 92 ['android', | 96 ['android', |
| 93 ('qualcomm', 'Adreno (TM) 420'), | 97 ('qualcomm', 'Adreno (TM) 420'), |
| 94 ('qualcomm', 'Adreno (TM) 430')]) | 98 ('qualcomm', 'Adreno (TM) 430')]) |
| 95 | 99 |
| 96 # Nexus 9 | 100 # Nexus 9 |
| 97 self.Fail('WebglExtension.WEBGL_compressed_texture_atc', | 101 self.Fail('WebglExtension_WEBGL_compressed_texture_atc', |
| 98 ['android', ('nvidia', 'NVIDIA Tegra')]) | 102 ['android', ('nvidia', 'NVIDIA Tegra')]) |
| 99 | 103 |
| 100 # ======================== | 104 # ======================== |
| 101 # Conformance expectations | 105 # Conformance expectations |
| 102 # ======================== | 106 # ======================== |
| 103 # Fails on all platforms | 107 # Fails on all platforms |
| 104 | 108 |
| 105 # We need to add WebGL 1 check in command buffer that format/type from | 109 # We need to add WebGL 1 check in command buffer that format/type from |
| 106 # TexSubImage2D have to match the current texture's. | 110 # TexSubImage2D have to match the current texture's. |
| 107 self.Fail('conformance/textures/misc/tex-sub-image-2d-bad-args.html', | 111 self.Fail('conformance/textures/misc/tex-sub-image-2d-bad-args.html', |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 # out. Skip it for now until it's fixed and running reliably. | 399 # out. Skip it for now until it's fixed and running reliably. |
| 396 self.Skip('conformance/extensions/oes-texture-half-float-with-video.html', | 400 self.Skip('conformance/extensions/oes-texture-half-float-with-video.html', |
| 397 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) | 401 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) |
| 398 self.Fail('conformance/extensions/webgl-compressed-texture-atc.html', | 402 self.Fail('conformance/extensions/webgl-compressed-texture-atc.html', |
| 399 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) | 403 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) |
| 400 self.Fail('conformance/glsl/bugs/sampler-struct-function-arg.html', | 404 self.Fail('conformance/glsl/bugs/sampler-struct-function-arg.html', |
| 401 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) | 405 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) |
| 402 # This test is skipped because it is crashing the GPU process. | 406 # This test is skipped because it is crashing the GPU process. |
| 403 self.Skip('conformance/glsl/misc/shader-with-non-reserved-words.html', | 407 self.Skip('conformance/glsl/misc/shader-with-non-reserved-words.html', |
| 404 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) | 408 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=609883) |
| 405 self.Fail('WebglExtension.EXT_sRGB', | |
| 406 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) | |
| 407 self.Fail('conformance/textures/misc/' + | 409 self.Fail('conformance/textures/misc/' + |
| 408 'tex-image-and-sub-image-2d-with-array-buffer-view.html', | 410 'tex-image-and-sub-image-2d-with-array-buffer-view.html', |
| 409 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) | 411 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) |
| 410 self.Fail('conformance/textures/canvas/*', | 412 self.Fail('conformance/textures/canvas/*', |
| 411 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) | 413 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) |
| 412 self.Fail('conformance/textures/image/*', | 414 self.Fail('conformance/textures/image/*', |
| 413 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) | 415 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) |
| 414 self.Fail('conformance/textures/image_bitmap_from_canvas/*', | 416 self.Fail('conformance/textures/image_bitmap_from_canvas/*', |
| 415 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) | 417 ['android', ('qualcomm', 'Adreno (TM) 418')], bug=610951) |
| 416 self.Fail('conformance/textures/image_bitmap_from_blob/*', | 418 self.Fail('conformance/textures/image_bitmap_from_blob/*', |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 678 self.Fail('conformance/textures/misc/texture-npot.html', | 680 self.Fail('conformance/textures/misc/texture-npot.html', |
| 679 ['chromeos', ('intel', 0xa011)], bug=375554) | 681 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 680 self.Fail('conformance/textures/misc/texture-npot-video.html', | 682 self.Fail('conformance/textures/misc/texture-npot-video.html', |
| 681 ['chromeos', ('intel', 0xa011)], bug=375554) | 683 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 682 self.Fail('conformance/textures/misc/texture-size.html', | 684 self.Fail('conformance/textures/misc/texture-size.html', |
| 683 ['chromeos', ('intel', 0xa011)], bug=375554) | 685 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 684 self.Fail('conformance/uniforms/gl-uniform-arrays.html', | 686 self.Fail('conformance/uniforms/gl-uniform-arrays.html', |
| 685 ['chromeos', ('intel', 0xa011)], bug=375554) | 687 ['chromeos', ('intel', 0xa011)], bug=375554) |
| 686 self.Skip('conformance/uniforms/uniform-default-values.html', | 688 self.Skip('conformance/uniforms/uniform-default-values.html', |
| 687 ['chromeos', ('intel', 0xa011)], bug=375554) | 689 ['chromeos', ('intel', 0xa011)], bug=375554) |
| OLD | NEW |