
    9bh                         d dl Z d dlZd dlmZ  ej                  d      Z G d dej                        Zedk(  r ej                          yy)    N)import_helper	_testcapic                   <    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
y	)
Testsc                 h   t         j                  }d } G d d      }| j                   ||      d       | j                   ||j                        d       | j                   | |       j                        d       | j                   |t              d       | j                   ||      d       y )Nc                       y N r
       B/opt/python-3.12.12/usr/lib/python3.12/test/test_capi/test_eval.pyfunction_examplez7Tests.test_eval_get_func_name.<locals>.function_example       r   c                       e Zd Zd Zy)(Tests.test_eval_get_func_name.<locals>.Ac                      y r	   r
   selfs    r   method_examplez7Tests.test_eval_get_func_name.<locals>.A.method_example       cr   N__name__
__module____qualname__r   r
   r   r   Ar          )r   r   r   r   sumtype)r   eval_get_func_nameassertEqualr   r   )r   r   r   r   s       r   test_eval_get_func_namezTests.test_eval_get_func_name	   s    &99#	* 	* 	+,<=+	-+A,<,<=)	++AC,>,>?)	++C0%8+A.7r   c                 h   t         j                  }d } G d d      }| j                   ||      d       | j                   ||j                        d       | j                   | |       j                        d       | j                   |t              d       | j                   ||      d       y )Nc                       y r	   r
   r
   r   r   r   z7Tests.test_eval_get_func_desc.<locals>.function_example   r   r   c                       e Zd Zd Zy)(Tests.test_eval_get_func_desc.<locals>.Ac                      y r	   r
   r   s    r   r   z7Tests.test_eval_get_func_desc.<locals>.A.method_example    r   r   Nr   r
   r   r   r   r$      r   r   r   z()z object)r   eval_get_func_descr   r   r   )r   r&   r   r   s       r   test_eval_get_func_desczTests.test_eval_get_func_desc   s    &99#	* 	* 	+,<=	+A,<,<=	+AC,>,>?	+C0$7+A.	:r   c                     d}| j                  t        j                         | dd       d}| j                  t        j                         | ddd       y )N   )r   x   r   r*   y)r   r   eval_getlocalsr,   s      r   test_eval_getlocalszTests.test_eval_getlocals+   sY    113	 113	r   c                 \    | j                  t        j                         t                      y r	   )r   r   eval_getglobalsglobalsr   s    r   test_eval_getglobalszTests.test_eval_getglobals8   s     224 	$r   c                 b    | j                  t        j                         t               d          y )N__builtins__)r   r   eval_getbuiltinsr2   r   s    r   test_eval_getbuiltinszTests.test_eval_getbuiltins=   s%    335 >2	4r   c                 p    | j                  t        j                         t        j                                y r	   )r   r   eval_getframesys	_getframer   s    r   test_eval_getframezTests.test_eval_getframeB   s$    002	*r   c                 p    | j                  t        j                         t        j                                y r	   )r   r   eval_get_recursion_limitr:   getrecursionlimitr   s    r   test_eval_get_recursion_limitz#Tests.test_eval_get_recursion_limitG   s'    ;;=..0	2r   c                    t        j                         }	 |dz   }t        j                  |       | j	                  t        j                         |       t        j
                  |       y # t        j
                  |       w xY w)N{   )r:   r?   r   eval_set_recursion_limitr   setrecursionlimit)r   	old_limitlimits      r   test_eval_set_recursion_limitz#Tests.test_eval_set_recursion_limitL   sb    ))+		-OE..u5S224e<!!),C!!),s   >A* *BN)r   r   r   r    r'   r/   r3   r7   r<   r@   rG   r
   r   r   r   r      s*    8";"$
4
*
2
-r   r   __main__)
r:   unittesttest.supportr   import_moduler   TestCaser   r   mainr
   r   r   <module>rN      sO    
  &'M''4	L-H L-^ zHMMO r   