+
    P4i~  ã                  ó�  € R t ^ RIHt ^ RIHtHt ^ RIHt ^ RIH	t	 ^ RI
Ht ^ RIHtHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHtHt ^ R	IHt ^ RIt]'       d   ^ RIt^ R
IHt ^ RIt]P>                  ! R4      t R t!] ! R R4      4       t"] ! R R4      4       t#] ! R R4      4       t$]! RR7       ! R R4      4       t%R t&R# )z=
Python representations of the JSON Schema Test Suite tests.
)Úannotations)ÚIterableÚMapping)Úsuppress)Úpartial)ÚPath)ÚTYPE_CHECKINGÚAnyN)ÚfieldÚfrozen)ÚRegistry)Ú_VALIDATORSz[\W\- ]+c                 ó  € \         P                  P                  R 4      p V e   \        V 4      # \        \        P
                  4      P                  P                  R,          p V P                  4       '       g   \        R4      hV # )ÚJSON_SCHEMA_TEST_SUITEÚjsonzŸCan't find the JSON-Schema-Test-Suite directory. Set the 'JSON_SCHEMA_TEST_SUITE' environment variable or run the tests from alongside a checkout of the suite.)	ÚosÚenvironÚgetr   Ú
jsonschemaÚ__file__ÚparentÚis_dirÚ
ValueError)Úroots    Ú9/usr/lib/python3/dist-packages/jsonschema/tests/_suite.pyÚ_find_suiter      sj   € Ü�:‰:�>‰>Ð2Ó3€DØÒÜ�D‹zÐä”
×#Ñ#Ó$×+Ñ+×2Ñ2°VÕ;€DØ�;‰;�=Š=Üð ó
ð 	
ð €Kó    c                  ón   € ] tR t^1t$ ]! ]R7      tR]R&   ]! RR7      tR]R&   R t	R	 R
 lt
R R ltRtR# )ÚSuite)Úfactoryr   Ú_rootF)Úinitú%referencing.jsonschema.SchemaRegistryÚ_remotesc           	     	óª  € V P                   P                  R R4      p\        P                  \	        V4      R.p\
        P                  ! V4      P                  R4      p\        P                  ! V4      pRpRp\        4       P                  V\        P                  P                  P                  VP!                  V4      R7      3V\        P                  P"                  P                  VP!                  V4      R7      3.4      P%                  VP'                  4       \        P                  P(                  R7      p\*        P-                  V RV4       R	# )
ÚbinÚjsonschema_suiteÚremotesúutf-8z?http://localhost:1234/locationIndependentIdentifierPre2019.jsonz>http://localhost:1234/locationIndependentIdentifierDraft4.json)Úcontents)Údefault_specificationr#   N)r    ÚjoinpathÚsysÚ
executableÚstrÚ
subprocessÚcheck_outputÚdecoder   Úloadsr   Úwith_resourcesÚreferencingr   ÚDRAFT7Úcreate_resourceÚpopÚDRAFT4Úwith_contentsÚitemsÚDRAFT202012ÚobjectÚ__setattr__)Úselfr&   Úargvr'   Ú	resourcesÚliÚli4Úregistrys   &       r   Ú__attrs_post_init__ÚSuite.__attrs_post_init__7   s'  € ØŸ:™:×.Ñ.¨uÐ6HÓIÐÜ—‘¤Ð$4Ó 5°yÐAˆÜ×)Ò)¨$Ó/×6Ñ6°wÓ?ˆä—J’J˜wÓ'ˆ	àNˆØNˆä“:×,Ñ,ð Ü×*Ñ*×1Ñ1×AÑAØ!*§¡¨rÓ!2ð Bó ðð Ü×*Ñ*×1Ñ1×AÑAØ!*§¡¨sÓ!3ð Bó ððó
÷ ‰-Ø�O‰OÓÜ"-×"8Ñ"8×"DÑ"Dð ó 
ð 	ô& 	×Ñ˜4 ¨XÖ6r   c               ó   € V ^8„  d   QhRR/# ©é   Úrunnerzpyperf.Runner© )Úformats   "r   Ú__annotate__ÚSuite.__annotate__V   ó   € ÷ ñ  ñ r   c                	óˆ   € \         P                  ! 4        F(  w  r#V P                  VR 7      P                  VVR7       K*  	  R# ))Úname)rI   Ú	ValidatorN)r   r:   ÚversionÚ	benchmark)r>   rI   rP   rQ   s   &&  r   rS   ÚSuite.benchmarkV   s;   € Ü*×0Ò0Ö2‰OˆDØ�L‰L˜dˆLÓ#×-Ñ-ØØ#ð .ö ó  3r   c               ó   € V ^8„  d   QhRR/# )rH   ÚreturnÚVersionrJ   )rK   s   "r   rL   rM   ]   s   € ÷ 
ñ 
˜wñ 
r   c                	ób   € \        VV P                  R ,          V,          V P                  R7      # )Útests)rP   Úpathr'   )rW   r    r#   ©r>   rP   s   &&r   rR   ÚSuite.version]   s*   € ÜØØ—‘˜gÕ%¨Õ,Ø—M‘Mô
ð 	
r   rJ   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r
   r   r    Ú__annotations__r#   rD   rS   rR   Ú__static_attributes__rJ   r   r   r   r   1   s7   ‡ ñ  Ô,€Eˆ4Ó,Ù6;ÀÔ6G€HÐ3ÓGò7õ>÷
