1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
7 from telemetry.page import page as page_module
8 from telemetry.page import record_wpr
11 class TestPage(page_module.Page):
13 super(TestPage, self).__init__(url='file://foo.html',
16 self.run_navigate = False
20 def RunNavigateSteps(self, _):
21 self.run_navigate = True
30 class FakeFooMeasurement(object):
32 self.action_name_to_run = "RunFoo"
35 class FakeBarMeasurement(object):
37 self.action_name_to_run = "RunBar"
40 class FakeTab(object):
41 def WaitForDocumentReadyStateToBeComplete(self):
45 class RecordWprUnitTest(unittest.TestCase):
47 super(RecordWprUnitTest, self).setUp()
49 def testRunActions(self):
51 record_runner = record_wpr.RecordPage({1 : FakeFooMeasurement,
52 2 : FakeBarMeasurement})
53 record_runner.RunPage(page, tab=FakeTab(), results=None)
54 self.assertTrue(page.run_navigate)
55 self.assertTrue(page.run_foo)
56 self.assertTrue(page.run_bar)