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

Side by Side Diff: appengine/findit/crash/predator.py

Issue 2613153006: [Predator] Add TouchCrashedFileMetaFeature. (Closed)
Patch Set: Add comments. Created 3 years, 11 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
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 crash.culprit import Culprit 5 from crash.culprit import Culprit
6 6
7
7 # TODO(http://crbug.com/659346): write coverage tests. 8 # TODO(http://crbug.com/659346): write coverage tests.
8 class Predator(object): # pragma: no cover 9 class Predator(object): # pragma: no cover
9 """The Main entry point into the Predator library.""" 10 """The Main entry point into the Predator library."""
10 11
11 def __init__(self, cl_classifier, component_classifier, project_classifier): 12 def __init__(self, cl_classifier, component_classifier, project_classifier):
12 self.cl_classifier = cl_classifier 13 self.cl_classifier = cl_classifier
13 self.component_classifier = component_classifier 14 self.component_classifier = component_classifier
14 self.project_classifier = project_classifier 15 self.project_classifier = project_classifier
15 16
16 def FindCulprit(self, report): 17 def FindCulprit(self, report):
17 """Given a CrashReport, return a Culprit.""" 18 """Given a CrashReport, return a Culprit."""
18 suspected_cls = self.cl_classifier(report) 19 suspected_cls = self.cl_classifier(report)
19 assert suspected_cls is not None 20 assert suspected_cls is not None
20 21
21 suspected_project = self.project_classifier.Classify( 22 suspected_project = self.project_classifier.Classify(
22 suspected_cls, report.stacktrace.crash_stack) 23 suspected_cls, report.stacktrace.crash_stack)
23 24
24 suspected_components = self.component_classifier.Classify( 25 suspected_components = self.component_classifier.Classify(
25 suspected_cls, report.stacktrace.crash_stack) 26 suspected_cls, report.stacktrace.crash_stack)
26 27
27 return Culprit( 28 return Culprit(
28 project = suspected_project, 29 project = suspected_project,
29 components = suspected_components, 30 components = suspected_components,
30 cls = suspected_cls, 31 cls = suspected_cls,
31 regression_range = report.regression_range, 32 regression_range = report.regression_range,
32 algorithm = 'core_algorithm') 33 algorithm = 'core_algorithm')
OLDNEW
« no previous file with comments | « appengine/findit/crash/loglinear/test/feature_test.py ('k') | appengine/findit/crash/suspect.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698