3
d                 @   sT   d dl Z d dlZd dlZd dlmZ ejeZG dd dejZ	G dd de	Z
dS )    N)ProvDocumentc               @   s   e Zd ZdddZdS )DocumentBaseTestCaseNc             C   s   d S )N )selfprov_docmsgr   r   2/tmp/pip-build-7vycvbft/prov/prov/tests/utility.pydo_tests   s    zDocumentBaseTestCase.do_tests)N)__name__
__module____qualname__r	   r   r   r   r   r      s   r   c               @   s(   e Zd ZdZdZdddZdddZdS )	RoundTripTestCasezA serializer test should subclass this class and set the class property
    FORMAT to the correct value (e.g. 'json', 'xml', 'rdf').
    Nc             C   s   | j || d S )N)assertRoundTripEquivalence)r   r   r   r   r   r   r	      s    zRoundTripTestCase.do_testsc             C   s   | j d krd S tj |}|j|| j dd |jdd tj|| j d}|jdd d| j |j jdf }|r|dj	||fn|}| j
||| W d Q R X d S )N   )Zdestinationformatindentr   )sourcer   z'%s' serialization content:
%szutf-8
)FORMATioBytesIO	serializeseekr   ZdeserializereaddecodejoinZassertEqual)r   r   r   streamZprov_doc_newZ	msg_extrar   r   r   r      s    

z,RoundTripTestCase.assertRoundTripEquivalence)N)N)r
   r   r   __doc__r   r	   r   r   r   r   r   r      s   
r   )r   loggingZunittestZ
prov.modelr   	getLoggerr
   loggerZTestCaser   r   r   r   r   r   <module>   s   
