0  ˆÀÄ „ Ž´×ÿÁ?÷ a ´irã@sîddgZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl m ZddlZdZGdd„dƒZdd „Zd d „ZGd d„dƒZd d„Zdd„Zddd„Zdd„ZGdd„dƒZdd„ZedkrêeƒdS)ÚTraceÚCoverageResultséN)Ú monotonicz#pragma NO COVERc@seZdZddd„Zdd„ZdS)Ú_IgnoreNcCs:|s tƒnt|ƒ|_|sgn dd„|Dƒ|_ddi|_dS)NcSsg|]}tj |¡‘qS©)ÚosÚpathÚnormpath©Ú.0Údrrú/usr/lib64/python3.9/trace.pyÚ Hsÿz$_Ignore.__init__..zé)ÚsetÚ_modsÚ_dirsÚ_ignore)ÚselfÚmodulesÚdirsrrr Ú__init__Fs ÿz_Ignore.__init__cCs¦||jvr|j|S||jvr,d|j|<dS|jD]"}| |d¡r2d|j|<dSq2|durld|j|<dS|jD]$}| |tj¡rrd|j|<dSqrd|j|<dS)NrÚ.r)rrÚ startswithrrÚsep)rÚfilenameÚ modulenameÚmodr rrr ÚnamesLs$          z _Ignore.names)NN)Ú__name__Ú __module__Ú __qualname__rrrrrr rEs rcCs tj |¡}tj |¡\}}|S©N)rrÚbasenameÚsplitext)rÚbaserÚextrrr Ú_modnamews r'cCsÂtj |¡}d}tjD]@}tj |¡}| |¡r|t|ƒtjkrt|ƒt|ƒkr|}q|rr|t|ƒdd…}n|}tj |¡\}}| tjd¡}tj r¨| tj d¡}tj  |¡\}}|  d¡S)NÚrr) rrÚnormcaseÚsysrÚlenrÚ splitdriveÚreplaceÚaltsepr$Úlstrip)rZ comparepathZlongestÚdirr%Údriverr&rrr Ú _fullmodname~s    r2c@s:eZdZddd„Zdd„Zdd„Zdd d „Zdd d „ZdS)rNc Cs||_|jduri|_|j ¡|_||_|jdur8i|_|j ¡|_||_|jdurZi|_|j ¡|_||_||_|j�rzTt|jdƒ� }t  |¡\}}}Wdƒn1s®0Y|  |  |||¡¡WnDt t tf�y}z$td|j|ftjd�WYd}~n d}~00dS)NÚrbzSkipping counts file %r: %s©Úfile)ÚcountsÚcopyZcounterÚ calledfuncsÚcallersÚinfileÚoutfileÚopenÚpickleÚloadÚupdateÚ __class__ÚOSErrorÚEOFErrorÚ ValueErrorÚprintr*Ústderr)rr6r8r:r9r;ÚfÚerrrrr r›s2      .ÿÿzCoverageResults.__init__cCs| d¡o| d¡S)Nú<ú>)rÚendswith)rrrrr Úis_ignored_filenameµsz#CoverageResults.is_ignored_filenamec Csn|j}|j}|j}|j}|j}|j}|D]}| |d¡||||<q(|D] }d||<qJ|D] }d||<q\dS©Nrr)r6r8r9Úget) rÚotherr6r8r9Z other_countsZother_calledfuncsZ other_callersÚkeyrrr r?»s zCoverageResults.updateTFc" Cs|jr@tƒtdƒ|j}t|ƒD]\}}}td|||fƒq"|jrÐtƒtdƒd}} t|jƒD]h\\} } } \} }}| |krœtƒtd| dƒ| }d} | | krº| | krºtd| ƒ| } td| | ||fƒqfi}|jD].\}}| |i¡}||<|j||f||<qÚi}| ¡D�],\}}| |¡�r0�q| d¡�rH|dd …}|du�rpt j   t j   |¡¡}t |ƒ}n$|}t j  |¡�sŒt  |¡t|ƒ}|�r¤t|ƒ}ni}t |¡}t j  ||d ¡}t|d ƒ� }t |j¡\}}Wdƒn1�sö0Y| |||||¡\}}|�r|�rtd ||ƒ}||||f||<�q|�rŠ|�rŠtd ƒt|ƒD]&}||\}}}}td||ƒ�qb|j�rzLt|jdƒ�*} t |j|j|jf| d¡Wdƒn1�sÒ0YWn8t�y}!ztd|!tj d�WYd}!~!n d}!~!00dS)Nzfunctions called:z*filename: %s, modulename: %s, funcname: