o
    >h!                     @  sd   d dl mZ 	 d dlmZmZ d dlmZmZ d dlm	Z	 d dl
mZ edZG dd dejZd	S )
    )annotations)CallableIterable)Concatenate	ParamSpec)
formmethod)unittest_Pc                   @  s   e Zd Zd&ddZd'ddZd'ddZd'ddZd'ddZd'ddZd'ddZ	d'ddZ
d'ddZd'dd Zd'd!d"Zd'd#d$Zd%S )(ArgumentTestsargKlass3Callable[Concatenate[str, _P], formmethod.Argument]	testPairsIterable[tuple[object, object]]	badValuesIterable[object]args_P.argskwargs	_P.kwargsreturnNonec           	      O  sV   |dg|R i |}|D ]\}}|  ||| q|D ]}| tj|j| qd S )Nname)assertEqualcoerceassertRaisesr   
InputError)	selfr   r   r   r   r   argvalresult r    |/var/www/vedio/testing/chatpythonscript.ninositsolution.com/env/lib/python3.10/site-packages/twisted/test/test_formmethod.pyargTest   s   zArgumentTests.argTestc                 C  s   t d}| t|jd dS )zG
        Test that corce correctly raises NotImplementedError.
        r    N)r   Argumentr   NotImplementedErrorr   )r   r   r    r    r!   test_argument"   s   
zArgumentTests.test_argumentc                 C  sb   |  tjg dd | j tjddgddd | j tjddgd	d
d | j tjddgddd
d d S )N)ar(   )   1r#   r#   r    abr-   )abcr.   )2r#      )minr'   )223213345x   )max)addr6   )r2   xr1   r5   )r"   r   Stringr   r    r    r!   
testString)   s   
zArgumentTests.testStringc                 C  0   |  tjg dd | j tjddgddd d S )N)3r4   z-2r#   N)q2.3r=   r?   )rB   rC   r#   r   	allowNone)r"   r   Integerr:   r    r    r!   testInt9   s   
zArgumentTests.testIntc                 C  r<   )N)r>   g      @z-2.3gffffffrA   )rB   2.3zrH   rI   )rB   rJ   r#   r   rD   )r"   r   Floatr:   r    r    r!   	testFloatA   s   
zArgumentTests.testFloatc                 C  s$   ddg}| j tjddgd|d d S )Nr(   applezan applebbananaook)r(   rN   )rP   rQ   )cr)   )choices)r"   r   Choice)r   rT   r    r    r!   
testChoiceL   s   
zArgumentTests.testChoicec                 C  sB   ddg}| j tjdgdgfddgddgfgddgdgf|d	 d S )
NrM   rO   r(   rN   rP   rQ   rS   fdfs)flags)r"   r   Flags)r   rX   r    r    r!   	testFlagsU   s   
zArgumentTests.testFlagsc                 C  s   g d}|  tj|d d S )N))yesr)   )r#   r   )Falser   )nor   r    )r"   r   Boolean)r   testsr    r    r!   testBoolean^   s   zArgumentTests.testBooleanc                 C  sP   t jddd}| |dd | t j|jd t d}| |d dS )z>
        Test the correctness of the coerce function.
        r   r   rD   	somethingN)r   Filer   r   r   r   assertIsNone)r   r   arg2r    r    r!   	test_fileb   s
   
zArgumentTests.test_filec                 C  s,   ddd d  }g d}| tj|| d S )N)i        )i  r0      ))20021221)1996r/   29)r#   r#   r#   ))ri   r/   rm   )xxr/   r>   )ri   13r*   )1999rj   32)ri   r*   )ri   r/   r>   4)itemsr"   r   Dater   	goodTestsbadTestsr    r    r!   testDatel   s   zArgumentTests.testDatec                 C  s0   dddd  }g d}| tj||dd d S )Nr   rf   r4   )0rj   r>   )z-1r7   ro   z-2000z3.4)rs   r"   r   IntegerRangeru   r    r    r!   testRangedInteger|   s   zArgumentTests.testRangedIntegerc                 C  s0   ddd  }g d}| jtj||ddd d S )Nfoor-   ))r|   r|   r,   ))r-   r(   )12345r}   r+   r'   )r(   )r(   r(   r(   r0      r8   )rs   r"   r   VerifiedPasswordru   r    r    r!   testVerifiedPassword   s   z"ArgumentTests.testVerifiedPasswordN)r   r   r   r   r   r   r   r   r   r   r   r   )r   r   )__name__
__module____qualname__r"   r&   r;   rG   rL   rV   rZ   r`   re   rx   r{   r   r    r    r    r!   r
      s    






	
	



r
   N)
__future__r   typingr   r   typing_extensionsr   r   twisted.pythonr   twisted.trialr   r	   TestCaser
   r    r    r    r!   <module>   s   