o
    tPfC                     @   sN   d Z ddlZddlZG dd dejZG dd dejZG dd dejZdS )	zDocumentation tests.
    Nc                   @   l   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd ZdS )Test_asStructuredTextc                 C      ddl m} ||S )Nr   )asStructuredText)zope.interface.documentr   )selfifacer    r	   c/var/www/html/humari/django-venv/lib/python3.10/site-packages/zope/interface/tests/test_document.py_callFUT      zTest_asStructuredText._callFUTc                 C   @   ddl m} dg d}G dd d|}| | || d S )Nr   	Interface

)INoDocstring Attributes:	 Methods: c                   @      e Zd ZdS )zNTest_asStructuredText.test_asStructuredText_no_docstring.<locals>.INoDocstringN__name__
__module____qualname__r	   r	   r	   r
   r   "       r   zope.interfacer   joinassertEqualr   r   r   EXPECTEDr   r	   r	   r
   "test_asStructuredText_no_docstring      z8Test_asStructuredText.test_asStructuredText_no_docstringc                 C   r   )Nr   r   r   )IEmpty This is an empty interface.r   r   r   c                   @      e Zd ZdZdS )zPTest_asStructuredText.test_asStructuredText_empty_with_docstring.<locals>.IEmpty) This is an empty interface.
            Nr   r   r   __doc__r	   r	   r	   r
   r#   /       r#   r   r   r   r    r#   r	   r	   r
   *test_asStructuredText_empty_with_docstring&      z@Test_asStructuredText.test_asStructuredText_empty_with_docstringc                 C   sr   ddl m} tjdk rdnd}ddddd	| d
