| Index: tools/telemetry/telemetry/page/page_test.py
|
| diff --git a/tools/telemetry/telemetry/page/page_test.py b/tools/telemetry/telemetry/page/page_test.py
|
| index e35cc9fa3d82dcca437d444a8eb41515d3b562dc..2213e0f0f02b00a980329e8735ebb38c604df94a 100644
|
| --- a/tools/telemetry/telemetry/page/page_test.py
|
| +++ b/tools/telemetry/telemetry/page/page_test.py
|
| @@ -59,7 +59,7 @@ class PageTest(object):
|
| self._test_method = getattr(self, test_method_name)
|
| except AttributeError:
|
| raise ValueError, 'No such method %s.%s' % (
|
| - self.__class_, test_method_name) # pylint: disable=E1101
|
| + self.__class_, test_method_name) # pylint: disable=E1101
|
| self._action_name_to_run = action_name_to_run
|
| self._needs_browser_restart_after_each_run = (
|
| needs_browser_restart_after_each_run)
|
| @@ -73,6 +73,8 @@ class PageTest(object):
|
| self.is_multi_tab_test = (self.__class__ is not PageTest and
|
| self.TabForPage.__func__ is not
|
| self.__class__.__bases__[0].TabForPage.__func__)
|
| + # _exit_requested is set to true when the test requests an early exit.
|
| + self._exit_requested = False
|
|
|
| @property
|
| def discard_first_result(self):
|
| @@ -101,7 +103,7 @@ class PageTest(object):
|
| def close_tabs_before_run(self, close_tabs):
|
| self._close_tabs_before_run = close_tabs
|
|
|
| - def NeedsBrowserRestartAfterEachRun(self, tab): # pylint: disable=W0613
|
| + def NeedsBrowserRestartAfterEachRun(self, tab): # pylint: disable=W0613
|
| """Override to specify browser restart after each run."""
|
| return self._needs_browser_restart_after_each_run
|
|
|
| @@ -132,7 +134,7 @@ class PageTest(object):
|
| """Override to customize the browser right after it has launched."""
|
| pass
|
|
|
| - def CanRunForPage(self, page): #pylint: disable=W0613
|
| + def CanRunForPage(self, page): # pylint: disable=W0613
|
| """Override to customize if the test can be ran for the given page."""
|
| return True
|
|
|
| @@ -180,17 +182,17 @@ class PageTest(object):
|
| """Override to do operations after running the action on the page."""
|
| pass
|
|
|
| - def CreatePageSet(self, args, options): # pylint: disable=W0613
|
| + def CreatePageSet(self, args, options): # pylint: disable=W0613
|
| """Override to make this test generate its own page set instead of
|
| allowing arbitrary page sets entered from the command-line."""
|
| return None
|
|
|
| - def CreateExpectations(self, page_set): # pylint: disable=W0613
|
| + def CreateExpectations(self, page_set): # pylint: disable=W0613
|
| """Override to make this test generate its own expectations instead of
|
| any that may have been defined in the page set."""
|
| return test_expectations.TestExpectations()
|
|
|
| - def TabForPage(self, page, tab): # pylint: disable=W0613
|
| + def TabForPage(self, page, tab): # pylint: disable=W0613
|
| """Override to select a different tab for the page. For instance, to
|
| create a new tab for every page, return tab.browser.tabs.New()."""
|
| return tab
|
| @@ -247,6 +249,12 @@ class PageTest(object):
|
|
|
| self._RunCompoundAction(page, tab, navigate_actions, False)
|
|
|
| + def IsExiting(self):
|
| + return self._exit_requested
|
| +
|
| + def RequestExit(self):
|
| + self._exit_requested = True
|
| +
|
| @property
|
| def action_name_to_run(self):
|
| return self._action_name_to_run
|
|
|