Index: tools/perf/measurements/page_cycler_unittest.py |
diff --git a/tools/perf/measurements/page_cycler_unittest.py b/tools/perf/measurements/page_cycler_unittest.py |
index 164e69f21ca19849cb9a05709be56dcd408231c6..837930d88f83bbaf6779e4f7c2ad774d424709e9 100644 |
--- a/tools/perf/measurements/page_cycler_unittest.py |
+++ b/tools/perf/measurements/page_cycler_unittest.py |
@@ -2,8 +2,10 @@ |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
+import sys |
import unittest |
+from metrics import keychain_metric |
from telemetry.core import browser_options |
from telemetry.results import page_test_results |
from telemetry.unittest_util import simple_mock |
@@ -49,7 +51,15 @@ class FakeTab(object): |
def ClearCache(self, force=False): |
assert force |
self.clear_cache_calls += 1 |
- def EvaluateJavaScript(self, _): |
+ def EvaluateJavaScript(self, script): |
+ # If the page cycler invokes javascript to measure the number of keychain |
+ # accesses, return a valid JSON dictionary. |
+ keychain_histogram_name = keychain_metric.KeychainMetric.HISTOGRAM_NAME |
+ |
+ # Fake data for keychain metric. |
+ if keychain_histogram_name in script: |
+ return '{{ "{0}" : 0 }}'.format(keychain_histogram_name) |
+ |
return 1 |
def Navigate(self, url): |
self.navigated_urls.append(url) |
@@ -216,14 +226,22 @@ class PageCyclerUnitTest(unittest.TestCase): |
results.DidRunPage(page) |
values = results.all_page_specific_values |
- self.assertEqual(4, len(values)) |
+ |
+ # On Mac, there is an additional measurement: the number of keychain |
+ # accesses. |
+ value_count = 4 |
+ if sys.platform == 'darwin': |
+ value_count += 1 |
+ self.assertEqual(value_count, len(values)) |
self.assertEqual(values[0].page, page) |
chart_name = 'cold_times' if i == 0 else 'warm_times' |
self.assertEqual(values[0].name, '%s.page_load_time' % chart_name) |
self.assertEqual(values[0].units, 'ms') |
- for value, expected in zip(values[1:], ['gpu', 'renderer', 'browser']): |
+ expected_values = ['gpu', 'renderer', 'browser'] |
+ for value, expected in zip(values[1:len(expected_values) + 1], |
+ expected_values): |
self.assertEqual(value.page, page) |
self.assertEqual(value.name, |
'cpu_utilization.cpu_utilization_%s' % expected) |