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