Index: tools/telemetry/telemetry/page/page_run_end_to_end_unittest.py |
diff --git a/tools/telemetry/telemetry/page/page_run_end_to_end_unittest.py b/tools/telemetry/telemetry/page/page_run_end_to_end_unittest.py |
index 4d14b0a3f87b6bd793a1d3de52bae230a8ad1175..fcfb54921310d0abfd469f69da15ce01cba0b2c1 100644 |
--- a/tools/telemetry/telemetry/page/page_run_end_to_end_unittest.py |
+++ b/tools/telemetry/telemetry/page/page_run_end_to_end_unittest.py |
@@ -3,10 +3,8 @@ |
# found in the LICENSE file. |
import os |
-import tempfile |
import unittest |
import shutil |
-import sys |
import tempfile |
from telemetry import benchmark |
@@ -24,8 +22,7 @@ from telemetry.unittest_util import options_for_unittests |
from telemetry.unittest_util import system_stub |
from telemetry.user_story import user_story_runner |
from telemetry.util import exception_formatter as exception_formatter_module |
-from telemetry.value import scalar |
-from telemetry.value import string |
+from unittest_data.page_sets import example_domain |
# pylint: disable=bad-super-call |
@@ -116,7 +113,8 @@ class PageRunEndToEndTests(unittest.TestCase): |
class Test(page_test.PageTest): |
def __init__(self, *args): |
- super(Test, self).__init__(*args) |
+ super(Test, self).__init__( |
+ *args, needs_browser_restart_after_each_page=True) |
self.run_count = 0 |
def RestartBrowserBeforeEachPage(self): |
@@ -529,3 +527,26 @@ class PageRunEndToEndTests(unittest.TestCase): |
with self.assertRaises(page_test.MultiTabTestAppCrashError): |
self._RunPageTestThatRaisesAppCrashException(test, max_failures=1) |
+ def testWebPageReplay(self): |
+ ps = example_domain.ExampleDomainPageSet() |
+ expectations = test_expectations.TestExpectations() |
+ body = [] |
+ class TestWpr(page_test.PageTest): |
+ def ValidateAndMeasurePage(self, _, tab, __): |
+ body.append(tab.EvaluateJavaScript('document.body.innerText')) |
+ test = TestWpr() |
+ options = options_for_unittests.GetCopy() |
+ options.output_formats = ['none'] |
+ options.suppress_gtest_report = True |
+ SetUpUserStoryRunnerArguments(options) |
+ results = results_options.CreateResults(EmptyMetadataForTest(), options) |
+ |
+ user_story_runner.Run(test, ps, expectations, options, results) |
+ |
+ self.longMessage = True |
+ self.assertIn('Example Domain', body[0], msg='URL: %s' % ps.pages[0].url) |
+ self.assertIn('Example Domain', body[1], msg='URL: %s' % ps.pages[1].url) |
+ |
+ self.assertEquals(2, len(GetSuccessfulPageRuns(results))) |
+ self.assertEquals(0, len(results.failures)) |
+ |