a zeu@s\ddlZddlZddlZddlmZGdddejZGdddejZe dkrXe dS)N)systemc@sHeZdZddZddZddZdZdd Zd d Zd d Z ddZ dS)ExceptionClassTestscCs|tttdSN) assertTrue issubclass Exceptionobjectselfr K/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_baseexception.pytest_builtins_new_style sz+ExceptionClassTests.test_builtins_new_stylecCs,dD]"}|t||d|jj|fqdS)N)args__str____repr__z%s missing %s attribute)rhasattr __class____name__)r Zinsattrr r r verify_instance_interfaces   z-ExceptionClassTests.verify_instance_interfacec Cszt}tjD]2}zt|tr,||jWqty@Yq0qt t j t j tdd}z|}ztt|}Wn ty|d|Yn0|||d|||g}d}|D]|}|}|d} || dd} d| vr>| d} | | dd } | d| d} t| kr>|| qd | vrb| d } | d| d} ztt| }Wn"ty|d | Yn0|| kr|||fn(|| kr|d d| kr|q|t||d dd |j|d djfz||Wnty(Yn0|| ||| |}| }qW|n |0|t|dd |dS)Nrzexception_hierarchy.txtzbase class %s not a built-inz %s not found-([z%s not a built-in exceptionz%s is not a subclass of %sz%s not accounted for) setbuiltins__dict__valuesr BaseExceptionaddr TypeErroropenospathjoinsplit__file__readlinerstripgetattrAttributeErrorfailZassertIndiscardrindexindexplatform_systemappendpoprrclose assertEquallen)r Zexc_setobject_Zinheritance_treeZsuperclass_namelast_excZ superclassesZ last_depthZexc_linedepthZexc_nameZ paren_indexZ platform_nameZ left_bracketexcr r r test_inheritancesx                   z$ExceptionClassTests.test_inheritance)lengthrstrreprc Cs6t|j|D]$\}\}}|||d|||fq dS)Nz %s: %s != %s)zipinterface_testsr5)r resultsZ test_nameZgivenZexpectedr r r interface_test_driverTs z)ExceptionClassTests.interface_test_drivercCsZd}t|}t|jdg|jd|gt|t|gt|d|jj|fgf}||dS)Nspamrrz%s(%r))rr6rr=r>rrrB)r argr:rAr r r test_interface_single_argYsz-ExceptionClassTests.test_interface_single_argcCsdd}tt|}t|}t|j|g|j|gt|t|gt||jjt|jgf}| |dS)N) tuplerangerr6rr=r>rrrB)r arg_countrr:rAr r r test_interface_multi_argbs z,ExceptionClassTests.test_interface_multi_argcCsJt}t|jdg|jtgt|dgt||jjdgf}||dS)Nrz()) rr6rrGr=r>rrrB)r r:rAr r r test_interface_no_argls  z)ExceptionClassTests.test_interface_no_argN) r __module__ __qualname__r rr;r@rBrErJrLr r r r rs=  rc@sDeZdZddZddZddZddZd d Zd d Zd dZ dS) UsageTestscCs4z|WntyYdS0|dt|dS)Nz!TypeError expected for raising %s)r"r-typer r7r r r raise_failsxs  zUsageTests.raise_failscCsz ztWn|yYn0Wn4ty2Yn$tyT|dt|Yn0z"ztWn|fytYn0Wn6tyYdSty|dt|Yn0dS)Nz#TypeError expected when catching %sz;TypeError expected when catching %s as specified in a tuple)rr"r-rPrQr r r catch_failss(       zUsageTests.catch_failscCs*Gdddt}||||dS)Nc@s eZdZdS)zDUsageTests.test_raise_new_style_non_exception..NewStyleClassNrrMrNr r r r NewStyleClasssrU)rrR)r rUr r r "test_raise_new_style_non_exceptions z-UsageTests.test_raise_new_style_non_exceptioncCs|ddSNrC)rRr r r r test_raise_stringszUsageTests.test_raise_stringcCs*Gdddt}||||dS)Nc@s eZdZdS)zAUsageTests.test_catch_non_BaseException..NonBaseExceptionNrTr r r r NonBaseExceptionsrY)rrS)r rYr r r test_catch_non_BaseExceptions z'UsageTests.test_catch_non_BaseExceptioncCs|tdSr)rSr r r r r !test_catch_BaseException_instancesz,UsageTests.test_catch_BaseException_instancecCs|ddSrW)rSr r r r test_catch_stringszUsageTests.test_catch_stringN) rrMrNrRrSrVrXrZr[r\r r r r rOts rO__main__) Zunittestrr$platformrr1ZTestCaserrOrmainr r r r s mB