o
    2g                     @  sx   d Z ddlmZ ddlZddlmZmZ ddlmZm	Z	 zddl
Z
W n ey-   dZ
Y nw ddlZG dd deZdS )z)Test cases for reports generated by mypy.    )annotationsN)CoberturaPackageget_line_rate)Suiteassert_equalc                   @  sH   e Zd Zejjedu ddd
ddZejjedu ddd
dd	ZdS )CoberturaReportSuiteNz$Cannot import lxml. Is it installed?)reasonreturnNonec                 C  s$   t dtdd t dtdd d S )Nz1.0r   z0.3333      )r   r   )self r   M/home/garg/my-data/venv/lib/python3.10/site-packages/mypy/test/testreports.pytest_get_line_rate   s   z'CoberturaReportSuite.test_get_line_ratec                 C  sz   dd l m} td}d|_d|_td}d|_d|_|d|jd< ||jd< t	d
d	}t||j| d
d d S )Nr   foobar   *   raz
   classa              <package complexity="1.0" name="foobar" branch-rate="0" line-rate="0.5000">
              <classes/>
              <packages>
                <package complexity="1.0" name="raz" branch-rate="0" line-rate="1.0000">
                  <classes>
                    <class/>
                  </classes>
                </package>
              </packages>
            </package>
        asciiT)pretty_print)
lxml.etreeetreer   covered_linestotal_linesElementclassespackagestextwrapdedentencoder   tostringas_xml)r   r   cobertura_packagechild_packageexpected_outputr   r   r   test_as_xml   s"   
z CoberturaReportSuite.test_as_xml)r	   r
   )	__name__
__module____qualname__pytestmarkskipiflxmlr   r(   r   r   r   r   r      s
    r   )__doc__
__future__r   r    mypy.reportr   r   mypy.test.helpersr   r   r/   ImportErrorr,   r   r   r   r   r   <module>   s    