ñ 
r   r   c                  ór   € ] tR t^et$ R]R&   R]R&   R]R&   R tR R	 ltR
 R ltR R ltR t	R R lt
RtR# )rW   r   Ú_pathr"   r#   r.   rP   c                	óX   € V P                  4        F  pVP                  ! R/ VB  K  	  R # ©NrJ   )ÚcasesrS   )r>   ÚkwargsÚcases   &, r   rS   ÚVersion.benchmarkm   s!   € Ø—J‘J–LˆDØ�NŠNÑ$˜VÔ$ó !r   c               ó   € V ^8„  d   QhRR/# ©rH   rV   úIterable[_Case]rJ   )rK   s   "r   rL   ÚVersion.__annotate__q   s   € ÷ ?ñ ?�ñ ?r   c                	óX   € V P                  V P                  P                  R 4      R7      # )z*.json©Úpaths©Ú	_cases_inrd   Úglob©r>   s   &r   rg   ÚVersion.casesq   s    € Ø�~‰~ D§J¡J§O¡O°HÓ$=ˆ~Ó>Ð>r   c               ó   € V ^8„  d   QhRR/# rl   rJ   )rK   s   "r   rL   rn   t   s   € ÷ Oñ O˜oñ Or   c                	óX   € V P                  V P                  P                  R 4      R7      # )zoptional/format/*.jsonrp   rr   ru   s   &r   Úformat_casesÚVersion.format_casest   s!   € Ø�~‰~ D§J¡J§O¡OÐ4LÓ$Mˆ~ÓNÐNr   c               ó    € V ^8„  d   QhRRRR/# )rH   rP   r.   rV   rm   rJ   )rK   s   "r   rL   rn   w   s   € ÷ Pñ P cð P¨oñ Pr   c                	ó^   € V P                  V P                  R ,          V R2,          .R7      # )Úoptionalz.jsonrp   )rs   rd   r[   s   &&r   Úoptional_cases_ofÚVersion.optional_cases_ofw   s*   € Ø�~‰~ T§Z¡Z°*Õ%<À$ÀÀu¸~Õ%MÐ$Nˆ~ÓOÐOr   c                	óž  a€ SP                  R RV P                  P                  4       P                  RR4      ,           4      pV3R lV 4        Uu/ uF  pVP                  VbK  	  pp\        V\        P                  3V4      p\        \        4      ;_uu_ 4        \        4       Vn        RRR4       V# u upi   + '       g   i     T# ; i)rP   ÚTestÚ-Ú c              3  ó€   <"  € T F3  pV F*  pVP                    F  pVP                  ! R/ SB x € K  	  K,  	  K5  	  R # 5irf   )rY   Úto_unittest_method)Ú.0Úgroupri   Útestrh   s   &   €r   Ú	<genexpr>Ú/Version.to_unittest_testcase.<locals>.<genexpr>~   sF   øé € ð á#�EÛ!�DØ ŸJœJ�Dð ×'Ò'Ñ1¨&Ö1ñ 'ñ 2á!ñ 2Û#ùs   ƒ;>N)r7   rP   ÚtitleÚreplacer]   ÚtypeÚunittestÚTestCaser   Ú	ExceptionÚ)_someone_save_us_the_module_of_the_callerr^   )r>   Úgroupsrh   rP   ÚmethodÚmethodsÚclss   &*l    r   Úto_unittest_testcaseÚVersion.to_unittest_testcasez   s¸   ø€ Ø�z‰z˜& &¨4¯9©9¯?©?Ó+<×+DÑ+DÀSÈ"Ó+MÕ"MÓNˆôá#ôó
ñ�ð �O‰O˜VÒ#ñð 	ð 
ô �4œ(×+Ñ+Ð-¨wÓ7ˆô
 ”i× Õ ÜFÓHˆCŒN÷ !ð ˆ
ùò#
÷ !Ö ð ˆ
ús   ÁB6ÂB;Â;C	c               ó    € V ^8„  d   QhRRRR/# )rH   rq   zIterable[Path]rV   rm   rJ   )rK   s   "r   rL   rn   �   s   € ÷ ñ ˜~ð °/ñ r   c           	   #  	óØ   "  € V F_  p\         P                  ! VP                  R R7      4       F2  p\        P	                  VV VP
                  V P                  R7      x € K4  	  Ka  	  R# 5i)r(   )Úencoding)rR   Úsubjectr'   N)r   r2   Ú	read_textÚ_CaseÚ	from_dictÚstemr#   )r>   rq   rZ   ri   s   &&  r   rs   ÚVersion._cases_in�   sX   é € ÛˆDÜŸ
š
 4§>¡>¸7 >Ó#CÖD�Ü—o‘oØØ Ø ŸI™IØ ŸM™Mð	 &ó ô ó Eó ùs   ‚A(A*rJ   N)r]   r^   r_   r`   ra   rS   rg   ry   r~   r–   rs   rb   rJ   r   r   rW   rW   e   s9   ‡ ð ƒKØ3Ó3à
ƒIò%õ?õOõPò÷*ñ r   rW   c                  ót   € ] tR t^št$ R]R&   R]R&   R]R&   R]R&   R]R	&   R
tR]R&   ]R 4       tR R ltRt	R
# )r�   rW   rR   r.   r›   ÚdescriptionúMapping[str, Any] | boolÚschemazlist[_Test]rY   Nú
str | NoneÚcommentc                	óà   € VP                  V4       VP                  R 4       Uu. uF4  p\        RRVR,          RVR,          RVR,          RVR,          RV/VB NK6  	  ppV ! RR V/VB # u upi )rY   rR   r›   Úcase_descriptionr¢   r¤   r'   rJ   )Úupdater7   Ú_Test)r•   Údatar'   rh   rˆ   rY   s   &&&,  r   rž   Ú_Case.from_dict¥   s¥   € à�‰�FÔð Ÿ(™( 7Ô+ó	
ñ ,�$ô ñ Ø˜Y�ðà˜Y�ðð "& mÕ!4ðð ˜H•~ð	ð
  ðð ôñ ,ð 	ð 	
