summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--covcov.ini3
-rw-r--r--coverage/config.py3
-rw-r--r--coverage/control.py38
-rw-r--r--lab/cmd-opts.txt14
-rw-r--r--test/coverage_coverage.py2
5 files changed, 39 insertions, 21 deletions
diff --git a/covcov.ini b/covcov.ini
index 8e0b135e..9af570c9 100644
--- a/covcov.ini
+++ b/covcov.ini
@@ -1,6 +1,6 @@
# Settings to use when using coverage.py to measure itself.
[run]
-branch = 1
+branch = true
data_file = c:\ned\coverage\trunk\.coverage
[report]
@@ -12,3 +12,4 @@ exclude_lines =
raise AssertionError
omit = mock, ez_setup, distribute
+ignore_errors = true
diff --git a/coverage/config.py b/coverage/config.py
index f65115f8..e90fc15c 100644
--- a/coverage/config.py
+++ b/coverage/config.py
@@ -21,6 +21,7 @@ class CoverageConfig(object):
self.exclude_list = ['(?i)# *pragma[: ]*no *cover']
self.data_file = ".coverage"
self.omit_prefixes = None
+ self.ignore_errors = False
def from_environment(self, env_var):
"""Read configuration from the `env_var` environment variable."""
@@ -61,6 +62,8 @@ class CoverageConfig(object):
# exclude_lines is a list of lines, leave out the blank ones.
exclude_list = cp.get('report', 'exclude_lines')
self.exclude_list = list(filter(None, exclude_list.split('\n')))
+ if cp.has_option('report', 'ignore_errors'):
+ self.ignore_errors = cp.getboolean('report', 'ignore_errors')
if cp.has_option('report', 'omit'):
# omit is a list of prefixes, on separate lines, or separated by
# commas.
diff --git a/coverage/control.py b/coverage/control.py
index 78d44ce2..18fc2aa6 100644
--- a/coverage/control.py
+++ b/coverage/control.py
@@ -298,7 +298,7 @@ class coverage(object):
return Analysis(self, it)
- def report(self, morfs=None, show_missing=True, ignore_errors=False,
+ def report(self, morfs=None, show_missing=True, ignore_errors=None,
file=None, omit_prefixes=None): # pylint: disable-msg=W0622
"""Write a summary report to `file`.
@@ -306,13 +306,18 @@ class coverage(object):
statements, missing statements, and a list of lines missed.
"""
- self.config.from_args(omit_prefixes=omit_prefixes)
- reporter = SummaryReporter(self, show_missing, ignore_errors)
+ self.config.from_args(
+ ignore_errors=ignore_errors,
+ omit_prefixes=omit_prefixes
+ )
+ reporter = SummaryReporter(
+ self, show_missing, self.config.ignore_errors
+ )
reporter.report(
morfs, outfile=file, omit_prefixes=self.config.omit_prefixes
)
- def annotate(self, morfs=None, directory=None, ignore_errors=False,
+ def annotate(self, morfs=None, directory=None, ignore_errors=None,
omit_prefixes=None):
"""Annotate a list of modules.
@@ -322,36 +327,45 @@ class coverage(object):
excluded lines have "-", and missing lines have "!".
"""
- self.config.from_args(omit_prefixes=omit_prefixes)
- reporter = AnnotateReporter(self, ignore_errors)
+ self.config.from_args(
+ ignore_errors=ignore_errors,
+ omit_prefixes=omit_prefixes
+ )
+ reporter = AnnotateReporter(self, self.config.ignore_errors)
reporter.report(
morfs, directory=directory, omit_prefixes=self.config.omit_prefixes
)
- def html_report(self, morfs=None, directory=None, ignore_errors=False,
+ def html_report(self, morfs=None, directory=None, ignore_errors=None,
omit_prefixes=None):
"""Generate an HTML report.
"""
- self.config.from_args(omit_prefixes=omit_prefixes)
- reporter = HtmlReporter(self, ignore_errors)
+ self.config.from_args(
+ ignore_errors=ignore_errors,
+ omit_prefixes=omit_prefixes
+ )
+ reporter = HtmlReporter(self, self.config.ignore_errors)
reporter.report(
morfs, directory=directory,
omit_prefixes=self.config.omit_prefixes
)
- def xml_report(self, morfs=None, outfile=None, ignore_errors=False,
+ def xml_report(self, morfs=None, outfile=None, ignore_errors=None,
omit_prefixes=None):
"""Generate an XML report of coverage results.
The report is compatible with Cobertura reports.
"""
- self.config.from_args(omit_prefixes=omit_prefixes)
+ self.config.from_args(
+ ignore_errors=ignore_errors,
+ omit_prefixes=omit_prefixes
+ )
if outfile:
outfile = open(outfile, "w")
try:
- reporter = XmlReporter(self, ignore_errors)
+ reporter = XmlReporter(self, self.config.ignore_errors)
reporter.report(
morfs, omit_prefixes=self.config.omit_prefixes, outfile=outfile
)
diff --git a/lab/cmd-opts.txt b/lab/cmd-opts.txt
index 5b1f78e2..e6401ef4 100644
--- a/lab/cmd-opts.txt
+++ b/lab/cmd-opts.txt
@@ -15,7 +15,7 @@ commands:
annotate -a
-d --output-directory string
-i --ignore-errors bool
- --omit list of string
+ --omit list of string [report].omit
combine -c
@@ -27,16 +27,16 @@ commands:
html -b
-d --output-directory string
- -i --ignore-errors bool
- --omit list of string
+ -i --ignore-errors bool [report].ignore_errors
+ --omit list of string [report].omit
--red *
--green *
--style *
report -r
-m --missing bool
- -i --ignore-errors bool
- --omit list of string
+ -i --ignore-errors bool [report].ignore_errors
+ --omit list of string [report].omit
run -x
-a --append bool
@@ -54,8 +54,8 @@ commands:
xml
- -i --ignore-errors bool
- --omit list of string
+ -i --ignore-errors bool [report].ignore_errors
+ --omit list of string [report].omit
-o string
diff --git a/test/coverage_coverage.py b/test/coverage_coverage.py
index eff68b9f..5cfef04b 100644
--- a/test/coverage_coverage.py
+++ b/test/coverage_coverage.py
@@ -67,7 +67,7 @@ def report_on_combined_files():
cov.combine()
cov.save()
- cov.html_report(directory=HTML_DIR, ignore_errors=True)
+ cov.html_report(directory=HTML_DIR)
try: