a
    Kbm                     @   sB   d Z ddlZddlZddlmZ ddlmZ G dd dejZdS )z.
Tests for NIST translation evaluation metric
    N)find)corpus_nistc                   @   s   e Zd Zdd ZdS )TestNISTc              	   C   s  t d}t d}t d}t|.}tt| d  dd }W d    n1 sT0    Y  t|dd}t|ddn}ttd	d
 |}ttdd
 |}	ttdd|D ](\}
}t	|	||
}t
|| dk sJ qW d    n1 s0    Y  W d    n1 s0    Y  d S )Nzmodels/wmt15_eval/ref.ruzmodels/wmt15_eval/google.ruz#models/wmt15_eval/mteval-13a.output   utf8)encodingc                 S   s   |   S Nsplitx r   Alib/python3.9/site-packages/nltk/test/unit/translate/test_nist.py<lambda>       z-TestNIST.test_sentence_nist.<locals>.<lambda>c                 S   s
   |   gS r
   r   r   r   r   r   r      r   
   g?)r   openmapfloat	readlinesr   listzipranger   abs)selfZref_fileZhyp_fileZmteval_output_fileZ
mteval_finZmteval_nist_scoresZref_finZhyp_finZ
hypothesesZ
referencesiZmteval_nistZ	nltk_nistr   r   r   test_sentence_nist   s    
<zTestNIST.test_sentence_nistN)__name__
__module____qualname__r   r   r   r   r   r      s   r   )	__doc__ioZunittestZ	nltk.datar   Znltk.translate.nist_scorer   ZTestCaser   r   r   r   r   <module>   s
   