Viewing File: /opt/alt/python38/lib/python3.8/site-packages/cerberus/tests/__pycache__/test_errors.cpython-38.pyc

U

!`V.@s~ddlmZmZddlmZejZddZddZddZd	d
Z	ddZ
d
dZddZddZ
ddZddZddZdS))	Validatorerrors)assert_failcCstdddiid}ddi|_|dtjd|jd}|jdksDt|jdksRt|j	d	ks`t|j
dksnt|jdks|t|jdkst|j
d
kst|jrt|jrtdS)Nfootypestringschema*rr)rr$)r)rdocument_errorrBAD_TYPE_errors
document_pathAssertionErrorschema_pathcoderule
constraintvalueinfois_group_erroris_logic_errorverrorrK/opt/alt/python38/lib/python3.8/site-packages/cerberus/tests/test_errors.py
test__error_1
s


r cCstddddiiid}dddii|_|dtjd|jd	}|jd
ksLt|jdksZt|j	dksht|j
dksvt|jddikst|jddikst|j
d
kst|jst|jrtdS)Nr	keysrulesrintegerr0barrrr)rr!)r)rr
rrZ	KEYSRULESrrrrrrrrrrrrrrr
test__error_2s

r&cCsdddddddg}tdd	|iid
}ddi|_|dtjddd
|jd}|jdks^t|jdkslt|j	dkszt|j
d	kst|j|kst|jdkst|j
dkst|jst|jstdS)Nrz
0x[0-9a-f]{2})rregexr"r)rminmaxroneofrZ0x100rrrr+)rrr,)rr
rrONEOFrrrrrrrrrrr)Zvalidsrrrrr
test__error_3*s 



r0cCsRdddddiiii}dddii}t|||d|j}|j}d|ksFtt|djdksdt|d|djdjtjjkstd|dkst|ddjdjdkst|	d	djdkstd|kstd|dkstd|ddkstd|dddkst|ddddjdjdks4t|	d
djdksNtdS)Nrr	r$rrr	validator)rr$)rr	r$r)
rdocument_error_treeschema_error_treerlenrrMAPPING_SCHEMArZfetch_errors_fromr2r	r
Zd_error_treeZs_error_treerrrtest_error_tree_from_subschema>s$&r9cCsddddiddigii}dgi}t|||d|j}|j}d|ksFt|djdjgks^td|ksjtd|dksztd|ddkstd|ddkstd|dddkst|ddddjdjgkstdS)	NrZanyofrrr"r1rr3)rr4r5rrrr8rrrtest_error_tree_from_anyofWsr:cCsdd}ddiddiddd	d
dgdid
}ddddddddgd
}t|||d|j}|j}t|jdksttt|jdkstt|djdkstt|djdkst|dddkstt|ddjdkstt|ddjdkstt|ddjdkstt|ddjdks2tt|ddjdksNtt|dddjdksntt|dddjdksttddtjjdddd}tddtj	jdd
dd}td dtjjdddd}td dtj	jdd
dd}	|ddjd|ks
t|ddjd|ks&t||ddj||	||dddj||||dddj||	t|d!jdkstt|d!djdkst|d!ddkstt|d!djd"kstt|d!jdkstt|d!djdks
tt|d!ddjdks*tt|d!dd#ddjdksRtt|d!dd#ddjdkszttd$d%tjjdd	dd}
td&d'tj
jd#d(dd}td&d)tj	jdd
dd}td&d*tj	jdd
dd}
|d!djd|
kst||d!dj|||
|d!dd#jd|ks.t|d!dd#ddjd|ksVt|d!dd#ddjd|
ks~t|d!ddjd|
kstdS)+NcWs(|D]}|D]}||krqqtqdS)N)r)rZref_errsZref_errrrrrassert_has_all_errorsjs
z6test_nested_error_paths.<locals>.assert_has_all_errorsrr"r'z[a-z]*)r!valuesrulesr	rz[a-z]*$z[A-Z]*)rZoneof_regex)a_dicta_listabcZaBcZabC)roner,threerr1r=r,r@r3rAr!r<)r=r@)r=r!rr)r=r,)r=r<r')r=rAr>r+)r>r)r>r	r)r>r,)r>r	r+Zirrelevant_at_this_point)r>r	r+rr')r>r	r+r3r')rr4r5r6rrValidationErrorrrZREGEX_MISMATCHr/)r2r;r	r
ZdetsetZref_err1Zref_err2Zref_err3Zref_err4Zref_err5Zref_err6Zref_err7Zref_err8rrrtest_nested_error_pathsgs
  

		 ((			
 ((rEcCsrGdddt}|}|jdddddidd	dii|_|ddd
iiddddgigi}|j|ksntdS)
Nc@seZdZddZdS)zEtest_path_resolution_for_registry_references.<locals>.CustomValidatorcSstddS)Nz
Failed coerce)	Exception)selfrrrr_normalize_coerce_customsz^test_path_resolution_for_registry_references.<locals>.CustomValidator._normalize_coerce_customN)__name__
__module____qualname__rHrrrrCustomValidatorsrLZschema1ZchildZbooleanZcustom)rZcoerceparentr	[zmust be of boolean typez.field 'child' cannot be coerced: Failed coerce)rZschema_registryaddr	Zvalidaterr)rLr2Zexpectedrrr,test_path_resolution_for_registry_referencess"
rPcCsdddddiidi}dddii}t|}||d|jks@td|jdksRtd|jks`td|jdksrttj|jdjksttj|jdksttj|jddksttj|jddksttj|jddddkst|jdtjjd	jtjjkstdS)
Nrdictr$rZnumber)rr	Zzeror	r)	rr4rr5rr7rchild_errorsr)r	r
r2rrrtest_queriess$rSc
CsXt}gi}}|tdgdgddddd|d|jdgi|||ksVt|tdgdgddd	d
d|d|jdjd	dgi|||kst|tddgdd
dgddddd|dd|jdjddgigi|||kst|tddgdd
dgddddd|ddd|jdjdd|||ksTtdS)NrcreadonlyTrr$Br)r3r,)rZzapr	rrrAr'u
^p[äe]ng$Zboomr)rBasicErrorHandlerappendrCupdatemessagesrformat)Zhandlerrrefrrrtest_basic_error_handler*sD
$$r^cCsddddiddigii}ddi}ddtj|dddf}|d	|d
dtjdf|d	|d
dtjdfg}t|||||d
|jdtjjddgdgdgikstdS)Nrr+rr"rgQk7@r-rrr3)rr)r3r)r2rrRr.zmust be of integer typezmust be of string type)zoneof definition 0zoneof definition 1)rr/rrrXr[r)r2r	r
rrRrrrtest_basic_error_of_errorsMs*
r_cCsDdddddiddigdi|_|ddgi|jddgiks@tdS)	NZ	test_listlistTrr)rZrequireditemsZtestz#length of list should be 2, it is 1)r	rrr1rrrtest_wrong_amount_of_itemscsrbN)ZcerberusrrZcerberus.testsrrCr r&r0r9r:rErPrSr^r_rbrrrr<module>s#
Back to Directory File Manager