B
    .(b=                 @   s"  d dl mZ d dlZddlmZ d dlmZmZ dddd	d
gfdddddddddddg
fdddddddgfddddddd d!d
d"g	fd#d$d%d&d%d&dd'gfgZdd(d)d*d+gfdd,d)d-d.d-d/d0d1d*d2g
fdd3d4d)d*d1d2gfdd5d-d/d0d6d7d)d+d2g	fd#d)d4d)d4d)d-d.gfgZ	dd8d9d:d;gfdd<d9d=d9d=d>d?d>d:d@g
fddAd=d9d:d>d@gfdd9d=d>d?d@d9d9d;d@g	fd#d9d=d9d=d9d=d9gfgZ
dBdCdDgfdEdEgfgZejdFedGdH ZejdIe	dJdK ZejdLe
dMdN ZejjdOdPejdQedRdN ZdSdT ZejdUedVdW ZejdXdYdZd[d\gd]d^ Zejd_d`ddddgddedad)dbdadcdddeded)dbdedfdddgggedgdhdbdgdidddedjdhdbdjdkdddedad)dbdadcdddeded)dbdedfdddgedgdhdbdgdidddedjdhdbdjdkdddedld)dbdldmdddgggfgdndo Zejdpdqgdrds Zdtdu ZdS )v    )unicode_literalsN   )NAUGHTY_STRINGS)JapaneseDetailedTokenu   日本語だよu   日本u   語u   だu   よu0   東京タワーの近くに住んでいます。u   東京u	   タワーu   のu   近くu   にu   住んu   でu   いu   ますu   。u   吾輩は猫である。u   吾輩u   はu   猫u   あるu%   月に代わって、お仕置きよ!u   月u	   代わっu   てu   、u   おu	   仕置き!u$   すもももももももものうちu	   すももu   もu   ももu   うちu   名詞-固有名詞-地名-国u   名詞-普通名詞-一般u	   助動詞u   助詞-終助詞u!   名詞-固有名詞-地名-一般u   助詞-格助詞u    名詞-普通名詞-副詞可能u   動詞-一般u   助詞-接続助詞u   動詞-非自立可能u   補助記号-句点u	   代名詞u   助詞-係助詞u#   名詞-普通名詞-助数詞可能u   補助記号-読点u	   接頭辞ZfishZNOUNAUXZPARTZPROPNZADPZVERBZSCONJZPUNCTZPRONu   あれ。これ。u	   あれ。u	   これ。u<   「伝染るんです。」という漫画があります。ztext,expected_tokensc             C   s"   dd | |D }||kst d S )Nc             S   s   g | ]
}|j qS  )text).0tokenr	   r	   Q/home/dcms/DCMS/lib/python3.7/site-packages/spacy/tests/lang/ja/test_tokenizer.py
<listcomp>,   s    z%test_ja_tokenizer.<locals>.<listcomp>)AssertionError)ja_tokenizerr
   Zexpected_tokenstokensr	   r	   r   test_ja_tokenizer*   s    r   ztext,expected_tagsc             C   s"   dd | |D }||kst d S )Nc             S   s   g | ]
}|j qS r	   )Ztag_)r   r   r	   r	   r   r   2   s    z*test_ja_tokenizer_tags.<locals>.<listcomp>)r   )r   r
   Zexpected_tagstagsr	   r	   r   test_ja_tokenizer_tags0   s    r   ztext,expected_posc             C   s"   dd | |D }||kst d S )Nc             S   s   g | ]
}|j qS r	   )Zpos_)r   r   r	   r	   r   r   9   s    z)test_ja_tokenizer_pos.<locals>.<listcomp>)r   )r   r
   Zexpected_posposr	   r	   r   test_ja_tokenizer_pos7   s    r   z+sentence segmentation in tokenizer is buggy)reasonztext,expected_sentsc             C   s$   dd | |j D }||ks td S )Nc             S   s   g | ]}t |qS r	   )str)r   sentr	   r	   r   r   @   s    z)test_ja_tokenizer_pos.<locals>.<listcomp>)sentsr   )r   r
   Zexpected_sentsr   r	   r	   r   r   =   s    c             C   s   | d}|d j dkstd S )NzI   like cheese.   z  )Zorth_r   )r   r   r	   r	   r   test_ja_tokenizer_extra_spacesD   s    r   r
   c             C   s   | |}|j |kstd S )N)Ztext_with_wsr   )r   r
   r   r	   r	   r   !test_ja_tokenizer_naughty_stringsJ   s    r   ztext,len_a,len_b,len_c)u   選挙管理委員会   r   r   )u   客室乗務員r      r   )u   労働者協同組合r   r   r   )u   機能性食品r   r   r   c             C   s   t ddddiiid}t ddddiiid}t ddddiiid}t| ||ksVtt|||ksjtt|||ks~tt|||kstd S )N	tokenizerconfig
split_modeA)metaBC)r   lenr   )r   r
   Zlen_alen_bZlen_cnlp_anlp_bnlp_cr	   r	   r   test_ja_tokenizer_split_modesP   s    	r,   z:text,sub_tokens_list_a,sub_tokens_list_b,sub_tokens_list_cu   選挙管理委員会u   委員 u	   イイン)ZsurfacetaginfZlemmareading
sub_tokensu   会u   カイu   選挙u    名詞-普通名詞-サ変可能u   センキョu   管理u	   カンリu	   委員会u   イインカイc             C   s   t ddddiiid}t ddddiiid}t ddddiiid}| |jd |ksXt||jd |ksnt||jd |kst||jd |kstd S )	Nr    r!   r"   r#   )r$   r%   r&   r1   )r   	user_datar   )r   r
   Zsub_tokens_list_aZsub_tokens_list_bZsub_tokens_list_cr)   r*   r+   r	   r	   r   test_ja_tokenizer_sub_tokensc   s    r3   ztext,inflections,reading_forms)u   取ってつけた)u!   五段-ラ行,連用形-促音便r-   u!   下一段-カ行,連用形-一般u   助動詞-タ,終止形-一般)u   トッu   テu   ツケu   タc             C   s0   | |j d |kst| |j d |ks,td S )Ninflectionsreading_forms)r2   r   )r   r
   r4   r5   r	   r	   r   +test_ja_tokenizer_inflections_reading_forms   s    
r6   c             C   sL   | d}t |dkst| d}t |dks0t| d}t |dksHtd S )Nr-   r    r   z



 		 


)r'   r   )r   docr	   r	   r    test_ja_tokenizer_emptyish_texts   s    r9   )
__future__r   ZpytestZtokenizer.test_naughty_stringsr   Zspacy.lang.jar   r   ZTOKENIZER_TESTSZ	TAG_TESTSZ	POS_TESTSZSENTENCE_TESTSmarkZparametrizer   r   r   skipr   r   r,   r3   r6   r9   r	   r	   r	   r   <module>   sb   


(