blob: 4c89143f6b12eac906b68a1c538b7191f4875540 [file] [log] [blame]
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import unittest
from telemetry.page import page as page_module
from telemetry.page import record_wpr
class TestPage(page_module.Page):
def __init__(self):
super(TestPage, self).__init__(url='file://foo.html',
page_set=None,
base_dir=None)
self.run_navigate = False
self.run_foo = False
self.run_bar = False
def RunNavigateSteps(self, _):
self.run_navigate = True
def RunFoo(self, _):
self.run_foo = True
def RunBar(self, _):
self.run_bar = True
class FakeFooMeasurement(object):
def __init__(self):
self.action_name_to_run = "RunFoo"
class FakeBarMeasurement(object):
def __init__(self):
self.action_name_to_run = "RunBar"
class FakeTab(object):
def WaitForDocumentReadyStateToBeComplete(self):
pass
class RecordWprUnitTest(unittest.TestCase):
def setUp(self):
super(RecordWprUnitTest, self).setUp()
def testRunActions(self):
page = TestPage()
record_runner = record_wpr.RecordPage({1 : FakeFooMeasurement,
2 : FakeBarMeasurement})
record_runner.RunPage(page, tab=FakeTab(), results=None)
self.assertTrue(page.run_navigate)
self.assertTrue(page.run_foo)
self.assertTrue(page.run_bar)