o
    rZh                     @   sH   d dl mZ d dlmZ dZd Zdd Zdd Zd	d
 Z	dd Z
dS )    )BigramCollocationFinder)BigramAssocMeasuresg:0yE>zthis this is is a a test testc                 C   s   t dd t| |D S )zbVerify that two sequences of n-gram association values are within
    _EPSILON of each other.
    c                 s   s,    | ]\}}t |d  |d   tkV  qdS )   N)abs_EPSILON).0x1y1 r
   O/var/www/auris/lib/python3.10/site-packages/nltk/test/unit/test_collocations.py	<genexpr>   s   * zclose_enough.<locals>.<genexpr>)allzip)xyr
   r
   r   close_enough
   s   r   c                  C   s   t t} t| j g dksJ t| j g dksJ ttt| j	   kr8t| j	 d ks;J  J t
t| tjg dsJJ d S )N)ar   r   )r   testr   )isr   r   r   r   r   r   r   r   )thisr   r   r   r   r   )r      )r   r"   )r   r"   )r   r"   r   ))r         ?r   r#   r   r#   )r   r#   )r   r#   r   r#   )r    r#   r   
from_wordsSENTsortedngram_fditemsword_fdlensumvaluesr   score_ngramsr   pmibr
   r
   r   test_bigram2   s   
	8r5   c                  C   s   t jtdd} t| j tg dksJ t| j tg dks%J ttt| j	   krBt| j	 d d d ksEJ  J t
t| tjtg dsVJ d S )	N   Zwindow_size))r   r6   )r   r6   )r   r6   r   r   r   r   r!   r"   r   g       @))r   h\?)r   r8   )r   r8   )r           )r   r9   )r   r9   )r    r9   r'   r3   r
   r
   r   test_bigram3/   s   

@r:   c                  C   s   t jtdd} t| j tg dksJ t| j tg dks%J t| j }t| j d d d d d	 }t	t|  krJ|ksMJ  J t
t| tjtg d
s^J d S )N   r7   )	)r      )r   r<   )r   r<   )r   r   r6   )r   r   r6   r   r   r   r   r!   r<   r6   r"   r   g      @)	r$   r%   r&   )r=   z?G?)r>   r?   )r         )r   r@   )r   r@   )r    r@   )r   r(   r)   r*   r+   r,   r-   r/   r0   r.   r   r1   r   r2   )r4   Z	n_word_fdZ
n_ngram_fdr
   r
   r   test_bigram5T   s    

" rA   N)Znltk.collocationsr   Znltk.metricsr   r   splitr)   r   r5   r:   rA   r
   r
   r
   r   <module>   s    %