| dddddddg}G dd d|}| | || d S )Nr   r                     r   
r#   r$    D It can be used to annotate any class or object, because it promises	 nothing.r   r   c                   @   r%   )zZTest_asStructuredText.test_asStructuredText_empty_with_multiline_docstring.<locals>.IEmpty This is an empty interface.

            It can be used to annotate any class or object, because it promises
            nothing.
            Nr'   r	   r	   r	   r
   r#   I   r)   r   r   sysversion_infor   r   r   r   r   indentr    r#   r	   r	   r
   4test_asStructuredText_empty_with_multiline_docstring4   $   zJTest_asStructuredText.test_asStructuredText_empty_with_multiline_docstringc                    P   ddl m  ddl m} dg d}G  fddd|}| | || d S )Nr   	Attributer   r   )IHasAttribute! This interface has an attribute.r   z"  an_attribute -- no documentationr   r   c                          e Zd ZdZ dZdS )z^Test_asStructuredText.test_asStructuredText_with_attribute_no_docstring.<locals>.IHasAttribute. This interface has an attribute.
            an_attributeNr   r   r   r(   rD   r	   r>   r	   r
   r@   \       r@   r   r?   r   r   r   r   r   r   r    r@   r	   r>   r
   1test_asStructuredText_with_attribute_no_docstringQ   
   zGTest_asStructuredText.test_asStructuredText_with_attribute_no_docstringc                    r=   )Nr   r>   r   r   )r@   rA   r   z/  an_attribute -- This attribute is documented.r   r   c                          e Zd ZdZ ddZdS )z`Test_asStructuredText.test_asStructuredText_with_attribute_with_docstring.<locals>.IHasAttributerC   rD   This attribute is documented.NrE   r	   r>   r	   r
   r@   n   
    r@   rG   rH   r	   r>   r
   3test_asStructuredText_with_attribute_with_docstringc   
   zITest_asStructuredText.test_asStructuredText_with_attribute_with_docstringc                 C   r   )Nr   r   r   )
IHasMethod This interface has a method.r   r   z  aMethod() -- no documentationr   c                   @      e Zd ZdZdd ZdS )z`Test_asStructuredText.test_asStructuredText_with_method_no_args_no_docstring.<locals>.IHasMethod* This interface has a method.
            c                   S      d S Nr	   r	   r	   r	   r
   aMethod      zhTest_asStructuredText.test_asStructuredText_with_method_no_args_no_docstring.<locals>.IHasMethod.aMethodNr   r   r   r(   rV   r	   r	   r	   r
   rP      rF   rP   r   r   r   r    rP   r	   r	   r
   6test_asStructuredText_with_method_no_args_no_docstringv      zLTest_asStructuredText.test_asStructuredText_with_method_no_args_no_docstringc                 C   r   )Nr   r   r   )rP   rQ   r   r   z,  aMethod(first, second) -- no documentationr   c                   @   rR   )zhTest_asStructuredText.test_asStructuredText_with_method_positional_args_no_docstring.<locals>.IHasMethodrS   c                 S   rT   rU   r	   firstsecondr	   r	   r
   rV      rW   zpTest_asStructuredText.test_asStructuredText_with_method_positional_args_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP      rF   rP   r   rY   r	   r	   r
   >test_asStructuredText_with_method_positional_args_no_docstring   r[   zTTest_asStructuredText.test_asStructuredText_with_method_positional_args_no_docstringc                 C   r   )Nr   r   r   )rP   rQ   r   r   z3  aMethod(first, second, *rest) -- no documentationr   c                   @   rR   )zaTest_asStructuredText.test_asStructuredText_with_method_starargs_no_docstring.<locals>.IHasMethodrS   c                 W   rT   rU   r	   r]   r^   restr	   r	   r
   rV      rW   ziTest_asStructuredText.test_asStructuredText_with_method_starargs_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP      rF   rP   r   rY   r	   r	   r
   7test_asStructuredText_with_method_starargs_no_docstring   r[   zMTest_asStructuredText.test_asStructuredText_with_method_starargs_no_docstringc                 C   r   )Nr   r   r   )rP   rQ   r   r   z2  aMethod(first, second, **kw) -- no documentationr   c                   @   rR   )z_Test_asStructuredText.test_asStructuredText_with_method_kwargs_no_docstring.<locals>.IHasMethodrS   c                 [   rT   rU   r	   r]   r^   kwr	   r	   r
   rV      rW   zgTest_asStructuredText.test_asStructuredText_with_method_kwargs_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP      rF   rP   r   rY   r	   r	   r
   5test_asStructuredText_with_method_kwargs_no_docstring   r[   zKTest_asStructuredText.test_asStructuredText_with_method_kwargs_no_docstringc                 C   r   )Nr   r   r   )rP   rQ   r   r   z)  aMethod() -- This method is documented.r   c                   @   rR   )zZTest_asStructuredText.test_asStructuredText_with_method_with_docstring.<locals>.IHasMethodrS   c                   S      dS z+This method is documented.
                Nr	   r	   r	   r	   r
   rV          zbTest_asStructuredText.test_asStructuredText_with_method_with_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP      rF   rP   r   rY   r	   r	   r
   0test_asStructuredText_with_method_with_docstring      zFTest_asStructuredText.test_asStructuredText_with_method_with_docstringc                    `   ddl m  ddl m} dg d}G dd d|}G  fdd	d	|}| | || d S )
Nr   r>   r   r   )IDerived IDerived doc This interface extends:z	  o IBaser   z  attr1 -- no documentationz  attr2 -- attr2 docr   z  method3() -- method3 docz  method4() -- no documentationz  method5() -- method5 docr   c                   @      e Zd Zdd Zdd ZdS )zOTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IBasec                   S   rf   	docstringNr	   r	   r	   r	   r
   method1   rh   zWTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IBase.method1c                   S   rf   rp   r	   r	   r	   r	   r
   method2   rh   zWTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IBase.method2Nr   r   r   rr   rs   r	   r	   r	   r
   IBase       ru   c                       :   e Zd ZdZ dZ ddZdd Zdd Zd	d
 ZdS )zRTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IDerivedIDerived docattr1attr2	attr2 docc                   S   rf   zmethod3 docNr	   r	   r	   r	   r
   method3   rh   zZTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IDerived.method3c                   S   rT   rU   r	   r	   r	   r	   r
   method4   rW   zZTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IDerived.method4c                   S   rf   zmethod5 docNr	   r	   r	   r	   r
   method5   rh   zZTest_asStructuredText.test_asStructuredText_derived_ignores_base.<locals>.IDerived.method5N	r   r   r   r(   ry   rz   r}   r~   r   r	   r>   r	   r
   rl          
rl   rG   r   r   r    ru   rl   r	   r>   r
   *test_asStructuredText_derived_ignores_base      z@Test_asStructuredText.test_asStructuredText_derived_ignores_baseN)r   r   r   r   r!   r+   r;   rI   rN   rZ   r_   rb   re   ri   r   r	   r	   r	   r
   r          r   c                   @   r   )Test_asReStructuredTextc                 C   r   )Nr   )asReStructuredText)r   r   )r   r   r   r	   r	   r
   r      r   z Test_asReStructuredText._callFUTc                 C   r   )Nr   r   r   )z``INoDocstring``r   r   r   c                   @   r   )zRTest_asReStructuredText.test_asReStructuredText_no_docstring.<locals>.INoDocstringNr   r	   r	   r	   r
   r     r   r   r   r   r	   r	   r
   $test_asReStructuredText_no_docstring   r"   z<Test_asReStructuredText.test_asReStructuredText_no_docstringc                 C   r   )Nr   r   r   )
``IEmpty``r$   r   r   r   c                   @   r%   )zTTest_asReStructuredText.test_asReStructuredText_empty_with_docstring.<locals>.IEmptyr&   Nr'   r	   r	   r	   r
   r#     r)   r#   r   r*   r	   r	   r
   ,test_asReStructuredText_empty_with_docstring
  r,   zDTest_asReStructuredText.test_asReStructuredText_empty_with_docstringc                 C   sr   ddl m} tjdk rdnd}ddddd	| d
| dddddddg}G dd d|}| | || d S )Nr   r   r-   r0   r   r1   r   r$   r2   r3   r4   r   r   c                   @   r%   )z^Test_asReStructuredText.test_asReStructuredText_empty_with_multiline_docstring.<locals>.IEmptyr5   Nr'   r	   r	   r	   r
   r#   -  r)   r#   r6   r9   r	   r	   r
   6test_asReStructuredText_empty_with_multiline_docstring  r<   zNTest_asReStructuredText.test_asReStructuredText_empty_with_multiline_docstringc                    r=   )Nr   r>   r   r   )``IHasAttribute``rA   r   z&  ``an_attribute`` -- no documentationr   r   c                       rB   )zbTest_asReStructuredText.test_asReStructuredText_with_attribute_no_docstring.<locals>.IHasAttributerC   rD   NrE   r	   r>   r	   r
   r@   @  rF   r@   rG   rH   r	   r>   r
   3test_asReStructuredText_with_attribute_no_docstring5  rJ   zKTest_asReStructuredText.test_asReStructuredText_with_attribute_no_docstringc                    r=   )Nr   r>   r   r   )r   rA   r   z3  ``an_attribute`` -- This attribute is documented.r   r   c                       rK   )zdTest_asReStructuredText.test_asReStructuredText_with_attribute_with_docstring.<locals>.IHasAttributerC   rD   rL   NrE   r	   r>   r	   r
   r@   R  rM   r@   rG   rH   r	   r>   r
   5test_asReStructuredText_with_attribute_with_docstringG  rO   zMTest_asReStructuredText.test_asReStructuredText_with_attribute_with_docstringc                 C   r   )Nr   r   r   )``IHasMethod``rQ   r   r   z#  ``aMethod()`` -- no documentationr   c                   @   rR   )zdTest_asReStructuredText.test_asReStructuredText_with_method_no_args_no_docstring.<locals>.IHasMethodrS   c                   S   rT   rU   r	   r	   r	   r	   r
   rV   g  rW   zlTest_asReStructuredText.test_asReStructuredText_with_method_no_args_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP   d  rF   rP   r   rY   r	   r	   r
   8test_asReStructuredText_with_method_no_args_no_docstringZ  r[   zPTest_asReStructuredText.test_asReStructuredText_with_method_no_args_no_docstringc                 C   r   )Nr   r   r   )r   rQ   r   r   z0  ``aMethod(first, second)`` -- no documentationr   c                   @   rR   )zlTest_asReStructuredText.test_asReStructuredText_with_method_positional_args_no_docstring.<locals>.IHasMethodrS   c                 S   rT   rU   r	   r\   r	   r	   r
   rV   y  rW   ztTest_asReStructuredText.test_asReStructuredText_with_method_positional_args_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP   v  rF   rP   r   rY   r	   r	   r
   @test_asReStructuredText_with_method_positional_args_no_docstringl  r[   zXTest_asReStructuredText.test_asReStructuredText_with_method_positional_args_no_docstringc                 C   r   )Nr   r   r   )r   rQ   r   r   z7  ``aMethod(first, second, *rest)`` -- no documentationr   c                   @   rR   )zeTest_asReStructuredText.test_asReStructuredText_with_method_starargs_no_docstring.<locals>.IHasMethodrS   c                 W   rT   rU   r	   r`   r	   r	   r
   rV     rW   zmTest_asReStructuredText.test_asReStructuredText_with_method_starargs_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP     rF   rP   r   rY   r	   r	   r
   9test_asReStructuredText_with_method_starargs_no_docstring~  r[   zQTest_asReStructuredText.test_asReStructuredText_with_method_starargs_no_docstringc                 C   r   )Nr   r   r   )r   rQ   r   r   z6  ``aMethod(first, second, **kw)`` -- no documentationr   c                   @   rR   )zcTest_asReStructuredText.test_asReStructuredText_with_method_kwargs_no_docstring.<locals>.IHasMethodrS   c                 [   rT   rU   r	   rc   r	   r	   r
   rV     rW   zkTest_asReStructuredText.test_asReStructuredText_with_method_kwargs_no_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP     rF   rP   r   rY   r	   r	   r
   7test_asReStructuredText_with_method_kwargs_no_docstring  r[   zOTest_asReStructuredText.test_asReStructuredText_with_method_kwargs_no_docstringc                 C   r   )Nr   r   r   )r   rQ   r   r   z-  ``aMethod()`` -- This method is documented.r   c                   @   rR   )z^Test_asReStructuredText.test_asReStructuredText_with_method_with_docstring.<locals>.IHasMethodrS   c                   S   rf   rg   r	   r	   r	   r	   r
   rV     rh   zfTest_asReStructuredText.test_asReStructuredText_with_method_with_docstring.<locals>.IHasMethod.aMethodNrX   r	   r	   r	   r
   rP     rF   rP   r   rY   r	   r	   r
   2test_asReStructuredText_with_method_with_docstring  rj   zJTest_asReStructuredText.test_asReStructuredText_with_method_with_docstringc                    rk   )
