AlkantarClanX12

Your IP : 3.135.184.136


Current Path : /opt/cloudlinux/venv/lib/python3.11/site-packages/coverage/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib/python3.11/site-packages/coverage/__pycache__/lcovreport.cpython-311.pyc

�

�܋fK���dZddlmZddlZddlZddlZddlmZmZm	Z	m
Z
ddlmZddl
mZddlmZmZddlmZe
rdd	lmZdd
�ZGd�d��ZdS)zLCOV reporting for coverage.py.�)�annotationsN)�IO�Iterable�Optional�
TYPE_CHECKING)�FileReporter)�get_analysis_to_report)�Analysis�Numbers)�TMorf)�Coverage�line�str�returnc���tj|�d�������}t	j|���d���d��S)z9Produce a hash of a source line for use in the LCOV file.zutf-8�ascii�=)�hashlib�md5�encode�digest�base64�	b64encode�decode�rstrip)r�hasheds  �f/builddir/build/BUILD/cloudlinux-venv-1.0.6/venv/lib64/python3.11/site-packages/coverage/lcovreport.py�	line_hashrsV��
�[����W�-�-�
.�
.�
5�
5�
7�
7�F���F�#�#�*�*�7�3�3�:�:�3�?�?�?�c�.�eZdZdZdZdd�Zdd
�Zdd�ZdS)�LcovReporterz-A reporter for writing LCOV coverage reports.zLCOV report�coverager
r�Nonec�Z�||_t|jjj��|_dS�N)r"r�config�	precision�total)�selfr"s  r�__init__zLcovReporter.__init__"s$�� ��
��T�]�1�;�<�<��
�
�
r�morfs�Optional[Iterable[TMorf]]�outfile�IO[str]�floatc���|j���|ptj}t	|j|��D]\}}|�|||���|jjo|jjS)z�Renders the full lcov report.

        `morfs` is a list of modules or filenames

        outfile is the file object to write the file into.
        )	r"�get_data�sys�stdoutr	�get_lcovr(�n_statements�
pc_covered)r)r+r-�fr�analysiss     r�reportzLcovReporter.report&sq��	
�
��� � � ��'�S�Z��2�4�=�%�H�H�	1�	1�L�B���M�M�"�h��0�0�0�0��z�&�@�4�:�+@�@rr7rr8r
c���|xj|jz
c_|�d��|�d|����d���|������}t
|j��D]S}|r$|dz
t|��krn8||dz
}nd}|�d|�dt|���d����Tt
|j
��D]:}|sJ�||dz
}|�d|�dt|���d����;|�d	|jj�d���|�d
|jj�d���|�
��}|���}	tt
|����������D]�\}
}tt
||����D]4\}}
t%|
d��}
|�d|
�d
|
�d
|�d����5tt
|	|��t||�����D]4\}}
t%|
d��}
|�d|
�d
|
�d
|�d����5��|���r�|���}t)d�|���D����}|t)d�|���D����z
}|�d|�d���|�d|�d���|�d��dS)z�Produces the lcov data for a single file.

        This currently supports both line and branch coverage,
        however function coverage is not supported.
        zTN:
zSF:�
��zDA:z,1,z,0,zLF:zLH:rzBRDA:�,z,-
)�startz,1
c3� K�|]	\}}|V��
dSr%���.0�t�ks   r�	<genexpr>z(LcovReporter.get_lcov.<locals>.<genexpr>ys&����:�:�D�A�q�a�:�:�:�:�:�:rc3�&K�|]\}}||z
V��
dSr%rArBs   rrFz(LcovReporter.get_lcov.<locals>.<genexpr>zs*����D�D�d�a��A��E�D�D�D�D�D�DrzBRF:zBRH:zend_of_record
N)r(�numbers�write�relative_filename�source�
splitlines�sorted�executed�lenr�missingr5�
n_executed�missing_branch_arcs�executed_branch_arcs�	enumerate�branch_stats�keys�max�has_arcs�sum�values)r)r7r8r-�source_lines�coveredr�missed�missing_arcs�
executed_arcs�block_number�block_line_number�
branch_number�line_numberrU�brf�brhs                 rr4zLcovReporter.get_lcov6s���	
�
�
�h�&�&�
�
��
�
�g�����
�
�6�B�0�0�2�2�6�6�6�7�7�7��y�y�{�{�-�-�/�/���h�/�0�0�	A�	A�G��
��1�9��L� 1� 1�1�1��E�#�G�A�I�.������M�M�?��?�?�I�d�O�O�?�?�?�@�@�@�@��X�-�.�.�	@�	@�F����<���q��)�D��M�M�>��>�>�9�T�?�?�>�>�>�?�?�?�?��
�
�=�H�,�9�=�=�=�>�>�>��
�
�;�H�,�7�;�;�;�<�<�<� �3�3�5�5�� �5�5�7�7�
�/8��8�(�(�*�*�/�/�1�1�2�2�0
�0
�	X�	X�+�L�+�/8��|�$5�6�7�7�/�/�
X�
X�*�
�{�"�+�q�1�1���
�
�V�k�V�V�L�V�V�=�V�V�V�W�W�W�W�
/8��}�%6�7�8�8��,�'8�9�:�:�/�/�/�
X�
X�*�
�{�"�+�q�1�1���
�
�V�k�V�V�L�V�V�=�V�V�V�W�W�W�W�
X������	*�#�0�0�2�2�L��:�:�L�$7�$7�$9�$9�:�:�:�:�:�C���D�D�l�.A�.A�.C�.C�D�D�D�D�D�D�C��M�M�.��.�.�.�)�)�)��M�M�.��.�.�.�)�)�)��
�
�'�(�(�(�(�(rN)r"r
rr#)r+r,r-r.rr/)r7rr8r
r-r.rr#)�__name__�
__module__�__qualname__�__doc__�report_typer*r9r4rArrr!r!se������7�7��K�=�=�=�=�A�A�A�A� H)�H)�H)�H)�H)�H)rr!)rrrr)ri�
__future__rrrr2�typingrrrr�coverage.pluginr�coverage.report_corer	�coverage.resultsr
r�coverage.typesrr"r
rr!rArr�<module>rqs��&�%�"�"�"�"�"�"�
�
�
�
�����
�
�
�
�8�8�8�8�8�8�8�8�8�8�8�8�(�(�(�(�(�(�7�7�7�7�7�7�.�.�.�.�.�.�.�.� � � � � � ��"�!�!�!�!�!�!�@�@�@�@�a)�a)�a)�a)�a)�a)�a)�a)�a)�a)r