ñ Ñ'˜Ð' $Ñ'Ð'ùò	
s   ¥:A+c               ó   € V ^8„  d   QhRR/# rG   rJ   )rK   s   "r   rL   Ú_Case.__annotate__´   rN   r   c           	     	óŒ   € V P                    F3  pVP                  VP                  \        VP                  3/ VB 4       K5  	  R # ©N)rY   Ú
bench_funcÚfully_qualified_namer   Úvalidate_ignoring_errors)r>   rI   rh   rˆ   s   &&, r   rS   Ú_Case.benchmark´   s:   € Ø—J”JˆDØ×ÑØ×)Ñ)Ü˜×5Ñ5Ñ@¸Ñ@öó r   rJ   )
r]   r^   r_   r`   ra   r¦   Úclassmethodrž   rS   rb   rJ   r   r   r�   r�   š   sG   ‡ ð ÓàƒLØÓØ$Ó$ØÓØ€GˆZÓàñ(ó ð(÷ñ r   r�   F)Úreprc                  ó¦   € ] tR t^¼t$ R]R&   R]R&   R]R&   R]R&   R]R&   R	]R
&   R]R&   R]R&   RtR]R&   R t]R 4       tR 3R lt	R t
R tRtR# )rª   rW   rR   r.   r›   r¨   r¢   r	   r«   r£   r¤   ÚboolÚvalidr"   r#   Nr¥   r¦   c                	ó"   € R V P                    R2# )z<Test Ú>)r²   ru   s   &r   Ú__repr__Ú_Test.__repr__Î   s   € Ø˜×1Ñ1Ð2°!Ð4Ð4r   c                	ó�   € R P                  V P                  P                  V P                  V P                  V P
                  .4      # )z > )ÚjoinrR   rP   r›   r¨   r¢   ru   s   &r   r²   Ú_Test.fully_qualified_nameÑ   s>   € à�z‰zà—‘×!Ñ!Ø—‘Ø×%Ñ%Ø× Ñ ð	ó
ð 	
r   c                	ó   € R # r°   rJ   )rˆ   s   &r   Ú<lambda>Ú_Test.<lambda>Ü   s   € ±4r   c           	     	óD  a a€ S P                   '       d	   VV 3R  lpMVV 3R lpRP                  R\        P                  RS P                  4      \        P                  RS P
                  4      \        P                  RS P                  4      .4      Vn        V! S 4      pVe&   \        P                  P                  RR4      R8w  d   V# \        P                  P                  RR4      R8w  d   \        P                  ! V4      # \        P                  ! V4      ! V4      # )c                ó,   <€ SP                   ! R/ SB  R # rf   )Úvalidate©Úthisrh   r>   s   &€€r   ÚfnÚ$_Test.to_unittest_method.<locals>.fnÞ   s   ø€ Ø—’Ñ' Ô'r   c                ó´   <€ V P                  \        P                  4      ;_uu_ 4        SP                  ! R/ SB  R R R 4       R #   + '       g   i     R # ; irf   )ÚassertRaisesr   ÚValidationErrorrÆ   rÇ   s   &€€r   rÉ   rÊ   á   s9   ø€ Ø×&Ñ&¤z×'AÑ'A×BÕBØ—M’MÑ+ FÒ+÷ C×B×BÒBús   ©AÁA	Ú_rˆ   ÚJSON_SCHEMA_DEBUGÚ0ÚJSON_SCHEMA_EXPECTED_FAILURES)r¹   r¿   Ú_DELIMITERSÚsubr›   r¨   r¢   r]   r   r   r   rŽ   ÚexpectedFailureÚskip)r>   rÕ   rh   rÉ   Úreasons   f&l  r   r…   Ú_Test.to_unittest_methodÜ   sÓ   ù€ Ø�:�:ˆ:÷(ö,ð —h‘hàÜ—‘  T§\¡\Ó2Ü—‘  T×%:Ñ%:Ó;Ü—‘  T×%5Ñ%5Ó6ð	ó
ˆŒñ �d“ˆØŠ>œRŸZ™ZŸ^™^Ð,?ÀÓEÈÔLØˆIÜ�Z‰Z�^‰^Ð;¸SÓAÀSÔHÜ×+Ò+¨BÓ/Ð/ä—=’= Ô(¨Ó,Ð,r   c                	ó  € VP                  V P                  4       V! RR V P                  RV P                  /VB p\        P                  P                  RR4      R8w  d   \        4        VP                  V P                  R7       R# )r¤   rC   rÏ   rÐ   )ÚinstanceNrJ   )	Úcheck_schemar¤   r#   r   r   r   Ú
breakpointrÆ   r«   )r>   rQ   rh   Ú	validators   &&, r   rÆ   Ú_Test.validateõ   st   € Ø×Ñ˜tŸ{™{Ô+Ùñ 
Ø—;‘;ð
à—]‘]ð
ð ñ
ˆ	ô
 �:‰:�>‰>Ð-¨sÓ3°sÔ:ÜŒLØ×Ñ D§I¡IÐÖ.r   c                	ó¦   € \        \        P                  4      ;_uu_ 4        V P                  VR 7       RRR4       R#   + '       g   i     R# ; i))rQ   N)r   r   rÍ   rÆ   )r>   rQ   s   &&r   r³   Ú_Test.validate_ignoring_errors   s0   € Ü”j×0Ñ0×1Õ1Ø�M‰M IˆMÔ.÷ 2×1×1Ò1ús	   ¢?¿A	rJ   )r]   r^   r_   r`   ra   r¦   r¼   Úpropertyr²   r…   rÆ   r³   rb   rJ   r   r   rª   rª   ¼   sh   ‡ ð ÓàƒLØÓØÓà
