Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Unified Diff: tools/telemetry/telemetry/page/page_runner_unittest.py

Issue 694893004: telemetry: Report error correctly on connection timeout (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove unused vars Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/telemetry/telemetry/page/page_runner.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/telemetry/telemetry/page/page_runner_unittest.py
diff --git a/tools/telemetry/telemetry/page/page_runner_unittest.py b/tools/telemetry/telemetry/page/page_runner_unittest.py
index 51bd95c31f811a0214032c2f5d5f3bb80f524e27..966c20949c29709f8d0f45761c9dd0c93e4a50e5 100644
--- a/tools/telemetry/telemetry/page/page_runner_unittest.py
+++ b/tools/telemetry/telemetry/page/page_runner_unittest.py
@@ -155,6 +155,67 @@ class PageRunnerTests(unittest.TestCase):
self.assertEquals(1, len(GetSuccessfulPageRuns(results)))
self.assertEquals(1, len(results.failures))
+ def testRaiseBrowserGoneExceptionFromValidatePage(self):
+ self.SuppressExceptionFormatting()
+ ps = page_set.PageSet()
+ expectations = test_expectations.TestExpectations()
+ ps.pages.append(page_module.Page(
+ 'file://blank.html', ps, base_dir=util.GetUnittestDataDir()))
+ ps.pages.append(page_module.Page(
+ 'file://blank.html', ps, base_dir=util.GetUnittestDataDir()))
+
+ class Test(page_test.PageTest):
+ def __init__(self, *args):
+ super(Test, self).__init__(*args)
+ self.run_count = 0
+ def ValidatePage(self, *_):
+ old_run_count = self.run_count
+ self.run_count += 1
+ if old_run_count == 0:
+ raise exceptions.BrowserGoneException()
+
+ options = options_for_unittests.GetCopy()
+ options.output_formats = ['none']
+ options.suppress_gtest_report = True
+ test = Test()
+ SetUpPageRunnerArguments(options)
+ results = results_options.CreateResults(EmptyMetadataForTest(), options)
+ page_runner.Run(test, ps, expectations, options, results)
+ self.assertEquals(2, test.run_count)
+ self.assertEquals(1, len(GetSuccessfulPageRuns(results)))
+ self.assertEquals(1, len(results.failures))
+
+ def testRaiseBrowserGoneExceptionFromRestartBrowserBeforeEachPage(self):
+ self.SuppressExceptionFormatting()
+ ps = page_set.PageSet()
+ expectations = test_expectations.TestExpectations()
+ ps.pages.append(page_module.Page(
+ 'file://blank.html', ps, base_dir=util.GetUnittestDataDir()))
+ ps.pages.append(page_module.Page(
+ 'file://blank.html', ps, base_dir=util.GetUnittestDataDir()))
+
+ class Test(page_test.PageTest):
+ def __init__(self, *args):
+ super(Test, self).__init__(*args)
+ self.run_count = 0
+ def RestartBrowserBeforeEachPage(self):
+ old_run_count = self.run_count
+ self.run_count += 1
+ if old_run_count == 0:
+ raise exceptions.BrowserGoneException(None)
+ return self._needs_browser_restart_after_each_page
+
+ options = options_for_unittests.GetCopy()
+ options.output_formats = ['none']
+ options.suppress_gtest_report = True
+ test = Test()
+ SetUpPageRunnerArguments(options)
+ results = results_options.CreateResults(EmptyMetadataForTest(), options)
+ page_runner.Run(test, ps, expectations, options, results)
+ self.assertEquals(2, test.run_count)
+ self.assertEquals(1, len(GetSuccessfulPageRuns(results)))
+ self.assertEquals(1, len(results.failures))
+
def testHandlingOfCrashedTabWithExpectedFailure(self):
self.SuppressExceptionFormatting()
ps = page_set.PageSet()
« no previous file with comments | « tools/telemetry/telemetry/page/page_runner.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698