Index: tools/android/loading/sandwich_runner.py |
diff --git a/tools/android/loading/sandwich_runner.py b/tools/android/loading/sandwich_runner.py |
index 640b068a39b3335286a83ce4e7cb6a555995a098..5c3bb94947f0fe3b548c5acffc4475257c292cbc 100644 |
--- a/tools/android/loading/sandwich_runner.py |
+++ b/tools/android/loading/sandwich_runner.py |
@@ -47,6 +47,7 @@ _TRACING_CATEGORIES = [ |
'blink.user_timing', |
'devtools.timeline', |
'java', |
+ 'navigation', |
'toplevel', |
'v8', |
'-cc', # A lot of unnecessary events are enabled by default in "cc". |
@@ -79,6 +80,10 @@ class CacheOperation(object): |
CLEAR, SAVE, PUSH = range(3) |
+class SandwichRunnerError(Exception): |
+ pass |
+ |
+ |
class SandwichRunner(object): |
"""Sandwich runner. |
@@ -209,6 +214,12 @@ class SandwichRunner(object): |
trace = RecordTrace() |
else: |
trace = RecordTrace() |
+ for event in trace.request_track.GetEvents(): |
+ if event.failed: |
+ logging.warning( |
+ 'request to %s failed: %s', event.url, event.error_text) |
+ if not trace.tracing_track.HasLoadingSucceeded(): |
+ raise SandwichRunnerError('Page load has failed.') |
if run_path is not None: |
trace_path = os.path.join(run_path, TRACE_FILENAME) |
trace.ToJsonFile(trace_path) |