B
    .(bQ                 @   sT   d dl mZ d dlmZ d dlmZ d dlZddlmZ dd Z	d	d
 Z
dd ZdS )    )unicode_literals)EntityRecognizer)SpanN   )get_docc             C   s   ddddg}t | |}t| }|g  || tt|jdksFtdd |D dgt| ksft|jjd	 d
dfg|_dd |D ddddgkst|jjd ddfg|_dd |D ddddgkstd S )NThisisalionr   c             S   s   g | ]
}|j qS  )ent_iob_).0wr   r   P/home/dcms/DCMS/lib/python3.7/site-packages/spacy/tests/doc/test_add_entities.py
<listcomp>   s    z6test_doc_add_entities_set_ents_iob.<locals>.<listcomp>OZANIMAL      c             S   s   g | ]
}|j qS r   )r   )r   r   r   r   r   r      s    BZWORDr   c             S   s   g | ]
}|j qS r   )r   )r   r   r   r   r   r      s    I)	r   r   begin_traininglenlistentsAssertionErrorZvocabstrings)en_vocabtextdocnerr   r   r   "test_doc_add_entities_set_ents_iob   s    

 r    c             C   s   ddddg}t | |}t| }|g  || dd |D dgt| ksPtt|j|_dd |D dgt| ks|td S )	Nr   r   r	   r
   c             S   s   g | ]
}|j qS r   )r   )r   tr   r   r   r   !   s    z#test_ents_reset.<locals>.<listcomp>r   c             S   s   g | ]
}|j qS r   )r   )r   r!   r   r   r   r   #   s    )r   r   r   r   r   r   r   )r   r   r   r   r   r   r   test_ents_reset   s    

 r"   c          	   C   sj   ddddg}t | |}t|dddd}|g|_t|dd	d
d}tt t|j|g |_W d Q R X d S )NZ	LouisianaZOfficeZofZConservationr   r   i  )label   i  )r   r   r   pytestZraises
ValueErrorr   )r   r   r   entityZ
new_entityr   r   r   test_add_overlapping_entities&   s    
r(   )
__future__r   Zspacy.pipeliner   Zspacy.tokensr   r%   utilr   r    r"   r(   r   r   r   r   <module>   s   