summaryrefslogtreecommitdiff
path: root/coverage/xmlreport.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/xmlreport.py')
-rw-r--r--coverage/xmlreport.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/coverage/xmlreport.py b/coverage/xmlreport.py
index f7ad2b8a..996f19a2 100644
--- a/coverage/xmlreport.py
+++ b/coverage/xmlreport.py
@@ -20,9 +20,10 @@ def rate(hit, num):
class XmlReporter(Reporter):
"""A reporter for writing Cobertura-style XML coverage results."""
- def __init__(self, coverage, config):
+ def __init__(self, coverage, config, file_locator):
super(XmlReporter, self).__init__(coverage, config)
+ self.file_locator = file_locator
self.source_paths = set()
self.packages = {}
self.xml_out = None
@@ -116,20 +117,20 @@ class XmlReporter(Reporter):
pct = 100.0 * (lhits_tot + bhits_tot) / denom
return pct
- def xml_file(self, cu, analysis):
+ def xml_file(self, fr, analysis):
"""Add to the XML report for a single file."""
# Create the 'lines' and 'package' XML elements, which
# are populated later. Note that a package == a directory.
- filename = cu.file_locator.relative_filename(cu.filename)
+ filename = self.file_locator.relative_filename(fr.filename)
filename = filename.replace("\\", "/")
dirname = os.path.dirname(filename) or "."
parts = dirname.split("/")
dirname = "/".join(parts[:self.config.xml_package_depth])
package_name = dirname.replace("/", ".")
- className = cu.name
+ className = fr.name
- self.source_paths.add(cu.file_locator.relative_dir.rstrip('/'))
+ self.source_paths.add(self.file_locator.relative_dir.rstrip('/'))
package = self.packages.setdefault(package_name, [{}, 0, 0, 0, 0])
xclass = self.xml_out.createElement("class")