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

Side by Side Diff: mojo/devtools/common/devtoolslib/apptest_dart.py

Issue 1569213004: Fix dart apptest flake on android. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 11 months 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Apptest runner specific to the particular Dart apptest framework in 5 """Apptest runner specific to the particular Dart apptest framework in
6 /mojo/dart/apptests, built on top of the general apptest runner.""" 6 /mojo/dart/apptests, built on top of the general apptest runner."""
7 7
8 import logging 8 import logging
9 import re 9 import re
10 10
11 _logging = logging.getLogger() 11 _logging = logging.getLogger()
12 12
13 from devtoolslib.apptest import run_apptest 13 from devtoolslib.apptest import run_apptest
14 14
15 SUCCESS_PATTERN = re.compile('^.+ .+: All tests passed!', re.MULTILINE) 15 # The apptest framework guarantees that tearDownAll() is the last thing to be
16 # called before the shell is terminated. Note that the shell may be terminated
17 # before the "All tests passed!" string.
18 #
19 # So we pass on messages like:
20 # 00:01 +3: (tearDownAll)
21 # And fail on messages like:
22 # 00:01 +2 -1: (tearDownAll)
23 SUCCESS_PATTERN = re.compile(r'^\S+ \S+: \(tearDownAll\)', re.MULTILINE)
16 24
17 25
18 def _dart_apptest_output_test(output): 26 def _dart_apptest_output_test(output):
19 return SUCCESS_PATTERN.search(output) is not None 27 return SUCCESS_PATTERN.search(output) is not None
20 28
21 29
22 # TODO(erg): Support android, launched services and fixture isolation. 30 # TODO(erg): Support android, launched services and fixture isolation.
23 def run_dart_apptest(shell, shell_args, apptest_url, apptest_args, timeout): 31 def run_dart_apptest(shell, shell_args, apptest_url, apptest_args, timeout):
24 """Runs a dart apptest. 32 """Runs a dart apptest.
25 33
26 Args: 34 Args:
27 shell_args: The arguments for mojo_shell. 35 shell_args: The arguments for mojo_shell.
28 apptest_url: Url of the apptest app to run. 36 apptest_url: Url of the apptest app to run.
29 apptest_args: Parameters to be passed to the apptest app. 37 apptest_args: Parameters to be passed to the apptest app.
30 38
31 Returns: 39 Returns:
32 True iff the test succeeded, False otherwise. 40 True iff the test succeeded, False otherwise.
33 """ 41 """
34 return run_apptest(shell, shell_args, apptest_url, apptest_args, timeout, 42 return run_apptest(shell, shell_args, apptest_url, apptest_args, timeout,
35 _dart_apptest_output_test) 43 _dart_apptest_output_test)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698