Nr   r>   r   r   )z``IDerived``rm   rn   z  o ``IBase``r   z  ``attr1`` -- no documentationz  ``attr2`` -- attr2 docr   z  ``method3()`` -- method3 docz#  ``method4()`` -- no documentationz  ``method5()`` -- method5 docr   c                   @   ro   )zSTest_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IBasec                   S   rT   rU   r	   r	   r	   r	   r
   rr     rW   z[Test_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IBase.method1c                   S   rT   rU   r	   r	   r	   r	   r
   rs     rW   z[Test_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IBase.method2Nrt   r	   r	   r	   r
   ru     rv   ru   c                       rw   )zVTest_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IDerivedrx   ry   rz   r{   c                   S   rf   r|   r	   r	   r	   r	   r
   r}     rh   z^Test_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IDerived.method3c                   S   rT   rU   r	   r	   r	   r	   r
   r~     rW   z^Test_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IDerived.method4c                   S   rf   r   r	   r	   r	   r	   r
   r     rh   z^Test_asReStructuredText.test_asReStructuredText_derived_ignores_base.<locals>.IDerived.method5Nr   r	   r>   r	   r
   rl     r   rl   rG   r   r	   r>   r
   ,test_asReStructuredText_derived_ignores_base  r   zDTest_asReStructuredText.test_asReStructuredText_derived_ignores_baseN)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	   r	   r	   r
   r      r   r   c                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )Test__justify_and_indentc                 K   s   ddl m} |||fi |S )Nr   )_justify_and_indent)r   r   )r   textlevelrd   r   r	   r	   r
   r     s   z!Test__justify_and_indent._callFUTc                 C   s*   ddg}d |}| | |d| d S )NThree blind miceSee how they runr1   r   r   r   r   r   LINESr   r	   r	   r
   test_simple_level_0  s   
