
    0hh{                     ~    S SK r S SKJr  S SKJr   " S S\ R
                  5      r\S:X  a  \ R                  " 5         gg)    N)support)
ann_modulec                   D    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
rg)
OpcodeTest   c                     Sn[        S5       H  nX-   nSS-       X-   nM     US:w  a  U R	                  S5        g g ! [         a     N0[         a     N;[         a     NFf = f!    NM= f! f = f)Nr   
      Z   ztry inside for)range	NameErrorZeroDivisionError	TypeErrorfail)selfnis      :/opt/python-3.13.8/usr/lib/python3.13/test/test_opcodes.pytest_try_inside_for_loop#OpcodeTest.test_try_inside_for_loop	   s{    rAA1A  7II&'  "d$*d"d"Ds'   >
A!
	A!	A! A!$A(+A-c                     [        [        R                  SS9 nUR                  5       nS S S 5        [	        W[        R                  S5      nU R                  UR                  S5        g ! , (       d  f       NF= f! [         a     g f = f)Nzutf-8)encodingexecr
   )openr   __file__readcompileassertEqualco_firstlinenoOSError)r   ftxtcos       r   test_setup_annotations_line&OpcodeTest.test_setup_annotations_line   so    	j))G<ffh =j116:BR..2 =<  		s'   A< A+?A< +
A95A< <
B	B	c                 P     " S S5      nU R                  UR                  0 5        g )Nc                       \ rS rSrSrg)4OpcodeTest.test_default_annotations_exist.<locals>.C$    N__name__
__module____qualname____firstlineno____static_attributes__r*       r   Cr(   $   s    r1   r2   )r   __annotations__r   r2   s     r   test_default_annotations_exist)OpcodeTest.test_default_annotations_exist#   s    **B/r1   c                 `    SSS00n[        SU5        U R                  US   [        SS.5        g )Nr3   r
      zx: int)xr
   )r   r   int)r   nss     r   test_use_existing_annotations(OpcodeTest.test_use_existing_annotations'   s5    !Q(Xr-.ca0@Ar1   c                    ^  [         R                  " [        5       S0 5         [        5       S	  " U 4S jS5      nS S S 5        g ! , (       d  f       g = f)Nr3   c                      > \ rS rSr% C Y R                  \5         \\S'   SSS5        Srg! , (       d  f       Srg= f)6OpcodeTest.test_do_not_recreate_annotations.<locals>.C0   r9   Nr*   )	r,   r-   r.   r/   r3   assertRaisesr   r:   r0   )r   s   r   r2   r@   0   s(    #&&y1F 2111s   -
=r2   )r   	swap_itemglobalsr4   s   ` r    test_do_not_recreate_annotations+OpcodeTest.test_do_not_recreate_annotations,   s:    wy*;R@	+,  A@@s   A
Ac                     " S S[         5      n " S SU5      n " S S[         5      n " S SU5      nU" 5       e!    O= fU" 5       e! U a     Of = fU" 5       e! U a     Of = fU" 5       e! U a    U R                  5          O   O= fU" 5       nU" 5       n Ue! U a  nU R                  Xv5         S nAOS nAff = fU" U5      e! U a  nU R                  Xt5         S nAg S nAff = f)	Nc                       \ rS rSrSrg)6OpcodeTest.test_raise_class_exceptions.<locals>.AClass7   r*   Nr+   r*   r1   r   AClassrI   7       r1   rK   c                       \ rS rSrSrg)6OpcodeTest.test_raise_class_exceptions.<locals>.BClass8   r*   Nr+   r*   r1   r   BClassrN   8   s    dr1   rP   c                       \ rS rSrSrg)6OpcodeTest.test_raise_class_exceptions.<locals>.CClass9   r*   Nr+   r*   r1   r   CClassrR   9   rL   r1   rT   c                       \ rS rSrS rSrg)6OpcodeTest.test_raise_class_exceptions.<locals>.DClass:   c                     g )Nr*   )r   ignores     r   __init__?OpcodeTest.test_raise_class_exceptions.<locals>.DClass.__init__;   s    r1   r*   N)r,   r-   r.   r/   rZ   r0   r*   r1   r   DClassrV   :   s    r1   r\   )	Exceptionr   r   assertIsInstance)r   rK   rP   rT   r\   abvs           r   test_raise_class_exceptions&OpcodeTest.test_raise_class_exceptions5   s    %Y%"V"%Y%	V 	 8^8^t8^t8^"tyy{HH	&G 	#Q""	# 1Io 	-!!!,,	-so   < A A
 
AAA A&%A&)A0 0BBB C %B;;C C C,C''C,c                 t   [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S5      n[        S5      nU R                  X5        [        S	5      n[        S
5      nU R                  X5        g )Nzlambda: Nonezlambda a: azlambda a=1: az	lambda: 0z	lambda: 1zlambda a: Nonezlambda b: Nonezlambda a=None: Nonezlambda a=0: Nonezlambda a=1: None)evalassertNotEqual)r   r!   gs      r   test_compare_function_objects(OpcodeTest.test_compare_function_objects`   s     A!A!!!A!A! !"A!!"!"A!!"&'A!#$#$A!r1   c                 V     " S S[         5      nU R                  U" 5       S-  S5        g )Nc                       \ rS rSrS rSrg)=OpcodeTest.test_modulo_of_string_subclasses.<locals>.MyString   c                     g)N*   r*   )r   values     r   __mod__EOpcodeTest.test_modulo_of_string_subclasses.<locals>.MyString.__mod__   s    r1   r*   N)r,   r-   r.   r/   rq   r0   r*   r1   r   MyStringrl      s    r1   rs      ro   )strr   )r   rs   s     r    test_modulo_of_string_subclasses+OpcodeTest.test_modulo_of_string_subclasses   s&    	s 	 	a,r1   r*   N)r,   r-   r.   r/   r   r$   r5   r<   rE   rb   rh   rv   r0   r*   r1   r   r   r      s-    ( 0B
)&V "D-r1   r   __main__)	unittesttestr   test.typinganndatar   TestCaser   r,   mainr*   r1   r   <module>r~      s=      )-"" -D zMMO r1   