o
     ¢iÐ  ã                   @   sL   d dl mZ d dlZd dlmZ dd„ Zdd„ Zdd	„ Zd dlZd
d„ Z	dS )é    )ÚdivisionN)ÚPreshCounterc                  C   sŠ   t ƒ } | d dksJ ‚|  dd¡ | d dksJ ‚|  dd¡ |  dd¡ |  dd¡ | d dks3J ‚| d dks;J ‚| d dksCJ ‚d S )	Né   r   é   é   é
   é	   é   é   )r   Úinc©Úcounter© r   úN/home/ubuntu/.local/lib/python3.10/site-packages/preshed/tests/test_counter.pyÚ
test_count   s   r   c                  C   sj   t ƒ } |  d¡dksJ ‚|  dd¡ |  d¡dksJ ‚|  dd¡ |  d¡dks*J ‚|  d¡dks3J ‚d S )	Nr   ç        r   ç      ð?r   r   g]tÑEí?gF]tÑE·?)r   Úprobr   r   r   r   r   Útest_unsmooth_prob   s   r   c                  C   sd  t ƒ } tdƒD ]
}|  d| d¡ qtdƒD ]
}|  d| d¡ qtdƒD ]
}|  d| d	¡ q%tdƒD ]
}|  d
| d¡ q4tdƒD ]
}|  d| d¡ qC| jdksUJ ‚|  d¡d| j ksaJ ‚|  d¡dksjJ ‚|  d¡d| j ksvJ ‚|  ¡  |  d¡dk sƒJ ‚|  d¡dk sŒJ ‚|  d¡|  d¡k s˜J ‚tt| dd„ dƒD ]\}}|  |¡|k s¯J ‚q¢d S )Nr   éd   r   é   éZ   é   r	   éP   é   éF   r
   é<   é   é4   r   éÈ   r   g       @iè  c                 S   s   | d S )Nr   r   )Úitr   r   r   Ú<lambda>;   s    z"test_smooth_prob.<locals>.<lambda>)Úkey)	r   Úranger   Útotalr   ÚsmoothÚsmootherÚreversedÚsorted)ÚpÚiÚeventÚcountr   r   r   Útest_smooth_prob   s,   ÿr-   c                  C   sÆ   dt jv rt jd } nd S tƒ }tt| ƒƒD ]\}}| ¡ }|s!qt| ¡ d ƒ}| |d |¡ q|d }| 	|¡dks?J ‚| 	d¡dk sHJ ‚| 
¡  | 	|¡dksUJ ‚| 	|¡| 	|¡k saJ ‚d S )NÚTEST_FILE_LOCr   r   r   r   gš™™™™™¹?)ÚosÚenvironr   Ú	enumerateÚopenÚstripÚintÚsplitr   r   r%   )ÚlocÚcountsr*   ÚlineÚfreqÚoovr   r   r   Útest_large_freqs@   s    
r;   )
Ú
__future__r   ÚpytestÚpreshed.counterr   r   r   r-   r/   r;   r   r   r   r   Ú<module>   s    	"