Skip to content

Commit

Permalink
Added build methods to Localization (#40)
Browse files Browse the repository at this point in the history
* added build methods to Localization

* bug fix: missing param to function call
  • Loading branch information
ChrisTimperley authored Jul 7, 2018
1 parent 5d7f7af commit afb9195
Showing 1 changed file with 17 additions and 4 deletions.
21 changes: 17 additions & 4 deletions src/darjeeling/localization.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import logging

from bugzoo.core.spectra import Spectra
from bugzoo.core.coverage import TestSuiteCoverage

from .problem import Problem
from .core import FileLine
Expand All @@ -19,10 +20,22 @@

class Localization(object):
@staticmethod
def build(problem: Problem,
metric: Metric
) -> 'Localization':
spectra = Spectra.from_coverage(problem.coverage)
def from_problem(problem: Problem,
metric: Metric
) -> 'Localization':
return Localization.from_coverage(problem.coverage, metric)

@staticmethod
def from_coverage(coverage: TestSuiteCoverage,
metric: Metric
) -> 'Localization':
spectra = Spectra.from_coverage(coverage)
return Localization.from_spectra(spectra, metric)

@staticmethod
def from_spectra(spectra: Spectra,
metric: Metric
) -> 'Localization':
scores = {} # type: Dict[FileLine, float]
for line in spectra:
row = spectra[line]
Expand Down

0 comments on commit afb9195

Please sign in to comment.