Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(355)

Side by Side Diff: appengine/findit/crash/test/component_classifier_test.py

Issue 1914113002: [Findit] Enable project classifier and component classifier (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Address comments. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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
3 # found in the LICENSE file.
4
5 from common.pipeline_wrapper import pipeline_handlers
6 from crash.callstack import StackFrame, CallStack
7 from crash.component_classifier import ComponentClassifier
8 from crash.results import Result
9 from crash.test.crash_testcase import CrashTestCase
10 from model.crash import crash_config
11
12
13 class ComponentClassifierTest(CrashTestCase):
14
15 def testGetClassFromStackFrame(self):
16 frame = StackFrame(0, 'src/', 'func', 'comp1.cc', 'src/comp1.cc', [2])
17 self.assertEqual(
18 ComponentClassifier().GetClassFromStackFrame(frame),
19 'Comp1>Dummy')
20
21 frame = StackFrame(0, 'src/', 'func2', 'comp2.cc', 'src/comp2.cc', [32])
22 self.assertEqual(
23 ComponentClassifier().GetClassFromStackFrame(frame),
24 'Comp2>Dummy')
25
26 frame = StackFrame(0, 'src/', 'no_func', 'comp2.cc', 'src/comp2.cc', [32])
27 self.assertEqual(
28 ComponentClassifier().GetClassFromStackFrame(frame),
29 '')
30
31 frame = StackFrame(0, 'src/', 'func2', 'a.cc', 'src/a.cc', [6])
32 self.assertEqual(
33 ComponentClassifier().GetClassFromStackFrame(frame),
34 '')
35
36 def testGetClassFromResult(self):
37 result = Result(self.GetDummyChangeLog(), 'src/')
38 self.assertEqual(ComponentClassifier().GetClassFromResult(result),
39 '')
40
41 result.file_to_stack_infos = {
42 'comp1.cc': [
43 (StackFrame(0, 'src/', 'func', 'comp1.cc', 'src/comp1.cc', [2]), 0)
44 ]
45 }
46 self.assertEqual(ComponentClassifier().GetClassFromResult(result),
47 'Comp1>Dummy')
48
49 def testClassifyCrashStack(self):
50 crash_stack = CallStack(0)
51 crash_stack.extend([
52 StackFrame(0, 'src/', 'func', 'comp1.cc', 'src/comp1.cc', [2]),
53 StackFrame(1, 'src/', 'ff', 'comp1.cc', 'src/comp1.cc', [21]),
54 StackFrame(2, 'src/', 'func2', 'comp2.cc', 'src/comp2.cc', [8])
55 ])
56
57 self.assertEqual(ComponentClassifier().Classify([], crash_stack),
58 ['Comp1>Dummy', 'Comp2>Dummy'])
59
60 def testClassifyResults(self):
61 result = Result(self.GetDummyChangeLog(), 'src/')
62 result.file_to_stack_infos = {
63 'comp1.cc': [
64 (StackFrame(0, 'src/', 'func', 'comp1.cc', 'src/comp1.cc', [2]), 0)
65 ]
66 }
67
68 self.assertEqual(ComponentClassifier().Classify([result], []),
69 ['Comp1>Dummy'])
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698