U
    
W[  ã                   @   s>   d dl mZmZ d dlmZ d dlmZ G dd„ dejƒZdS )é    )Úabsolute_importÚdivision)Úunittest)Úrootsc                   @   s,   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	S )
Ú
RootsTestsc                 C   sb   t  ¡ }z| d¡ W n tk
r*   Y n
X |  ¡  z| ¡  W n tk
rT   Y n
X |  ¡  d S )Ns   blah)r   ZRequestÚwriteÚNotImplementedErrorÚfailZfinish)ÚselfZrequest© r   ú9/usr/lib/python3/dist-packages/twisted/test/test_roots.pyÚtestExceptions   s    zRootsTests.testExceptionsc                 C   s¢   t  ¡ }| dd¡ |  | d¡d¡ | d¡ |  | d¡d ¡ z| dd ¡ W n tk
rf   Y n
X |  ¡  z| 	dd ¡ W n tk
r”   Y n
X |  ¡  d S )NÚxÚtest)
r   Ú
CollectionÚ	putEntityÚassertEqualÚgetStaticEntityZ	delEntityZstoreEntityr   r	   ZremoveEntity)r
   Z
collectionr   r   r   ÚtestCollection   s&    ÿ
ÿzRootsTests.testCollectionc                 C   sB   G dd„ dt jƒ}|ƒ }|  | dd¡¡ |  t j|jdd¡ d S )Nc                   @   s   e Zd Zdd„ ZdS )z)RootsTests.testConstrained.<locals>.constc                 S   s   |dkS )Nr   r   )r
   Únamer   r   r   ÚnameConstraint1   s    z8RootsTests.testConstrained.<locals>.const.nameConstraintN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   Úconst0   s   r   r   r   Úy)r   ZConstrainedZassertIsNoner   ÚassertRaisesÚConstraintViolation)r
   r   Úcr   r   r   ÚtestConstrained/   s      ÿzRootsTests.testConstrainedc                 C   sD   t  ¡ }t|_| dd¡ |  | d¡d¡ |  t j|jdd¡ d S )NÚaé   r   r   )	r   Z
HomogenousÚintZ
entityTyper   r   r   r   r   )r
   Úhr   r   r   ÚtestHomogenous9   s      ÿzRootsTests.testHomogenousN)r   r   r   r   r   r   r$   r   r   r   r   r   	   s   
r   N)	Z
__future__r   r   Ztwisted.trialr   Ztwisted.pythonr   ZTestCaser   r   r   r   r   Ú<module>   s   