a
    Kbj                     @   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).0Zx1Zy1 r   ?lib/python3.9/site-packages/nltk/test/unit/test_collocations.py	<genexpr>       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rnt| j	 d kstn J t
t| tjg dsJ 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    
	6r4   c                  C   s   t jtdd} t| j tg dks,J t| j tg dksJJ ttt| j	   krt| j	 d d d ksn J t
t| tjtg dsJ d S )	N   Zwindow_size))r   r5   )r   r5   )r   r5   r   r   r   r   r    r!   r   g       @))r   h\?)r   r7   )r   r7   )r           )r   r8   )r   r8   )r   r8   r&   r2   r   r   r	   test_bigram3/   s"    

r9   c                  C   s   t jtdd} t| j tg dks,J t| j tg dksJJ t| j }t| j d d d d d	 }t	t|  kr|ksn J t
t| tjtg d
sJ d S )N   r6   )	)r      )r   r;   )r   r;   )r   r   r5   )r   r   r5   r   r   r   r   r    r;   r5   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.   r/   r-   r   r0   r   r1   )r3   Z	n_word_fdZ
n_ngram_fdr   r   r	   test_bigram5T   s     

"r@   N)Znltk.collocationsr   Znltk.metricsr   r   splitr(   r   r4   r9   r@   r   r   r   r	   <module>   s   %