§
    �zIf3  ã                   ón   — d dl Z d dlZd dlmZ d dlmZ d dlmZ  G d„ d¦  «        Z G d„ d¦  «        Z	dS )	é    N)ÚFreqDist)ÚNgramCounter©Ú
everygramsc                   óX   — e Zd ZdZed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ ZdS )ÚTestNgramCounterzATests for NgramCounter that only involve lookup, no modification.c                 óê   — t          d¦  «        t          d¦  «        g}t          d„ |D ¦   «         ¦  «        | _        t          d„ |D ¦   «         ¦  «        | _        t	          j        ¦   «         | _        d S )NÚabcdÚegdbec              3   ó8   K  — | ]}t          |d ¬¦  «        V — ŒdS )é   ©Úmax_lenNr   ©Ú.0Úsents     úR/var/www/piapp/venv/lib/python3.11/site-packages/nltk/test/unit/lm/test_counter.pyú	<genexpr>z/TestNgramCounter.setup_class.<locals>.<genexpr>   s@   è è € ð ,
ð ,
Ø,0�J�t QÐ'Ñ'Ô'ð,
ð ,
ð ,
ð ,
ð ,
ð ,
ó    c              3   ó8   K  — | ]}t          |d ¬¦  «        V — ŒdS )é   r   Nr   r   s     r   r   z/TestNgramCounter.setup_class.<locals>.<genexpr>   s/   è è € Ð*XÐ*XÈ4­:°dÀAÐ+FÑ+FÔ+FÐ*XÐ*XÐ*XÐ*XÐ*XÐ*Xr   )Úlistr   Útrigram_counterÚbigram_counterÚunittestÚTestCaseÚcase)ÚselfÚtexts     r   Úsetup_classzTestNgramCounter.setup_class   s|   € å�V‘”�d 7™mœmÐ,ˆÝ+ð ,
ð ,
Ø48ð,
ñ ,
ô ,
ñ  
ô  
ˆÔõ +Ð*XÐ*XÐSWÐ*XÑ*XÔ*XÑXÔXˆÔÝÔ%Ñ'Ô'ˆŒ	ˆ	ˆ	r   c                 ó‚   — | j                              ¦   «         dk    sJ ‚| j                             ¦   «         dk    sJ ‚d S )Né   é   )r   ÚNr   ©r   s    r   Útest_NzTestNgramCounter.test_N   sH   € ØÔ"×$Ò$Ñ&Ô&¨"Ò,Ð,Ð,Ð,ØÔ#×%Ò%Ñ'Ô'¨2Ò-Ð-Ð-Ð-Ð-Ð-r   c                 óˆ   — t          | j        ¦  «        dk    sJ ‚| j        d          t          | j        ¦  «        dk    sJ ‚d S )Nr   é2   r   )Úlenr   r%   s    r   Ú$test_counter_len_changes_with_lookupz5TestNgramCounter.test_counter_len_changes_with_lookup!   sN   € Ý�4Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,ØÔ˜BÔÐÝ�4Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,Ð,Ð,r   c                 ó@   — | j         d         | j         j        k    sJ ‚d S )Né   )r   Úunigramsr%   s    r   Ú test_ngram_order_access_unigramsz1TestNgramCounter.test_ngram_order_access_unigrams&   s'   € ØÔ" 1Ô%¨Ô)<Ô)EÒEÐEÐEÐEÐEÐEr   c                 ó$  — t          j        ¦   «         }g d¢}g d¢}| j        d         }| j        d         }| j                             ||                     ¦   «         ¦  «         | j                             ||                     ¦   «         ¦  «         d S )N)©ÚaÚb)r2   Úc)ÚeÚg)r5   Úd)r6   r2   )©r1   )r2   )r6   )r4   ©r3   )r5   r   r   )r   r   r   r   ÚassertCountEqualÚ
conditions)r   r   Úexpected_trigram_contextsÚexpected_bigram_contextsÚbigramsÚtrigramss         r   Útest_ngram_conditional_freqdistz0TestNgramCounter.test_ngram_conditional_freqdist)   s›   € ÝÔ Ñ"Ô"ˆð%
ð %
ð %
Ð!ð $TÐ#SÐ#SÐ àÔ& qÔ)ˆØÔ'¨Ô*ˆàŒ	×"Ò"Ð#;¸W×=OÒ=OÑ=QÔ=QÑRÔRÐRØŒ	×"Ò"Ð#<¸h×>QÒ>QÑ>SÔ>SÑTÔTÐTÐTÐTr   c                 ón   — | j         dg         d         dk    sJ ‚| j         dg         d         dk    sJ ‚d S )Nr1   r2   r,   r3   ©r   r%   s    r   Útest_bigram_counts_seen_ngramsz/TestNgramCounter.test_bigram_counts_seen_ngrams:   sH   € ØÔ" C 5Ô)¨#Ô.°!Ò3Ð3Ð3Ð3ØÔ" C 5Ô)¨#Ô.°!Ò3Ð3Ð3Ð3Ð3Ð3r   c                 ó:   — | j         dg         d         dk    sJ ‚d S )Nr2   Úzr   rA   r%   s    r   Ú test_bigram_counts_unseen_ngramsz1TestNgramCounter.test_bigram_counts_unseen_ngrams>   s(   € ØÔ" C 5Ô)¨#Ô.°!Ò3Ð3Ð3Ð3Ð3Ð3r   c                 ó,   — | j         d         dk    sJ ‚d S )Nr2   r   rA   r%   s    r   Útest_unigram_counts_seen_wordsz/TestNgramCounter.test_unigram_counts_seen_wordsA   ó!   € ØÔ" 3Ô'¨1Ò,Ð,Ð,Ð,Ð,Ð,r   c                 ó,   — | j         d         dk    sJ ‚d S )NrD   r   rA   r%   s    r   Ú+test_unigram_counts_completely_unseen_wordsz<TestNgramCounter.test_unigram_counts_completely_unseen_wordsD   rH   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úclassmethodr    r&   r*   r.   r?   rB   rE   rG   rJ   © r   r   r   r      s±   € € € € € ØKÐKàð(ð (ñ „[ð(ð.ð .ð .ð-ð -ð -ð
Fð Fð FðUð Uð Uð"4ð 4ð 4ð4ð 4ð 4ð-ð -ð -ð-ð -ð -ð -ð -r   r   c                   óŠ   — e Zd Zed„ ¦   «         Zej                             ddg dg¦  «        d„ ¦   «         Zd„ Z	d„ Z
d„ Zd	„ ZdS )
ÚTestNgramCounterTrainingc                 ó\   — t          ¦   «         | _        t          j        ¦   «         | _        d S )N)r   Úcounterr   r   r   r%   s    r   r    z$TestNgramCounterTraining.setup_classI   s!   € å#‘~”~ˆŒÝÔ%Ñ'Ô'ˆŒ	ˆ	ˆ	r   r   Ú Nc                 ód   — t          |¦  «        }d|vsJ ‚|d         t          ¦   «         k    sJ ‚d S )Nr   r,   )r   r   )r   r   Útests      r   Útest_empty_inputsz*TestNgramCounterTraining.test_empty_inputsN   s;   € å˜DÑ!Ô!ˆØ˜ˆ}ˆ}ˆ}ˆ}Ø�AŒw�(™*œ*Ò$Ð$Ð$Ð$Ð$Ð$r   c                 óæ   — t          d¦  «        }t          d„ |D ¦   «         g¦  «        }|d         rJ ‚|d         rJ ‚| j                             ||d                              ¦   «         ¦  «         d S )Nr
   c                 ó   — g | ]}|f‘ŒS rP   rP   )r   Úws     r   ú
