| Index: tools/perf/measurements/smoothness_unittest.py
|
| diff --git a/tools/perf/measurements/smoothness_unittest.py b/tools/perf/measurements/smoothness_unittest.py
|
| index e537399237661481f02e767b04604c9ba982a614..e210dc4ef029b2584f973b6f0bc821fe0a446ba2 100644
|
| --- a/tools/perf/measurements/smoothness_unittest.py
|
| +++ b/tools/perf/measurements/smoothness_unittest.py
|
| @@ -4,9 +4,11 @@
|
| import sys
|
|
|
| from measurements import smoothness
|
| +from telemetry.core import exceptions
|
| from telemetry.core import wpr_modes
|
| from telemetry.page import page
|
| from telemetry.page import page_measurement_unittest_base
|
| +from telemetry.page import page_test
|
| from telemetry.unittest import options_for_unittests
|
|
|
| class FakePlatform(object):
|
| @@ -131,3 +133,37 @@ class SmoothnessUnitTest(
|
|
|
| def testCleanUpTrace(self):
|
| self.TestTracingCleanedUp(smoothness.Smoothness, self._options)
|
| +
|
| + def testCleanUpPowerMetric(self):
|
| + class FailPage(page.Page):
|
| + def __init__(self, page_set):
|
| + super(FailPage, self).__init__(
|
| + url='file://blank.html',
|
| + page_set=page_set, base_dir=page_set.base_dir)
|
| + def RunSmoothness(self, _):
|
| + raise exceptions.IntentionalException
|
| +
|
| + ps = self.CreateEmptyPageSet()
|
| + ps.AddPage(FailPage(ps))
|
| +
|
| + start_measuring_called = [False]
|
| + stop_measuring_called = [False]
|
| + class BuggyMeasurement(smoothness.Smoothness):
|
| + # Inject fake measuring_power methods to browser
|
| + def WillStartBrowser(self, browser):
|
| + super(BuggyMeasurement, self).WillStartBrowser(browser)
|
| + def FakeStart(_1, _2):
|
| + start_measuring_called[0] = True
|
| + def FakeStop(_1, _2):
|
| + stop_measuring_called[0] = True
|
| + self._power_metric.Start = FakeStart
|
| + self._power_metric.Stop = FakeStop
|
| +
|
| + measurement = BuggyMeasurement()
|
| + try:
|
| + self.RunMeasurement(measurement, ps)
|
| + except page_test.TestNotSupportedOnPlatformFailure:
|
| + pass
|
| +
|
| + self.assertTrue(start_measuring_called[0])
|
| + self.assertTrue(stop_measuring_called[0])
|
|
|