z,Test__justify_and_indent.test_simple_level_0c                 C   :   ddg}d |}| | |dd dd |D  d S )Nr   r   r1      c                 S      g | ]}d | qS r2   r	   .0liner	   r	   r
   
<listcomp>      z@Test__justify_and_indent.test_simple_level_1.<locals>.<listcomp>r   r   r	   r	   r
   test_simple_level_1  
   
z,Test__justify_and_indent.test_simple_level_1c                 C   r   )Nr   r   r1   r   c                 S   r   r   r	   r   r	   r	   r
   r     r   z@Test__justify_and_indent.test_simple_level_2.<locals>.<listcomp>r   r   r	   r	   r
   test_simple_level_2  r   z,Test__justify_and_indent.test_simple_level_2c                 C   s:   ddg}d |}| | |dd dd |D  d S )Nr   r   z
r   r1   c                 S   r   r   r	   r   r	   r	   r
   r     r   z?Test__justify_and_indent.test_simple_w_CRLF.<locals>.<listcomp>r   r   r	   r	   r
   test_simple_w_CRLF  r   z+Test__justify_and_indent.test_simple_w_CRLFc                 C   s&   d}d}|  | j|dddd| d S )NzTThis is a piece of text longer than 15 characters, 
and split across multiple lines.z_  This is a piece
  of text longer
  than 15 characters,
  and split across
  multiple lines.
 r      )mungewidth)r   r   )r   TEXTr    r	   r	   r
   test_with_munge  s   z(Test__justify_and_indent.test_with_mungeN)	r   r   r   r   r   r   r   r   r   r	   r	   r	   r
   r     s    r   )r(   r7   unittestTestCaser   r   r   r	   r	   r	   r
   <module>   s    e e