Transfroming report object to XML
---------------------------------

    >>> s = '''Name                         Stmts   Exec  Cover   Missing
    ... ----------------------------------------------------------
    ... xix/__init__                     8      8   100%
    ... xix/utils/__init__               4      4   100%
    ... xix/utils/adoc                  32      0     0%   4-54
    ... xix/utils/binder                49     45    91%   94, 96-97, 110
    ... xix/utils/code                  16      0     0%   4-27
    ... xix/utils/comp/interface         1      1   100%
    ... xix/utils/xxml                  39      0     0%   4-76
    ... ----------------------------------------------------------
    ... TOTAL                         1524   1001    65%'''
    >>> from StringIO import StringIO
    >>> input = StringIO(s)


    First generate the report

    >>> from xix.utils.cover import CoverageReportParser, reportToXML
    >>> parser = CoverageReportParser()
    >>> report = parser.parse(input)


    Next transform report to xml string:

    >>> results = reportToXML(report)

    Verifying the results
    
    >>> import lxml.etree as ET
    >>> from StringIO import StringIO
    >>> buffer = StringIO('<?xml version="1.0"?>' + results)
    >>> doc = ET.parse(buffer)
    >>> root = doc.getroot()
    >>> print root.tag
    coverage-report
    >>> len(doc.xpath('/coverage-report/module'))
    7
    >>> m = doc.xpath('/coverage-report/module[@name="xix.utils.code"]/missing-ranges/range')[0]
    >>> print m.attrib['start'], m.attrib['end']
    4 27
    
    
    The ElementTree object can be returned directly by setting the "tree"
    argument to True:

    >>> t = reportToXML(report, tree=True)
    >>> print t.getroot().tag
    coverage-report


