XML reports line-rate=0 for empty files, should be 1 · Issue #345 · nedbat/coveragepy (original) (raw)

Originally reported by Anonymous


The XML report generated by coverage==3.7.1 shows that classes with no lines (typically __init__.py files) have a line-rate=0 when it should be line-rate=1.

#!xml

<?xml version="1.0" ?>
<!DOCTYPE coverage
  SYSTEM 'http://cobertura.sourceforge.net/xml/coverage-03.dtd'>
<coverage branch-rate="0" line-rate="1" timestamp="1418882048682" version="3.7.1">
    <!-- Generated by coverage.py: http://nedbatchelder.com/code/coverage -->
    <packages>
        <package branch-rate="0" complexity="0" line-rate="1" name="">
            <classes>
                <class branch-rate="0" complexity="0" filename="dummy/__init__.py" line-rate="0" name="dummy/__init__">
                    <methods/>
                    <lines/>
                </class>
                <class branch-rate="0" complexity="0" filename="dummy/dummy.py" line-rate="1" name="dummy/dummy">
                    <methods/>
                    <lines>
                        <line hits="1" number="1"/>
                        <line hits="1" number="2"/>
                        <line hits="1" number="4"/>
                        <line hits="1" number="5"/>
                    </lines>
                </class>
                <class branch-rate="0" complexity="0" filename="dummy/dummy2.py" line-rate="1" name="dummy/dummy2">
                    <methods/>
                    <lines>
                        <line hits="1" number="1"/>
                        <line hits="1" number="2"/>
                    </lines>
                </class>
            </classes>
        </package>
    </packages>
</coverage>

When this file is given to pycobertura, it shows:

$ pycobertura show coverage.xml
Name              Stmts    Miss  Cover    Missing
--------------  -------  ------  -------  ---------
dummy/__init__        0       0  0.00%
dummy/dummy           4       0  100.00%
dummy/dummy2          2       0  100.00%
TOTAL                 6       0  100.00%