File: //opt/alt/python35/lib/python3.5/site-packages/cerberus/tests/__pycache__/__init__.cpython-35.pyc
L�X� � @ s� d d l Z d d l m Z m Z m Z m Z d d l m Z i d d d d d � Z d d � Z d d � Z
d d d
d d d d d � Z d d d
d
d � Z f d d � Z
d d � Z d d � Z d d � Z d d d d � Z d S)� N)�errors� Validator�SchemaError�
DocumentError)�
sample_schemac
C s} | d k r t t � } | d k rM t j | � � } | | | � Wd QRXn, t j | d | �� } | | | � Wd QRXd S)z{ Tests whether a specific exception is raised. Optionally also tests
whether the exception message is as expected. N�message)r r �pytestZraises)� exception�document�schema� validator�msgZexcinfo� r �/__init__.py�assert_exception s r c G s t t | � d S)zS Tests whether a validation raises an exception due to a malformed
schema. N)r r )�argsr r r �assert_schema_error s r c G s t t | � d S)zU Tests whether a validation raises an exception due to a malformed
document. N)r r )r r r r �assert_document_error s r Fc C sf | d k r t t � } | | | | � } t | t � s? t � | sL t � | j } | d k oj | d k st t � | d k o� | d k s� t � | d k o� | d k s� t � | d k r+t | � d k s� t � t | | � | d k rbt | d j � t | � k st � t | d j | � n7 | d k rbt | � t | � k sUt � t | | � | S)z# Tests whether a validation fails. N� r )
r r �
isinstance�bool�AssertionError�_errors�len�assert_has_error�child_errors�assert_has_errors) r
r r �update�errorr r �resultZ
actual_errorsr r r �assert_fail# s&