Chromium Code Reviews| Index: appengine/findit/crash/scorers/test/top_frame_index_test.py |
| diff --git a/appengine/findit/crash/scorers/test/top_frame_index_test.py b/appengine/findit/crash/scorers/test/top_frame_index_test.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..ae4870b6b3c6042af71c6adb84023e6b14ce0585 |
| --- /dev/null |
| +++ b/appengine/findit/crash/scorers/test/top_frame_index_test.py |
| @@ -0,0 +1,55 @@ |
| +# Copyright 2016 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +from testing_utils import testing |
| + |
| +from common.change_log import ChangeLog |
| +from crash.callstack import StackFrame |
| +from crash.results import MatchResult |
| +from crash.scorers.top_frame_index import TopFrameIndex |
| + |
| +DUMMY_CHANGELOG = ChangeLog.FromDict({ |
|
stgao
2016/04/15 18:35:19
This is repeated for quite a few times, could it b
Sharu
2016/04/15 22:59:47
Yes, created a scorer_test_suite
|
| + 'author_name': 'r@chromium.org', |
| + 'message': 'dummy', |
| + 'committer_email': 'r@chromium.org', |
| + 'commit_position': 175900, |
| + 'author_email': 'r@chromium.org', |
| + 'touched_files': [ |
| + { |
| + 'change_type': 'add', |
| + 'new_path': 'a.cc', |
| + 'old_path': None, |
| + }, |
| + ], |
| + 'author_time': 'Thu Mar 31 21:24:43 2016', |
| + 'committer_time': 'Thu Mar 31 21:28:39 2016', |
| + 'commit_url': |
| + 'https://repo.test/+/1', |
| + 'code_review_url': 'https://codereview.chromium.org/3281', |
| + 'committer_name': 'example@chromium.org', |
| + 'revision': '1', |
| + 'reverted_revision': None |
| +}) |
| + |
| + |
| +class TopFrameIndexTest(testing.AppengineTestCase): |
| + |
| + def testGetMetric(self): |
| + result = MatchResult(DUMMY_CHANGELOG, 'src/', '') |
| + self.assertEqual(TopFrameIndex().GetMetric(result), None) |
| + |
| + result.file_to_stack_infos = { |
| + 'a.cc': [(StackFrame(0, 'src/', '', 'func', 'a.cc', [7]), 0)] |
| + } |
| + self.assertEqual(TopFrameIndex().GetMetric(result), 0) |
| + |
| + def testScore(self): |
| + self.assertEqual(TopFrameIndex().Score(0), 1) |
| + self.assertEqual(TopFrameIndex().Score(30), 0) |
| + |
| + def testReason(self): |
| + self.assertEqual(TopFrameIndex().Reason(0, 1), |
| + 'Top frame changed is frame #0') |
| + self.assertEqual(TopFrameIndex().Reason(30, 0), |
| + '') |