<listcomp>zCTestNgramCounterTraining.test_train_on_unigrams.<locals>.<listcomp>V   s   € Ð 5Ð 5Ð 5¨! ! Ð 5Ð 5Ð 5r   r   r   r,   )r   r   r   r9   Úkeys)r   ÚwordsrT   s      r   Útest_train_on_unigramsz/TestNgramCounterTraining.test_train_on_unigramsT   sx   € Ý�V‘”ˆÝÐ 5Ð 5¨uÐ 5Ñ 5Ô 5Ð6Ñ7Ô7ˆà˜1”:ÐÐÐØ˜1”:ÐÐÐØŒ	×"Ò" 5¨'°!¬*¯/ª/Ñ*;Ô*;Ñ<Ô<Ð<Ð<Ð<r   c                 ó*  — g d¢}ddgddgddgg}t          j        t          ¦  «        5  t          |g¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |g¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)ÚCheckÚthisÚoutú!ra   rb   rc   rd   )ÚpytestÚraisesÚ	TypeErrorr   )r   Ústr_sentÚ	list_sents      r   Útest_train_on_illegal_sentencesz8TestNgramCounterTraining.test_train_on_illegal_sentences\   s!  € Ø0Ð0Ð0ˆØ˜vÐ&¨°¨¸%À¸ÐFˆ	åŒ]�9Ñ%Ô%ð 	%ð 	%Ý˜(˜Ñ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%õ Œ]�9Ñ%Ô%ð 	&ð 	&Ý˜)˜Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&s#   ©AÁA
ÁA
Á*BÂBÂBc                 ó\   — ddg}t          |g¦  «        }t          |d         ¦  «        rJ ‚d S )Nr0   ©r3   r6   r   )r   Úbool)r   Úbigram_sentrT   s      r   Útest_train_on_bigramsz.TestNgramCounterTraining.test_train_on_bigramsf   s9   € Ø! :Ð.ˆÝ ˜}Ñ-Ô-ˆÝ˜ œ
Ñ#Ô#Ð#Ð#Ð#Ð#Ð#r   c                 ót  — g d¢}t          |g¦  «        }dg}ddg}dg}| j                             ||d                              ¦   «         ¦  «         | j                             ||d                              ¦   «         ¦  «         | j                             ||d                              ¦   «         ¦  «         d S )	N)r0   rl   )r4   Úfr5   )Úhrr   r7   r8   )r4   rq   r,   r   r   )r   r   r9   r]   )r   Ú
mixed_sentrT   r-   Úbigram_contextsÚtrigram_contextss         r   Útest_train_on_mixz*TestNgramCounterTraining.test_train_on_mixk   s®   € ØFÐFÐFˆ
Ý 
˜|Ñ,Ô,ˆØ�5ˆØ! 6Ð*ˆØ&˜<ÐàŒ	×"Ò" 8¨W°Q¬Z¯_ª_Ñ->Ô->Ñ?Ô?Ð?ØŒ	×"Ò" ?°G¸A´J·O²OÑ4EÔ4EÑFÔFÐFØŒ	×"Ò"Ð#3°W¸Q´Z·_²_Ñ5FÔ5FÑGÔGÐGÐGÐGr   )rK   rL   rM   rO   r    re   ÚmarkÚparametrizerX   r_   rj   ro   rv   rP   r   r   rR   rR   H   s¢   € € € € € Øð(ð (ñ „[ð(ð „[×Ò˜V b¨"¨d ^Ñ4Ô4ð%ð %ñ 5Ô4ð%ð
=ð =ð =ð&ð &ð &ð$ð $ð $ð
	Hð 	Hð 	Hð 	Hð 	Hr   rR   )
r   re   Únltkr   Únltk.lmr   Ú	nltk.utilr   r   rR   rP   r   r   ú<module>r|      s´   ðð €€€à €€€à Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ø  Ð  Ð  Ð  Ð  Ð  ð4-ð 4-ð 4-ð 4-ð 4-ñ 4-ô 4-ð 4-ðn,Hð ,Hð ,Hð ,Hð ,Hñ ,Hô ,Hð ,Hð ,Hð ,Hr   