
    Ng                         d dl Z d dlmZ d dlmZmZ d dlmZmZm	Z	m
Z
mZmZmZmZmZmZ d dlmZ  G d de j                  ZdS )    N)brown)JSONTaggedDecoderJSONTaggedEncoder)
AffixTaggerBigramTaggerBrillTaggerBrillTaggerTrainerDefaultTaggerNgramTaggerPerceptronTaggerRegexpTaggerTrigramTaggerUnigramTagger)
nltkdemo18c                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	TestJSONSerializationc                     t          j                    d d         | _        t                      | _        t                      | _        t          d          | _        d S )N#   NN)	r   tagged_sentscorpusr   decoderr   encoderr
   default_tagger)selfs    b/var/www/html/ai-engine/env/lib/python3.11/site-packages/nltk/test/unit/test_json_serialization.pysetUpzTestJSONSerialization.setUp   sK    (**3B3/(**(**+D11    c                 ,   | j                             | j                  }| j                            |          }|                     t          | j                  t          |                     |                     | j        j        |j                   d S )N)r   encoder   r   decodeassertEqualrepr_tag)r   encodeddecodeds      r   test_default_taggerz)TestJSONSerialization.test_default_tagger   sz    ,%%d&9::,%%g..d122DMMBBB,17<@@@@@r   c                    t          dg| j                  }| j                            |          }| j                            |          }|                     t          |          t          |                     |                     t          |j                  t          |j                             |                     |j	        |j	                   d S )N)z.*r   backoff)
r   r   r   r    r   r!   r"   r#   r*   _regexpsr   taggerr%   r&   s       r   test_regexp_taggerz(TestJSONSerialization.test_regexp_tagger"   s    }ot7JKKK,%%f--,%%g..ftG}}555fn--tGO/D/DEEE'*:;;;;;r   c                 8   t          | j        | j                  }| j                            |          }| j                            |          }|                     t          |          t          |                     |                     t          |j	                  t          |j	                             |                     |j
        |j
                   |                     |j        |j                   |                     |j        |j                   d S )Nr)   )r   r   r   r   r    r   r!   r"   r#   r*   _affix_length_min_word_length_context_to_tagr,   s       r   test_affix_taggerz'TestJSONSerialization.test_affix_tagger,   s    T[$2EFFF,%%f--,%%g..ftG}}555fn--tGO/D/DEEE-w/DEEE0'2JKKK/1HIIIIIr   c                 x   t          | j        | j                  }t          | j        |          }t	          | j        |          }t          d| j        |          }| j                            |          }| j        	                    |          }| 
                    t          |          t          |                     | 
                    t          |          t          |j                             | 
                    t          |          t          |j        j                             | 
                    t          |          t          |j        j        j                             | 
                    t          | j                  t          |j        j        j        j                             d S )Nr)      )r   r   r   r   r   r   r   r    r   r!   r"   r#   r*   )r   	unitaggerbitagger	tritaggerntaggerr%   r&   s          r   test_ngram_taggersz(TestJSONSerialization.test_ngram_taggers8   sc   !$+t7JKKK	Y???!$+x@@@	ai@@@,%%g..,%%g..gW666i$w*?*?@@@hgo.E)F)FGGGi$w/F/N*O*OPPP$%%tGO,C,K,S'T'T	
 	
 	
 	
 	
r   c                    t          d          }|                    | j                   | j                            |          }| j                            |          }|                     |j        j	        |j        j	                   |                     |j
        |j
                   |                     |j        |j                   d S )NF)load)r   trainr   r   r    r   r!   r"   modelweightstagdictclassesr,   s       r   test_perceptron_taggerz,TestJSONSerialization.test_perceptron_taggerI   s    !u---T[!!!,%%f--,%%g..-w}/DEEE99999999r   c                    t          | j        t                      d          }|                    | j        d          }| j                            |          }| j                            |          }| 	                    t          |j                  t          |j                             | 	                    |j        |j                   | 	                    |j        |j                   d S )NT)deterministic   )	max_rules)r	   r   r   r=   r   r   r    r   r!   r"   r#   _initial_tagger_rules_training_stats)r   trainerr-   r%   r&   s        r   test_brill_taggerz'TestJSONSerialization.test_brill_taggerT   s    $T
 
 
 t{b99,%%f--,%%g..f455tG<S7T7TUUU777/1HIIIIIr   N)
__name__
__module____qualname__r   r'   r.   r3   r:   rB   rK    r   r   r   r      s        2 2 2A A A< < <
J 
J 
J
 
 
"	: 	: 	:J J J J Jr   r   )unittestnltk.corpusr   nltk.jsontagsr   r   nltk.tagr   r   r   r	   r
   r   r   r   r   r   nltk.tag.brillr   TestCaser   rO   r   r   <module>rV      s          > > > > > > > >                        & % % % % %KJ KJ KJ KJ KJH- KJ KJ KJ KJ KJr   