Index: content/test/gpu/page_sets/gpu_process_tests.py |
diff --git a/content/test/gpu/page_sets/gpu_process_tests.py b/content/test/gpu/page_sets/gpu_process_tests.py |
index fcf2f930be476860fc97f2d7605a6df482713773..9d59b45562ddd5ef73c71d919ba5a2cbcbb8ec0e 100644 |
--- a/content/test/gpu/page_sets/gpu_process_tests.py |
+++ b/content/test/gpu/page_sets/gpu_process_tests.py |
@@ -7,6 +7,13 @@ from telemetry.page import page_test |
from gpu_tests import gpu_test_base |
+ |
+# A list of exceptional driver bug workarounds allowed to be present |
+# during some of the tests that ensure that the browser's and GPU |
+# process's notions of the driver bug workarounds are equivalent. |
+workaround_exceptions = set([u'decode_encode_srgb_for_generatemipmap']) |
+ |
+ |
class GpuProcessSharedPageState(gpu_test_base.GpuSharedPageState): |
gpu_switches = ['--gpu-no-complete-info-collection', |
@@ -145,7 +152,7 @@ class EqualBugWorkaroundsBasePage(gpu_test_base.PageBase): |
'chrome.gpuBenchmarking.getGpuDriverBugWorkarounds()') |
diff = set(browser_list).symmetric_difference(set(gpu_list)) |
- if len(diff) > 0: |
+ if not diff.issubset(workaround_exceptions): |
print 'Test failed. Printing page contents:' |
print tab.EvaluateJavaScript('document.body.innerHTML') |
raise page_test.Failure('Browser and GPU process list of driver bug' \ |
@@ -703,7 +710,7 @@ class OnlyOneWorkaroundPage(EqualBugWorkaroundsBasePage): |
gpu_list, disabled_gl_extensions = recorded_info |
diff = set(self.expected_workarounds).symmetric_difference(set(gpu_list)) |
- if len(diff) > 0: |
+ if not diff.issubset(workaround_exceptions): |
print 'Test failed. Printing page contents:' |
print tab.EvaluateJavaScript('document.body.innerHTML') |
raise page_test.Failure('GPU process and expected list of driver bug' \ |