
    |h                         d Z ddlZddlmZ ddlmZ ddlmZ  G d dej                        Ze	dk(  r ej                          yy)	z"Tests for the inspectutils module.    N)inspectutils)test_components)	testutilsc                   T    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zy)InspectUtilsTestc                    t        j                  t        j                        }| j	                  |j
                  g d       | j	                  |j                  d       | j	                  |j                  d       | j	                  |j                  d       | j	                  |j                  g        | j	                  |j                  i        | j	                  |j                  t        t        d       y )Narg1arg2arg3arg4
      arg5arg6)r   r   )r   GetFullArgSpectcidentityassertEqualargsdefaultsvarargsvarkw
kwonlyargskwonlydefaultsannotationsintselfspecs     U/var/www/html/test/engine/venv/lib/python3.12/site-packages/fire/inspectutils_test.pytestGetFullArgSpecz#InspectUtilsTest.testGetFullArgSpec   s    &&r{{3DTYY @AT]]H-T\\6*TZZ(T__b)T(("-T%%S'AB    c                    t        j                  t        j                  j                        }| j                  |j                  g d       | j                  |j                  d       | j                  |j                  d       | j                  |j                  d       | j                  |j                  g d       | j                  |j                  ddd       | j                  |j                  t        t        t        t        d	       y )
Nr	   r   r   arg10)r   arg7arg8arg9   (   )r(   r)   )r   r   r'   r)   )r   r   r   py3r   r   r   r   r   r   r   r   r   r   r   s     r"   testGetFullArgSpecPy3z&InspectUtilsTest.testGetFullArgSpecPy3$   s    &&rvv7DTYY @AT]]H-T\\6*TZZ)T__&FGT((2r*BCT%%!3SIKr$   c                 Z   t        j                  dj                        }| j                  |j                  g        | j                  |j
                  d       | j                  |j                  g        | j                  |j                  i        | j                  |j                  i        y )Ntest )	r   r   upperr   r   r   r   r   r   r   s     r"   testGetFullArgSpecFromBuiltinz.InspectUtilsTest.testGetFullArgSpecFromBuiltin/   s~    &&v||4DTYY#T]]B'T__b)T(("-T%%r*r$   c                    t        j                  t        j                        }| j	                  |j
                  g        | j	                  |j                  d       | j	                  |j                  d        | j	                  |j                  d        | j	                  |j                  g        | j	                  |j                  i        | j	                  |j                  i        y Nr0   )r   r   r   
NoDefaultsr   r   r   r   r   r   r   r   r   s     r"   !testGetFullArgSpecFromSlotWrapperz2InspectUtilsTest.testGetFullArgSpecFromSlotWrapper7   s    &&r}}5DTYY#T]]B'T\\4(TZZ&T__b)T(("-T%%r*r$   c                    t        j                  t        j                        }| j	                  |j
                  ddg       | j	                  |j                  d       | j	                  |j                  d        | j	                  |j                  d        | j	                  |j                  g        | j	                  |j                  i        | j	                  |j                  i        y Nxyr0   )r   r   r   NamedTuplePointr   r   r   r   r   r   r   r   r   s     r"    testGetFullArgSpecFromNamedTuplez1InspectUtilsTest.testGetFullArgSpecFromNamedTupleA   s    &&r'9'9:DTYYc
+T]]B'T\\4(TZZ&T__b)T(("-T%%r*r$   c                    t        j                  t        j                        }| j	                  |j
                  ddg       | j	                  |j                  d       | j	                  |j                  d        | j	                  |j                  d        | j	                  |j                  g        | j	                  |j                  i        | j	                  |j                  i        y r8   )r   r   r   SubPointr   r   r   r   r   r   r   r   r   s     r"   (testGetFullArgSpecFromNamedTupleSubclassz9InspectUtilsTest.testGetFullArgSpecFromNamedTupleSubclassK   s    &&r{{3DTYYc
+T]]B'T\\4(TZZ&T__b)T(("-T%%r*r$   c                    t        j                  t        j                        }| j	                  |j
                  g        | j	                  |j                  d       | j	                  |j                  d        | j	                  |j                  d        | j	                  |j                  g        | j	                  |j                  i        | j	                  |j                  i        y r4   )r   r   r   OldStyleEmptyr   r   r   r   r   r   r   r   r   s     r"   !testGetFullArgSpecFromClassNoInitz2InspectUtilsTest.testGetFullArgSpecFromClassNoInitU   s    &&r'7'78DTYY#T]]B'T\\4(TZZ&T__b)T(("-T%%r*r$   c                    t        j                  t        j                         j                        }| j                  |j                  dg       | j                  |j                  d       | j                  |j                  d        | j                  |j                  d        | j                  |j                  g        | j                  |j                  i        | j                  |j                  i        y )Ncountr0   )r   r   r   r5   doubler   r   r   r   r   r   r   r   r   s     r"   testGetFullArgSpecFromMethodz-InspectUtilsTest.testGetFullArgSpecFromMethod_   s    &&r}}'='=>DTYY	*T]]B'T\\4(TZZ&T__b)T(("-T%%r*r$   c                 6   t        j                  d      }| j                  |j                  d      d       | j                  |j                  d      d        | j                  |j                  d      d        | j                  |j                  d      d       y )N   	type_namer   filelinestring_form1)r   Infor   getr    infos     r"   testInfoOnezInspectUtilsTest.testInfoOnei   sv    QDTXXk*E2TXXf%t,TXXf%t,TXXm,c2r$   c                 L   t        j                  t        j                        }| j	                  |j                  d      d       | j                  t        j                  j                  dd      |j                  d             | j                  |j                  d      d       y NrI   typefireztest_components.pyrJ   rK   r   )r   rN   r   r5   r   rO   assertInospathjoinassertGreaterrP   s     r"   testInfoClasszInspectUtilsTest.testInfoClassp   so    R]]+DTXXk*F3MM"'',,v';<dhhv>NOtxx'+r$   c                 L   t        j                  t        j                        }| j	                  |j                  d      d       | j                  t        j                  j                  dd      |j                  d             | j                  |j                  d      d       y rT   )r   rN   r   rA   r   rO   rW   rX   rY   rZ   r[   rP   s     r"   testInfoClassNoInitz$InspectUtilsTest.testInfoClassNoInitv   sq    R--.DTXXk*F3MM"'',,v';<dhhv>NOtxx'+r$   c                 v    t        j                  t        j                        }| j	                  |d   d d       y )N	docstringzDocstring should be None)r   rN   r   r5   r   rP   s     r"   testInfoNoDocstringz$InspectUtilsTest.testInfoNoDocstring|   s.    R]]+DT+&.HIr$   N)__name__
__module____qualname__r#   r-   r2   r6   r<   r?   rB   rF   rR   r\   r^   ra   r0   r$   r"   r   r      sA    C	K++++++3,,Jr$   r   __main__)__doc__rX   rV   r   r   r   r   BaseTestCaser   rb   mainr0   r$   r"   <module>ri      sH    ) 	  & fJy-- fJR z).. r$   