ƒIØ$Ó$àƒKà3Ó3à€GˆZÓò5ð ñ
ó ð
ñ '8ô -ò2	/ö/r   rª   c                 óP   € \         P                  ! ^4      P                  R,          # )ak  
The FQON of the module 2nd stack frames up from here.

This is intended to allow us to dynamically return test case classes that
are indistinguishable from being defined in the module that wants them.

Otherwise, trial will mis-print the FQON, and copy pasting it won't re-run
the class that really is running.

Save us all, this is all so so so so so terrible.
r]   )r,   Ú	_getframeÚ	f_globalsrJ   r   r   r‘   r‘     s   € ô �=Š=˜Ó×%Ñ% jÕ1Ð1r   )'Ú__doc__Ú
__future__r   Úcollections.abcr   r   Ú
contextlibr   Ú	functoolsr   Úpathlibr   Útypingr   r	   r   r   Úrer/   r,   rŽ   Úattrsr
   r   r4   r   Úreferencing.jsonschemaÚpyperfÚjsonschema.validatorsr   r   ÚcompilerÒ   r   r   rW   r�   rª   r‘   rJ   r   r   Ú<module>rñ      sÍ   ðñõ #ç -Ý Ý Ý ß %Û Û 	Û 	Û Û 
Û ç Ý  Û çÛå -Û à�jŠj˜Ó%€òð$ ÷0
ð 0
ó ð0
ðf ÷1ð 1ó ð1ðh ÷ð ó ðñB ˆUÔ÷E/ð E/ó ðE/ôP2r   