Index: mojo/devtools/common/devtoolslib/apptest_dart.py |
diff --git a/mojo/devtools/common/devtoolslib/apptest_dart.py b/mojo/devtools/common/devtoolslib/apptest_dart.py |
index fe6131f8ac085a6dacf6d38e60a52632d69cfb23..3c7a685b644b83e3ce7bf39f59d1780ddc375330 100644 |
--- a/mojo/devtools/common/devtoolslib/apptest_dart.py |
+++ b/mojo/devtools/common/devtoolslib/apptest_dart.py |
@@ -12,7 +12,15 @@ _logging = logging.getLogger() |
from devtoolslib.apptest import run_apptest |
-SUCCESS_PATTERN = re.compile('^.+ .+: All tests passed!', re.MULTILINE) |
+# The apptest framework guarantees that tearDownAll() is the last thing to be |
+# called before the shell is terminated. Note that the shell may be terminated |
+# before the "All tests passed!" string. |
+# |
+# So we pass on messages like: |
+# 00:01 +3: (tearDownAll) |
+# And fail on messages like: |
+# 00:01 +2 -1: (tearDownAll) |
+SUCCESS_PATTERN = re.compile(r'^\S+ \S+: \(tearDownAll\)', re.MULTILINE) |
def _dart_apptest_output_test(output): |