| OLD | NEW |
| 1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2006-2008 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 """A helper class for comparing the failures and crashes from a test run | 5 """A helper class for comparing the failures and crashes from a test run |
| 6 against what we expected to happen (as specified in test_expectations.txt).""" | 6 against what we expected to happen (as specified in test_expectations.txt).""" |
| 7 | 7 |
| 8 import errno | 8 import errno |
| 9 import os | 9 import os |
| 10 | 10 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 PrintFilesFromSet(self._regressed_hangs, | 111 PrintFilesFromSet(self._regressed_hangs, |
| 112 "Regressions: Unexpected timeouts", | 112 "Regressions: Unexpected timeouts", |
| 113 output, | 113 output, |
| 114 'TIMEOUT') | 114 'TIMEOUT') |
| 115 PrintFilesFromSet(self._regressed_crashes, | 115 PrintFilesFromSet(self._regressed_crashes, |
| 116 "Regressions: Unexpected crashes", | 116 "Regressions: Unexpected crashes", |
| 117 output, | 117 output, |
| 118 'CRASH') | 118 'CRASH') |
| 119 PrintFilesFromSet(self._missing, | 119 PrintFilesFromSet(self._missing, |
| 120 "Missing expected results", | 120 "Missing expected results", |
| 121 output) | 121 output, |
| 122 'MISSING') |
| 122 | 123 |
| 123 def _CalculateRegressions(self): | 124 def _CalculateRegressions(self): |
| 124 """Calculate regressions from this run through the layout tests.""" | 125 """Calculate regressions from this run through the layout tests.""" |
| 125 worklist = self._test_files.copy() | 126 worklist = self._test_files.copy() |
| 126 | 127 |
| 127 passes = set() | 128 passes = set() |
| 128 crashes = set() | 129 crashes = set() |
| 129 hangs = set() | 130 hangs = set() |
| 130 missing = set() | 131 missing = set() |
| 131 image_failures = set() | 132 image_failures = set() |
| (...skipping 17 matching lines...) Expand all Loading... |
| 149 | 150 |
| 150 expectations = self._expectations.GetExpectations(test) | 151 expectations = self._expectations.GetExpectations(test) |
| 151 if is_crash: | 152 if is_crash: |
| 152 if not test_expectations.CRASH in expectations: crashes.add(test) | 153 if not test_expectations.CRASH in expectations: crashes.add(test) |
| 153 elif is_hang: | 154 elif is_hang: |
| 154 if not test_expectations.TIMEOUT in expectations: hangs.add(test) | 155 if not test_expectations.TIMEOUT in expectations: hangs.add(test) |
| 155 # Do not add to the missing list if a test is rebaselining and missing | 156 # Do not add to the missing list if a test is rebaselining and missing |
| 156 # expected files. | 157 # expected files. |
| 157 elif (is_missing and | 158 elif (is_missing and |
| 158 not self._expectations.IsRebaselining(test) and | 159 not self._expectations.IsRebaselining(test) and |
| 159 not self._expectations.IsIgnored(test)): | 160 not self._expectations.IsIgnored(test) and |
| 161 (test_expectations.MISSING not in |
| 162 self._expectations.GetExpectations(test))): |
| 160 missing.add(test) | 163 missing.add(test) |
| 161 elif is_image_failure and is_text_failure: | 164 elif is_image_failure and is_text_failure: |
| 162 if (not test_expectations.FAIL in expectations and | 165 if (not test_expectations.FAIL in expectations and |
| 163 not test_expectations.IMAGE_PLUS_TEXT in expectations): | 166 not test_expectations.IMAGE_PLUS_TEXT in expectations): |
| 164 image_plus_text_failures.add(test) | 167 image_plus_text_failures.add(test) |
| 165 elif is_image_failure: | 168 elif is_image_failure: |
| 166 if (not test_expectations.FAIL in expectations and | 169 if (not test_expectations.FAIL in expectations and |
| 167 not test_expectations.IMAGE in expectations): | 170 not test_expectations.IMAGE in expectations): |
| 168 image_failures.add(test) | 171 image_failures.add(test) |
| 169 elif is_text_failure: | 172 elif is_text_failure: |
| (...skipping 19 matching lines...) Expand all Loading... |
| 189 | 192 |
| 190 def GetRegressions(self): | 193 def GetRegressions(self): |
| 191 """Returns a set of regressions from the test expectations. This is | 194 """Returns a set of regressions from the test expectations. This is |
| 192 used to determine which tests to list in results.html and the | 195 used to determine which tests to list in results.html and the |
| 193 right script exit code for the build bots. The list does not | 196 right script exit code for the build bots. The list does not |
| 194 include the unexpected passes.""" | 197 include the unexpected passes.""" |
| 195 return (self._regressed_text_failures | self._regressed_image_failures | | 198 return (self._regressed_text_failures | self._regressed_image_failures | |
| 196 self._regressed_image_plus_text_failures | self._regressed_hangs | | 199 self._regressed_image_plus_text_failures | self._regressed_hangs | |
| 197 self._regressed_crashes | self._missing) | 200 self._regressed_crashes | self._missing) |
| 198 | 201 |
| OLD | NEW |