| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 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 from testing_utils import testing | 5 from testing_utils import testing |
| 6 from crash.test.stacktrace_test_suite import StacktraceTestSuite | 6 from crash.test.stacktrace_test_suite import StacktraceTestSuite |
| 7 | 7 |
| 8 | 8 |
| 9 class CrashTestSuite(StacktraceTestSuite): # pragma: no cover. | 9 class CrashTestSuite(StacktraceTestSuite): # pragma: no cover. |
| 10 | 10 |
| 11 def _VerifyTwoStackInfosEqual(self, infos1, infos2): | 11 def _VerifyTwoStackInfosEqual(self, infos1, infos2): |
| 12 self.assertEqual(len(infos1), len(infos2)) | 12 self.assertEqual(len(infos1), len(infos2)) |
| 13 | 13 |
| 14 for (frame1, priority1), (frame2, priority2) in zip(infos1, infos2): | 14 for (frame1, priority1), (frame2, priority2) in zip(infos1, infos2): |
| 15 self.assertEqual(priority1, priority2) | 15 self.assertEqual(priority1, priority2) |
| 16 self._VerifyTwoStackFramesEqual(frame1, frame2) | 16 self._VerifyTwoStackFramesEqual(frame1, frame2) |
| 17 | 17 |
| 18 def _VerifyTwoBlamesEqual(self, blame1, blame2): | 18 def _VerifyTwoBlamesEqual(self, blame1, blame2): |
| 19 self.assertEqual(blame1.revision, blame2.revision) | 19 self.assertEqual(blame1.revision, blame2.revision) |
| 20 self.assertEqual(blame1.path, blame2.path) | 20 self.assertEqual(blame1.path, blame2.path) |
| 21 map(self.assertEqual, blame1.ToDict()['regions'], | 21 map(self.assertEqual, blame1.ToDict()['regions'], |
| 22 blame2.ToDict()['regions']) | 22 blame2.ToDict()['regions']) |
| 23 | 23 |
| 24 def _VerifyTwoChangeLogsEqual(self, changelog1, changelog2): | 24 def _VerifyTwoChangeLogsEqual(self, changelog1, changelog2): |
| 25 self.assertEqual(changelog1.ToDict(), changelog2.ToDict()) | 25 self.assertEqual(changelog1.ToDict(), changelog2.ToDict()) |
| 26 | 26 |
| 27 def _VerifyTwoResultEqual(self, result1, result2): | 27 def _VerifyTwoResultEqual(self, result1, result2): |
| 28 self._VerifyTwoChangeLogsEqual(result1.changelog, result2.changelog) | 28 self._VerifyTwoChangeLogsEqual(result1.changelog, result2.changelog) |
| 29 self.assertEqual(result1.dep_path, result2.dep_path) | 29 self.assertEqual(result1.dep_path, result2.dep_path) |
| 30 self.assertEqual(result1.component, result2.component) | |
| 31 self.assertEqual(result1.confidence, result2.confidence) | 30 self.assertEqual(result1.confidence, result2.confidence) |
| 32 self.assertEqual(result1.reason, result2.reason) | 31 self.assertEqual(result1.reason, result2.reason) |
| 33 self.assertEqual(len(result1.file_to_stack_infos), | 32 self.assertEqual(len(result1.file_to_stack_infos), |
| 34 len(result2.file_to_stack_infos)) | 33 len(result2.file_to_stack_infos)) |
| 35 | 34 |
| 36 for (file_path1, stack_infos1), (file_path2, stack_infos2) in zip( | 35 for (file_path1, stack_infos1), (file_path2, stack_infos2) in zip( |
| 37 result1.file_to_stack_infos.iteritems(), | 36 result1.file_to_stack_infos.iteritems(), |
| 38 result2.file_to_stack_infos.iteritems()): | 37 result2.file_to_stack_infos.iteritems()): |
| 39 self.assertEqual(file_path1, file_path2) | 38 self.assertEqual(file_path1, file_path2) |
| 40 self._VerifyTwoStackInfosEqual(stack_infos1, stack_infos2) | 39 self._VerifyTwoStackInfosEqual(stack_infos1, stack_infos2) |
| 41 | 40 |
| 42 def _VerifyTwoMatchResultEqual(self, match_result1, match_result2): | 41 def _VerifyTwoMatchResultEqual(self, match_result1, match_result2): |
| 43 self.assertEqual(match_result1.min_distance, match_result2.min_distance) | 42 self.assertEqual(match_result1.min_distance, match_result2.min_distance) |
| 44 self._VerifyTwoResultEqual(match_result1, match_result2) | 43 self._VerifyTwoResultEqual(match_result1, match_result2) |
| 45 | 44 |
| 46 def _VerifyTwoMatchResultsEqual(self, match_results1, match_results2): | 45 def _VerifyTwoMatchResultsEqual(self, match_results1, match_results2): |
| 47 self.assertEqual(match_results1.ignore_cls, match_results2.ignore_cls) | 46 self.assertEqual(match_results1.ignore_cls, match_results2.ignore_cls) |
| 48 | 47 |
| 49 self.assertEqual(len(match_results1), len(match_results2)) | 48 self.assertEqual(len(match_results1), len(match_results2)) |
| 50 for revision1, match_result1 in match_results1.iteritems(): | 49 for revision1, match_result1 in match_results1.iteritems(): |
| 51 self.assertTrue(revision1 in match_results2) | 50 self.assertTrue(revision1 in match_results2) |
| 52 self._VerifyTwoMatchResultEqual(match_result1, match_results2[revision1]) | 51 self._VerifyTwoMatchResultEqual(match_result1, match_results2[revision1]) |
| OLD | NEW |