Index: tools/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py |
diff --git a/tools/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py b/tools/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py |
index e245cd5b8795fd6e93352007362db7a5b26ebf15..8c3607d7fabf10796b787f4263d8e77be4e61692 100644 |
--- a/tools/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py |
+++ b/tools/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py |
@@ -178,11 +178,12 @@ class TimelineBasedMetricsTests(unittest.TestCase): |
class TestTimelinebasedMeasurementPage(page_module.Page): |
def __init__(self, ps, base_dir, trigger_animation=False, |
- trigger_jank=False): |
+ trigger_jank=False, trigger_slow=False): |
super(TestTimelinebasedMeasurementPage, self).__init__( |
'file://interaction_enabled_page.html', ps, base_dir) |
self._trigger_animation = trigger_animation |
self._trigger_jank = trigger_jank |
+ self._trigger_slow = trigger_slow |
def RunSmoothness(self, action_runner): |
if self._trigger_animation: |
@@ -191,6 +192,9 @@ class TestTimelinebasedMeasurementPage(page_module.Page): |
if self._trigger_jank: |
action_runner.TapElement('#jank-button') |
action_runner.WaitForJavaScriptCondition('window.jankScriptDone') |
+ if self._trigger_slow: |
+ action_runner.TapElement('#slow-button') |
+ action_runner.WaitForJavaScriptCondition('window.slowScriptDone') |
class TimelineBasedMeasurementTest(page_test_test_case.PageTestTestCase): |
@@ -214,6 +218,23 @@ class TimelineBasedMeasurementTest(page_test_test_case.PageTestTestCase): |
v = results.FindAllPageSpecificValuesNamed('DrawerAnimation-jank') |
self.assertEquals(len(v), 1) |
+ def testFastTimelineBasedMeasurementForSmoke(self): |
+ ps = self.CreateEmptyPageSet() |
+ ps.AddPage(TestTimelinebasedMeasurementPage( |
+ ps, ps.base_dir, trigger_slow=True)) |
+ |
+ measurement = tbm_module.TimelineBasedMeasurement() |
+ results = self.RunMeasurement(measurement, ps, options=self._options) |
+ |
+ self.assertEquals([], results.failures) |
+ expected_names = [ |
+ 'SlowThreadJsRun-fast-cpu_time', |
+ 'SlowThreadJsRun-fast-duration', |
+ 'SlowThreadJsRun-fast-idle_time', |
+ ] |
+ names = sorted(v.name for v in results.all_page_specific_values) |
+ self.assertEquals(expected_names, names) |
nednguyen
2014/08/14 01:33:47
Can you compare the two sets instead?
slamm
2014/08/14 17:27:08
Done.
|
+ |
nednguyen
2014/08/14 01:33:47
We can also assert duration >= 200 ms.
slamm
2014/08/14 17:27:09
Done.
|
# Disabled since mainthread_jank metric is not supported on windows platform. |
@benchmark.Disabled('win') |
def testMainthreadJankTimelineBasedMeasurement(self): |