OLD | NEW |
---|---|
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 | 5 |
6 import logging | 6 import logging |
7 import os | 7 import os |
8 import re | 8 import re |
9 | 9 |
10 from pylib import constants | 10 from pylib import constants |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
149 full_test_name = None | 149 full_test_name = None |
150 found = p.expect([re_run, re_passed, re_runner_fail], | 150 found = p.expect([re_run, re_passed, re_runner_fail], |
151 timeout=self.timeout) | 151 timeout=self.timeout) |
152 if found == 1: # re_passed | 152 if found == 1: # re_passed |
153 break | 153 break |
154 elif found == 2: # re_runner_fail | 154 elif found == 2: # re_runner_fail |
155 break | 155 break |
156 else: # re_run | 156 else: # re_run |
157 full_test_name = p.match.group(1).replace('\r', '') | 157 full_test_name = p.match.group(1).replace('\r', '') |
158 found = p.expect([re_ok, re_fail, re_crash], timeout=self.timeout) | 158 found = p.expect([re_ok, re_fail, re_crash], timeout=self.timeout) |
159 | |
160 log = p.before.replace('\r', '') | |
frankf
2013/06/18 00:04:59
Move this to line 158
scherkus (not reviewing)
2013/06/18 00:41:19
Done.
| |
159 if found == 0: # re_ok | 161 if found == 0: # re_ok |
160 if full_test_name == p.match.group(1).replace('\r', ''): | 162 if full_test_name == p.match.group(1).replace('\r', ''): |
161 results.AddResult(base_test_result.BaseTestResult( | 163 results.AddResult(base_test_result.BaseTestResult( |
162 full_test_name, base_test_result.ResultType.PASS, | 164 full_test_name, base_test_result.ResultType.PASS, |
163 log=p.before)) | 165 log=log)) |
164 elif found == 2: # re_crash | 166 elif found == 2: # re_crash |
165 results.AddResult(base_test_result.BaseTestResult( | 167 results.AddResult(base_test_result.BaseTestResult( |
166 full_test_name, base_test_result.ResultType.CRASH, | 168 full_test_name, base_test_result.ResultType.CRASH, |
167 log=p.before)) | 169 log=log)) |
168 break | 170 break |
169 else: # re_fail | 171 else: # re_fail |
170 results.AddResult(base_test_result.BaseTestResult( | 172 results.AddResult(base_test_result.BaseTestResult( |
171 full_test_name, base_test_result.ResultType.FAIL, log=p.before)) | 173 full_test_name, base_test_result.ResultType.FAIL, log=log)) |
172 except pexpect.EOF: | 174 except pexpect.EOF: |
173 logging.error('Test terminated - EOF') | 175 logging.error('Test terminated - EOF') |
174 # We're here because either the device went offline, or the test harness | 176 # We're here because either the device went offline, or the test harness |
175 # crashed without outputting the CRASHED marker (crbug.com/175538). | 177 # crashed without outputting the CRASHED marker (crbug.com/175538). |
176 if not self.adb.IsOnline(): | 178 if not self.adb.IsOnline(): |
177 raise errors.DeviceUnresponsiveError('Device %s went offline.' % | 179 raise errors.DeviceUnresponsiveError('Device %s went offline.' % |
178 self.device) | 180 self.device) |
179 if full_test_name: | 181 if full_test_name: |
180 results.AddResult(base_test_result.BaseTestResult( | 182 results.AddResult(base_test_result.BaseTestResult( |
181 full_test_name, base_test_result.ResultType.CRASH, log=p.before)) | 183 full_test_name, base_test_result.ResultType.CRASH, log=p.before)) |
frankf
2013/06/18 00:04:59
log=log
scherkus (not reviewing)
2013/06/18 00:41:19
Done.
| |
182 except pexpect.TIMEOUT: | 184 except pexpect.TIMEOUT: |
183 logging.error('Test terminated after %d second timeout.', | 185 logging.error('Test terminated after %d second timeout.', |
184 self.timeout) | 186 self.timeout) |
185 if full_test_name: | 187 if full_test_name: |
186 results.AddResult(base_test_result.BaseTestResult( | 188 results.AddResult(base_test_result.BaseTestResult( |
187 full_test_name, base_test_result.ResultType.TIMEOUT, log=p.before)) | 189 full_test_name, base_test_result.ResultType.TIMEOUT, log=p.before)) |
frankf
2013/06/18 00:04:59
Same here.
scherkus (not reviewing)
2013/06/18 00:41:19
Done.
| |
188 finally: | 190 finally: |
189 p.close() | 191 p.close() |
190 | 192 |
191 ret_code = self._GetGTestReturnCode() | 193 ret_code = self._GetGTestReturnCode() |
192 if ret_code: | 194 if ret_code: |
193 logging.critical( | 195 logging.critical( |
194 'gtest exit code: %d\npexpect.before: %s\npexpect.after: %s', | 196 'gtest exit code: %d\npexpect.before: %s\npexpect.after: %s', |
195 ret_code, p.before, p.after) | 197 ret_code, p.before, p.after) |
196 | 198 |
197 return results | 199 return results |
OLD | NEW |