B
    .(b	                 @   s`   d dl mZ d dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 dd Zd	d
 Zdd ZdS )    )unicode_literalsN)Doc)Language)Lookups)
Lemmatizerc              C   sd  t  } t| jdgdd jdks$t| jjd}d|d< t| jdgdd jdksXt| jjd}d|d< t| jdgdd jdkstt  }|jjd}d|d< t|jdgdd jdkst|  }|	| d|jjkstt
|jjdd	kst|jjdd dks tt|jdgdd jdks@tt|jdgdd jdks`td
S )zwTest for an issue that'd cause lookups available in a model loaded from
    disk to not be reflected in the lemmatizer.Zfoo)wordsr   lemma_lookupbarZworldZhellohi   N)r   r   vocabZlemma_AssertionErrorlookups	add_table	get_tableto_bytes
from_byteslen)nlptableZnew_nlpZ	nlp_bytes r   J/home/dcms/DCMS/lib/python3.7/site-packages/spacy/tests/test_lemmatizer.py(test_lemmatizer_reflects_lookups_changes   s&    
 r   c           	   C   s   t  } t | j_t| jjr t| d}| | t	t
 |   W d Q R X | jjd | jjd d| jjdd< t	d }|   |jrtW d Q R X d S )Ntaggerr   Zlexeme_normAa)r   r   r   r   r   r   Zcreate_pipeZadd_pipepytestZwarnsUserWarningZbegin_trainingr   r   list)r   r   recordr   r   r   test_tagger_warns_no_lookups%   s    


r    c              C   sj   t  } | ddg i | ddi i | ddddgii t| d d}|ddd	d
dddgksftd S )NZlemma_rulesZnounZlemma_indexZ	lemma_excZformuesskattenZformuesskatt)Zis_base_formZFormuesskattendefZmascZsing)ZDefiniteZGenderNumber)r   r   r   r   )r   Z
lemmatizerr   r   r   3test_lemmatizer_without_is_base_form_implementation5   s    r#   )
__future__r   r   Zspacy.tokensr   Zspacy.languager   Zspacy.lookupsr   Zspacy.lemmatizerr   r   r    r#   r   r   r   r   <module>   s   