Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(166)

Unified Diff: tools/telemetry/telemetry/core/tab_unittest.py

Issue 23694031: Fix race conditions in window snapshot code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added screenshot sync test to telemetry unittests, updated cc unittest Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/telemetry/core/tab_unittest.py
diff --git a/tools/telemetry/telemetry/core/tab_unittest.py b/tools/telemetry/telemetry/core/tab_unittest.py
index f555dc2812745a06c927cc1517a102b31bfcc07b..469015abb6f7bfae3d1cb96dd50df2728837441b 100644
--- a/tools/telemetry/telemetry/core/tab_unittest.py
+++ b/tools/telemetry/telemetry/core/tab_unittest.py
@@ -3,12 +3,10 @@
# found in the LICENSE file.
import logging
-import time
from telemetry.core import util
from telemetry.core import exceptions
from telemetry.unittest import tab_test_case
-from telemetry.unittest import DisabledTest
def _IsDocumentVisible(tab):
@@ -56,7 +54,6 @@ class GpuTabTest(tab_test_case.TabTestCase):
self._extra_browser_args = ['--enable-gpu-benchmarking']
super(GpuTabTest, self).setUp()
- @DisabledTest
def testScreenshot(self):
if not self._tab.screenshot_supported:
logging.warning('Browser does not support screenshots, skipping test.')
@@ -68,8 +65,6 @@ class GpuTabTest(tab_test_case.TabTestCase):
self._tab.WaitForDocumentReadyStateToBeComplete()
pixel_ratio = self._tab.EvaluateJavaScript('window.devicePixelRatio || 1')
- # TODO(bajones): Sleep for a bit to counter BUG 260878.
- time.sleep(0.5)
screenshot = self._tab.Screenshot(5)
assert screenshot
screenshot.GetPixelColor(0 * pixel_ratio, 0 * pixel_ratio).AssertIsRGB(
@@ -78,3 +73,19 @@ class GpuTabTest(tab_test_case.TabTestCase):
0, 255, 0, tolerance=2)
screenshot.GetPixelColor(32 * pixel_ratio, 32 * pixel_ratio).AssertIsRGB(
255, 255, 255, tolerance=2)
+
+ def testScreenshotSync(self):
bajones 2013/09/27 20:50:11 Screenshot sync test has been added to telemetry's
Ken Russell (switch to Gerrit) 2013/09/27 22:42:39 In order to provide complete coverage, the test wi
+ if not self._tab.screenshot_supported:
+ logging.warning('Browser does not support screenshots, skipping test.')
+ return
+
+ self._browser.SetHTTPServerDirectories(util.GetUnittestDataDir())
+ self._tab.Navigate(
+ self._browser.http_server.UrlOf('screenshot_sync.html'))
+ self._tab.WaitForDocumentReadyStateToBeComplete()
+
+ def IsTestComplete():
+ return self._tab.EvaluateJavaScript('window.__testComplete')
+ util.WaitFor(IsTestComplete, 120)
+
+ assert self._tab.EvaluateJavaScript('window.__testSuccess')

Powered by Google App Engine
This is Rietveld 408576698