Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/test/__pycache__/test_getargs2.cpython-38.pyc
U

>��g���@sfddlZddlZddlZddlZddlmZe�d�ZddlmZm	Z	dZ
dZddlmZm
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZejjZed�Z ed	�Z!d
Z"dZ#dZ$Gd
d�d�Z%Gdd�de&�Z'Gdd�d�Z(Gdd�d�Z)Gdd�de&�Z*Gdd�d�Z+Gdd�de&�Z,Gdd�d�Z-Gdd�d�Z.Gdd �d e&�Z/Gd!d"�d"�Z0Gd#d$�d$e�Z1Gd%d&�d&e�Z2Gd'd(�d(�Z3Gd)d*�d*�Z4Gd+d,�d,e�Z5Gd-d.�d.�Z6Gd/d0�d0e7�Z8Gd1d2�d2e7�Z9Gd3d4�d4�Z:Gd5d6�d6�Z;Gd7d8�d8e7�Z<Gd9d:�d:e=�Z>Gd;d<�d<e?�Z@Gd=d>�d>ejA�ZBGd?d@�d@ejA�ZCGdAdB�dBejA�ZDGdCdD�dDejA�ZEGdEdF�dF�ZFGdGdH�dHejA�ZGGdIdJ�dJejA�ZHGdKdL�dLejA�ZIGdMdN�dNejA�ZJGdOdP�dPejA�ZKGdQdR�dRejA�ZLGdSdT�dTejA�ZMGdUdV�dVejA�ZNGdWdX�dXejA�ZOGdYdZ�dZejA�ZPGd[d\�d\ejA�ZQGd]d^�d^ejA�ZReSd_k�rbe�T�dS)`�N)�support�	_testcapi)�getargs_keywords�getargs_keyword_onlyi���lB$$HH�!`?)�	UCHAR_MAX�	USHRT_MAX�UINT_MAX�	ULONG_MAX�INT_MAX�INT_MIN�LONG_MIN�LONG_MAX�PY_SSIZE_T_MIN�PY_SSIZE_T_MAX�SHRT_MIN�SHRT_MAX�FLT_MIN�FLT_MAX�DBL_MIN�DBL_MAX�inf�nanl����l����l����c@seZdZdd�ZdS)�IndexcCsdS�N�c���selfrr�1/opt/cppython/lib/python3.8/test/test_getargs2.py�	__index__9szIndex.__index__N��__name__�
__module__�__qualname__rrrrrr8src@seZdZdd�ZdS)�IndexIntSubclasscCsdSrrrrrrr=szIndexIntSubclass.__index__Nr rrrrr$<sr$c@seZdZdd�ZdS)�BadIndexcCsdS�N��?rrrrrrAszBadIndex.__index__Nr rrrrr%@sr%c@seZdZdd�ZdS)�	BadIndex2cCsdS�NTrrrrrrEszBadIndex2.__index__Nr rrrrr(Dsr(c@seZdZdd�ZdS)�	BadIndex3cCsdSr)rrrrrrIszBadIndex3.__index__Nr rrrrr*Hsr*c@seZdZdd�ZdS)�IntcCsdSrrrrrr�__int__NszInt.__int__N�r!r"r#r,rrrrr+Msr+c@seZdZdd�ZdS)�IntSubclasscCsdSrrrrrrr,RszIntSubclass.__int__Nr-rrrrr.Qsr.c@seZdZdd�ZdS)�BadIntcCsdSr&rrrrrr,VszBadInt.__int__Nr-rrrrr/Usr/c@seZdZdd�ZdS)�BadInt2cCsdSr)rrrrrr,ZszBadInt2.__int__Nr-rrrrr0Ysr0c@seZdZdd�ZdS)�BadInt3cCsdSr)rrrrrr,^szBadInt3.__int__Nr-rrrrr1]sr1c@seZdZdd�ZdS)�FloatcCsdS�N�@rrrrr�	__float__cszFloat.__float__N�r!r"r#r5rrrrr2bsr2c@seZdZdS)�
FloatSubclassN�r!r"r#rrrrr7fsr7c@seZdZdd�ZdS)�FloatSubclass2cCsdSr3rrrrrr5jszFloatSubclass2.__float__Nr6rrrrr9isr9c@seZdZdd�ZdS)�BadFloatcCsdS)Ni�rrrrrr5nszBadFloat.__float__Nr6rrrrr:msr:c@seZdZdd�ZdS)�	BadFloat2cCstd�Sr3�r7rrrrr5rszBadFloat2.__float__Nr6rrrrr;qsr;c@seZdZdd�ZdS)�	BadFloat3cCstd�Sr3r<rrrrr5vszBadFloat3.__float__Nr6rrrrr=usr=c@seZdZdd�ZdS)�ComplexcCsdS�N�@�?rrrrr�__complex__{szComplex.__complex__N�r!r"r#rArrrrr>zsr>c@seZdZdS)�ComplexSubclassNr8rrrrrC~srCc@seZdZdd�ZdS)�ComplexSubclass2cCsdSr?rrrrrrA�szComplexSubclass2.__complex__NrBrrrrrD�srDc@seZdZdd�ZdS)�
BadComplexcCsdS)Ng�?rrrrrrA�szBadComplex.__complex__NrBrrrrrE�srEc@seZdZdd�ZdS)�BadComplex2cCstd�Sr?�rCrrrrrA�szBadComplex2.__complex__NrBrrrrrF�srFc@seZdZdd�ZdS)�BadComplex3cCstd�Sr?rGrrrrrA�szBadComplex3.__complex__NrBrrrrrH�srHc@seZdZdS)�
TupleSubclassNr8rrrrrI�srIc@seZdZdS)�DictSubclassNr8rrrrrJ�srJc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�Unsigned_TestCasec	Csnddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|d�|�d|d��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_b���Q�	@r�����*)rrL�assertRaises�	TypeError�assertEqualrr$r%�assertWarns�DeprecationWarningr(r*r+r.r/r0r1�
OverflowErrorr�
VERY_LARGE)rrLrrr�test_b�s*zUnsigned_TestCase.test_bc	Csxddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|d��|�d|d��|�t|t��|�d|td��|�d|d��|�tt@|t��dS)Nr)�	getargs_BrMrrNrOrP)rrYrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rrW)rrYrrr�test_B�s*zUnsigned_TestCase.test_Bc	Csxddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|d��|�d|d��|�t|t��|�d|td��|�d|d��|�tt@|t��dS)Nr)�	getargs_HrMrrNrOrP)rr[rQrRrSrr$r%rTrUr(r*r+r.r/r0r1rrW)rr[rrr�test_H�s*zUnsigned_TestCase.test_Hc	Csxddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|d��|�d|d��|�t|t��|�d|td��|�d|d��|�tt@|t��dS)Nr)�	getargs_IrMrrNrOrP)rr]rQrRrSrr$r%rTrUr(r*r+r.r/r0r1rrW)rr]rrr�test_I�s*zUnsigned_TestCase.test_IcCs.ddlm}|�t|d�|�t|t��|�d|t���|�t|t��|�t|t��|�d|t	���|�t|t
��|�d|t���|�t|t��|�t|t
��|�d|t���|�t|d��|�d|d��|�t|t��|�d|td��|�d|d��|�tt@|t��dS)Nr)�	getargs_krMrOrNrP)rr_rQrRrrSr$r%r(r*r+r.r/r0r1r	rW)rr_rrr�test_ks$zUnsigned_TestCase.test_kN)r!r"r#rXrZr\r^r`rrrrrK�s
rKc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�Signed_TestCasec	Csrddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|td�|�t|t��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_hrMrrNrP)rrbrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rVrrrW)rrbrrr�test_hs*zSigned_TestCase.test_hc	Csrddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|td�|�t|t��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_irMrrNrP)rrdrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rVrr
rW)rrdrrr�test_i8s*zSigned_TestCase.test_ic	Csrddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|td�|�t|t��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_lrMrrNrP)rrfrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rVrr
rW)rrfrrr�test_lRs*zSigned_TestCase.test_lc	CsBddlm}|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t|t��|�d|t
���|�t|t��|�t|t��|�d|t���|�t|td�|�t|t��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_nrMrrNrP)rrhrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rVrrrW)rrhrrr�test_nls&zSigned_TestCase.test_nN)r!r"r#rcrergrirrrrrasrac@seZdZdd�Zdd�ZdS)�LongLong_TestCasec	Cs�ddlm}|�t|d�|�t|d�|�d|t���|�d|t���|�t|t��|�t	��|�d|t
���W5QRX|�d|t���|�t	��|�d|t���W5QRX|�d|t
���|�t|t��|�t	��|�d|t���W5QRX|�d|t���|�t|td�|�t|t��|�t|t��|�t|td�|�d|d��|�t|t�dS)Nr)�	getargs_LrM�HellorrNrP)rrkrQrRrSrr$r%rTrUr(r*r+r.r/r0r1rV�	LLONG_MIN�	LLONG_MAXrW)rrkrrr�test_L�s,zLongLong_TestCase.test_LcCsddlm}|�t|d�|�t|t��|�d|t���|�t|t��|�t|t��|�d|t	���|�t|t
��|�d|t���|�t|t��|�t|t
��|�d|t���|�t|t��|�d|d��|�d|td��|�d|d��|�tt@|t��dS)Nr)�	getargs_KrMrNrP)rrprQrRrrSr$r%r(r*r+r.r/r0r1�
ULLONG_MAXrW)rrprrr�test_K�s"zLongLong_TestCase.test_KN)r!r"r#rorrrrrrrj�srjc@s:eZdZdd�Zdd�Zejdd��Zdd�Zd	d
�Z	dS)�Float_TestCasecCs,|�||�|�t�d|�t�d|��dS)NrN)rS�math�copysign)r�actualZexpectedrrr�assertEqualWithSign�sz"Float_TestCase.assertEqualWithSignc	Cs�ddlm}|�|d�d�|�|d�d�|�t|d�|�|t��d�|�|td��d�|�|td��d�|�t|t��|�	t
��|�|t��d�W5QRX|�|td��d�|�|t
��d�|�t|t��ttttttfD]}|�||�|�q�ttk�r<|�|t�t�|�|t�t�ttk�rh|�|t�d	�|�|t�d
�|�|d	�d	�|�|d
�d
�|t�}|�||�dS)Nr��	getargs_fr4��@�@�@��X@���)rryrSrQrRr2r7r9r:rTrUr;r=rr+rr�INFrrrw�NAN�assertNotEqual)rry�x�rrrr�test_f�s2

zFloat_TestCase.test_fcCs2ddlm}|�|d�t�|�|d�t�dS)Nrrxgn���Ggn����)rryrSr)rryrrr�test_f_rounding�szFloat_TestCase.test_f_roundingc	Csjddlm}|�|d�d�|�|d�d�|�t|d�|�|t��d�|�|td��d�|�|td��d�|�t|t��|�	t
��|�|t��d�W5QRX|�|td��d�|�|t
��d�|�t|t��ttttttfD]}|�||�|�q�|�t|d	t>�|�t|d
t>�|�|d�d�|�|d�d�|t�}|�||�dS)
Nr)�	getargs_dr4rzr{r|r}r~rNrOrr�)rr�rSrQrRr2r7r9r:rTrUr;r=rr+rrr�rV�DBL_MAX_EXPrwr�r�)rr�r�r�rrr�test_d�s*zFloat_TestCase.test_dc	Cs�ddlm}|�|d�d�|�|d�d�|�|d�d�|�|t��d�|�|td��d�|�|td��d�|�t|t��|�	t
��|�|t��d�W5QRX|�|td��d�|�|t
��d	�|�t|t��ttttttfD]8}t|d
�}|�||�|�td
|�}|�||�|�q�|�|tdd
��jd�|�|tdd
��jd�|�|td
d��jd�|�|td
d��jd�dS)
Nr)�	getargs_Dr@r4r|rzy@y@�?y�X@r'rr�)rr�rSr>rCrDrQrRrErTrUrFrHrr+rrr��complexrw�real�imag)rr�r��crrr�test_D�s,

zFloat_TestCase.test_DN)
r!r"r#rwr�rZrequires_IEEE_754r�r�r�rrrrrs�s
rsc@seZdZdZdd�ZdS)�ParadoxzThis statement is false.cCst�dS�N)�NotImplementedErrorrrrr�__bool__szParadox.__bool__N)r!r"r#�__doc__r�rrrrr�sr�c@seZdZdd�ZdS)�Boolean_TestCasecCsHddlm}|�d|d��|�d|d��|�d|d��|�d|d��|�d|d��|�d|d��|�d|d��|�d|g��|�d|i��|�d|d	��|�d|d��|�d|d
��|�d|d��|�d|d��|�d|d
��|�d|dg��|�d|ddi��|�d|tj��|�t|t��dS)Nr)�	getargs_pFry�rrNTr'y�?r��rN�)rr�rS�unittest�TestCaserQr�r�)rr�rrr�test_ps(zBoolean_TestCase.test_pN)r!r"r#r�rrrrr�sr�c@seZdZdd�Zdd�ZdS)�Tuple_TestCasecCsddlm}|dd�}|�|d�|�t|�t�|d
d��}|�|d�|�t|�t�|ddg�}|�|d�|�t|�t�|tddg��}|�|d�|�t|�t�|�}|�|d�|�t|�ttd�f�|d	�}|�|d�|�t|�ttd�f�dS)Nr)�get_argsrNr��rNr��r���rNr�r�)rNr)rN)rr�rS�assertIs�type�tuplerI�assertIn)rr��retrrr�	test_args4s&
zTuple_TestCase.test_argscCsFddlm}|dd�}|�|d�Gdd�d�}|�t|d|��dS)Nr)�
getargs_tuplerNr�r�c@seZdZdd�Zdd�ZdS)z&Tuple_TestCase.test_tuple.<locals>.seqcSsdS)Nr�rrrrr�__len__Wsz.Tuple_TestCase.test_tuple.<locals>.seq.__len__cSst�dSr�)�
ValueError)r�nrrr�__getitem__Ysz2Tuple_TestCase.test_tuple.<locals>.seq.__getitem__N)r!r"r#r�r�rrrr�seqVsr�)rr�rSrQrR)rr�r�r�rrr�
test_tupleOs

zTuple_TestCase.test_tupleN)r!r"r#r�r�rrrrr�3sr�c@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�Keywords_TestCasecCsddlm}|ddd�}|�|ddd��|�t|�t�|fddiddd���}|�|dddd	��|�t|�t�|ftddd���}|�|ddd��|�t|�t�|�}|�|idf�|�t|�ttd�f�|fi�}|�|idf�|�t|�ttd�f�dS)
Nr)�
get_kwargsrNr���a�br�r�)r�r�)r�r�r�)rr�rSr�r��dictrJr�)rr�r�rrr�test_kwargs^s 
zKeywords_TestCase.test_kwargscCs|�tddddd�d�dS)Nr�r��rz)������	�
�
rNr�r�rzr�r�r�r�r�r��rSrrrrr�test_positional_argsus�z&Keywords_TestCase.test_positional_argsc	Cs|�tdddddd�d�dS)Nr�r�r�r�r�)�arg4�arg5r�r�rrrr�test_mixed_args|s�z!Keywords_TestCase.test_mixed_argsc	Cs|�tdddddd�d�dS)Nr�r�r�r�r�)�arg1�arg2Zarg3r�r�r�r�rrrr�test_keyword_args�s�z#Keywords_TestCase.test_keyword_argscCs|�tdddd�d�dS)Nr�r�r�)r�r�r�)
rNr�r�rOrOrOrOrOrOr�r�rrrr�test_optional_args�s�z$Keywords_TestCase.test_optional_argsc
CsPztdd�Wn2tk
r@}z|�t|�d�W5d}~XYnX|�d�dS)Nr�)r�z1function missing required argument 'arg2' (pos 2)�!TypeError should have been raised�rrRrS�strZfail�r�errrrr�test_required_args�s�z$Keywords_TestCase.test_required_argsc
CsXztdddddd�Wn2tk
rH}z|�t|�d�W5d}~XYnX|�d�dS)	Nr�r�r�r�r��oz,function takes at most 5 arguments (6 given)r�r�r�rrr�test_too_many_args�s
"z$Keywords_TestCase.test_too_many_argsc
CsVztddddd�Wn2tk
rF}z|�t|�d�W5d}~XYnX|�d�dS)Nr�r�r��)r�Zarg666z9'arg666' is an invalid keyword argument for this functionr�r�r�rrr�test_invalid_keyword�s
"z&Keywords_TestCase.test_invalid_keywordc
CsTztd	ddi�Wn2tk
rD}z|�t|�d�W5d}~XYnX|�d�dS)
Nr�r�r�r���r��6'�' is an invalid keyword argument for this functionr�)r�r�r�r�r�r�rrr�test_surrogate_keyword�s
"z(Keywords_TestCase.test_surrogate_keywordN)r!r"r#r�r�r�r�r�r�r�r�r�rrrrr�]s
	r�c@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�KeywordOnly_TestCasecCs|�tdd�d�dS)NrNr��rNr�rO�rSrrrrrr��s�z)KeywordOnly_TestCase.test_positional_argscCs|�tdddd�d�dS)NrNr�r���keyword_onlyr�r�rrrrr��s�z$KeywordOnly_TestCase.test_mixed_argscCs|�tdddd�d�dS)NrNr�r�)�required�optionalr�r�r�rrrrr��s�z&KeywordOnly_TestCase.test_keyword_argscCs,|�tddd�d�|�tddd�d�dS)NrNr�)r�r�r�r�)r�r��rNrOr�r�rrrrr��s
�
�z'KeywordOnly_TestCase.test_optional_argsc	Csj|�td�d�|�tdd�d�|�td��tdd�W5QRX|�td��tdd�W5QRXdS)	NrN�rNrOrO)r�z7function missing required argument 'required' \(pos 1\)r�)r�r�r�)rSr�assertRaisesRegexrRrrrrr��s ����z'KeywordOnly_TestCase.test_required_argsc	CsP|�td��tddd�W5QRX|�td��tddddd�W5QRXdS)Nz9function takes at most 2 positional arguments \(3 given\)rNr�r�z.function takes at most 3 arguments \(4 given\)r�r��r�rRrrrrrr��s��z'KeywordOnly_TestCase.test_too_many_argsc	Cs*|�td��tdddd�W5QRXdS)Nz:'monster' is an invalid keyword argument for this functionrNr�r�)Zmonsterr�rrrrr��s�z)KeywordOnly_TestCase.test_invalid_keywordc	Cs*|�td��tdddi�W5QRXdS)Nr�rNr�r�r�)rNr�r�rrrrr��s�z+KeywordOnly_TestCase.test_surrogate_keywordN)r!r"r#r�r�r�r�r�r�r�r�rrrrr��s	r�c@s@eZdZddlmZdd�Zdd�Zdd�Zd	d
�Z	dd�Z
d
S)�"PositionalOnlyAndKeywords_TestCaser)�$getargs_positional_only_and_keywordscCs|�|�ddd�d�dS)NrNr�r�r��rS�getargsrrrrr��sz7PositionalOnlyAndKeywords_TestCase.test_positional_argscCs|�|jdddd�d�dS)NrNr�r���keywordr�r�rrrrr�sz2PositionalOnlyAndKeywords_TestCase.test_mixed_argscCs.|�|�dd�d�|�|jddd�d�dS)NrNr�r�r�r�r�r�rrrrr�sz5PositionalOnlyAndKeywords_TestCase.test_optional_argsc	CsZ|�|�d�d�|�td��|��W5QRX|�td��|jdd�W5QRXdS)NrNr��9function takes at least 1 positional argument \(0 given\)r�r�)rSr�r�rRrrrrr�s��z5PositionalOnlyAndKeywords_TestCase.test_required_argsc	Cs,|�td��|jdddi�W5QRXdS)Nz3'' is an invalid keyword argument for this functionrNr�r�r�)rNr�)r�rRr�rrrr�test_empty_keywords�z5PositionalOnlyAndKeywords_TestCase.test_empty_keywordN)r!r"r#rr�r�r�r�r�r�r�rrrrr��sr�c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�Bytes_TestCasecCs~ddlm}|�t|d�|�|d�d�|�|td��d�|�t|td��|�t|d�|�t|d�|�t|d�dS)Nr)�	getargs_csabc�a�a�s)rr�rQrRrS�	bytearray�
memoryview)rr�rrr�test_cszBytes_TestCase.test_ccCsnddlm}|�t|d�|�|d�d�|�t|d�|�t|td��|�t|td��|�t|d�dS)Nr)�	getargs_y�abcé�bytes�nul:�	bytearray�
memoryview)rr�rQrRrSr�r�r�)rr�rrr�test_y(szBytes_TestCase.test_ycCstddlm}|�t|d�|�|d�d�|�|d�d�|�|td��d�|�|td��d�|�t|d�dS)Nr)�getargs_y_starr�r�r�r�r�)rr�rQrRrSr�r�)rr�rrr�test_y_star1szBytes_TestCase.test_y_starcCspddlm}|�t|d�|�|d�d�|�|d�d�|�t|td��|�t|td��|�t|d�dS)Nr)�getargs_y_hashr�r�r�r�r�)rr�rQrRrSr�r�)rr�rrr�test_y_hash:szBytes_TestCase.test_y_hashcCs�ddlm}|�t|d�|�t|d�|�t|d�|�t|td��td�}|�||�d�|�|td��td�}|�|t|��d	�|�|td	��|�t|d�dS)
Nr)�getargs_w_starr�r�r�r�s	[ytearra]r�s
[emoryvie])rr�rQrRr�r�rS)rr��bufrrr�test_w_starCszBytes_TestCase.test_w_starN)r!r"r#r�r�r�r�r�rrrrr�s

			r�c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS) �String_TestCasecCs�ddlm}|�t|d�|�|d�d�|�|d�d�|�|d�d	�|�t|d
�|�t|td
��|�t|td
��|�t|d�|�t|d�dS)Nr)�	getargs_C�abcr�r�u€i� u🐍i
�r�)rrrQrRrSr�r�)rrrrr�test_CTszString_TestCase.test_CcCsnddlm}|�|d�d�|�t|d�|�t|d�|�t|td��|�t|td��|�t|d�dS)	Nr)�	getargs_sr��abcé�nul:r�r�r�)rrrSrQr�rRr�r�)rrrrr�test_s`szString_TestCase.test_scCsvddlm}|�|d�d�|�|d�d�|�|d�d�|�|td��d�|�|td	��d	�|�t|d�dS)
Nr)�getargs_s_starr�rrr�r�r�r�)rrrSr�r�rQrR)rrrrr�test_s_stariszString_TestCase.test_s_starcCsrddlm}|�|d�d�|�|d�d�|�|d�d�|�t|td��|�t|td	��|�t|d�dS)
Nr)�getargs_s_hashr�rrr�r�r�r�)rr
rSrQrRr�r�)rr
rrr�test_s_hashrszString_TestCase.test_s_hashcCsnddlm}|�|d�d�|�t|d�|�t|d�|�t|td��|�t|td��|�|d��dS)	Nr)�	getargs_zr�rrr�r�r�)	rrrSrQr�rRr�r��assertIsNone)rrrrr�test_z{szString_TestCase.test_zcCsvddlm}|�|d�d�|�|d�d�|�|d�d�|�|td��d�|�|td	��d	�|�|d��dS)
Nr)�getargs_z_starr�rrr�r�r�r�)rrrSr�r�r
)rrrrr�test_z_star�szString_TestCase.test_z_starcCsrddlm}|�|d�d�|�|d�d�|�|d�d�|�t|td��|�t|td	��|�|d��dS)
Nr)�getargs_z_hashr�rrr�r�r�r�)rrrSrQrRr�r�r
)rrrrr�test_z_hash�szString_TestCase.test_z_hashcCs�ddlm}|�|d�d�|�|dd�d�|�t|dd�|�t|dd�|�t|d	d�|�t|td
�d�|�t|td�d�|�t|dd�|�t|dd�dS)
Nr)�
getargs_esr�r�latin1�abc��ascii�spamr�r�r�r)	rrrSrQ�UnicodeEncodeError�LookupErrorrRr�r�)rrrrr�test_es�szString_TestCase.test_escCs�ddlm}|�|d�d�|�|dd�d�|�t|dd�|�t|dd�|�|d	d�d	�|�|td
�d�d
�|�t|td�d�|�t|dd�|�t|dd�|�t|d
d�|�t|td
�d�dS)Nr)�
getargs_etr�rrrrrr�r�r�rr�)	rrrSrQrrr�rRr�)rrrrr�test_et�szString_TestCase.test_etcCsFddlm}|�|d�d�|�|dd�d�|�t|dd�|�t|dd�|�t|d	d�|�t|td
�d�|�t|td�d�|�t|dd�|�|dd�d
�td�}|�|dd|�d�|�|td��td�}|�|dd|�d�|�|td��td�}|�t	|dd|�|�|td��t�}|�t	|dd|�dS)Nr)�getargs_es_hashr�rrrrrr�r�r�rr��xxxxxxxx�abc�xxx�xxxxx�abc��xxxx)
rrrSrQrrrRr�r�r�)rrr�rrr�test_es_hash�s*zString_TestCase.test_es_hashcCsrddlm}|�|d�d�|�|dd�d�|�t|dd�|�t|dd�|�|d	d�d	�|�|td
�d�d
�|�t|td�d�|�t|dd�|�|dd�d
�|�|d
d�d
�|�|td
�d�d
�td�}|�|dd|�d�|�|td��td�}|�|dd|�d�|�|td��td�}|�t	|dd|�|�|td��t�}|�t	|dd|�dS)Nr)�getargs_et_hashr�rrrrrr�r�r�rr�rrr r!r")
rr$rSrQrrr�rRr�r�)rr$r�rrr�test_et_hash�s.zString_TestCase.test_et_hashcCsnddlm}|�|d�d�|�t|d�|�t|d�|�t|td��|�t|td��|�t|d�dS)Nr)�	getargs_ur�rr�r�r�)rr&rSrQr�rRr�r�)rr&rrr�test_u�szString_TestCase.test_ucCspddlm}|�|d�d�|�|d�d�|�t|d�|�t|td��|�t|td��|�t|d�dS)Nr)�getargs_u_hashr�rr�r�r�)rr(rSrQrRr�r�)rr(rrr�test_u_hash�szString_TestCase.test_u_hashcCsnddlm}|�|d�d�|�t|d�|�t|d�|�t|td��|�t|td��|�|d��dS)Nr)�	getargs_Zr�rr�r�r�)	rr*rSrQr�rRr�r�r
)rr*rrr�test_Z�szString_TestCase.test_ZcCspddlm}|�|d�d�|�|d�d�|�t|d�|�t|td��|�t|td��|�|d��dS)Nr)�getargs_Z_hashr�rr�r�r�)rr,rSrQrRr�r�r
)rr,rrr�test_Z_hash�szString_TestCase.test_Z_hashN)r!r"r#rrr	rrrrrrr#r%r'r)r+r-rrrrrSs									rc@s$eZdZdd�Zdd�Zdd�ZdS)�Object_TestCasecCsdddlm}d}|�||�|�|�t|td��|�t|d�|�t|d�|�t|t|��dS)Nr)�	getargs_Sr�r�r�)rr/r�rQrRr�r�)rr/�objrrr�test_SszObject_TestCase.test_ScCsdddlm}td�}|�||�|�|�t|d�|�t|d�|�t|d�|�t|t|��dS)Nr)�	getargs_Yr�r�r�)rr2r�r�rQrRr�)rr2r0rrr�test_YszObject_TestCase.test_YcCsRddlm}d}|�||�|�|�t|d�|�t|td��|�t|d�dS)Nr)�	getargs_Ur�r�r�)rr4r�rQrRr�)rr4r0rrr�test_UszObject_TestCase.test_UN)r!r"r#r1r3r5rrrrr.s		r.c@seZdZdd�ZdS)�Test6012cCs|�t�dd�d�dS)NrlZWorldrN)rSrZ
argparsingrrrr�test%sz
Test6012.testN)r!r"r#r7rrrrr6$sr6c@seZdZdd�Zdd�ZdS)�SkipitemTestcCs d}d}ddi}ddg}tdd�D]�}t|�}|dkr8q"|d	}zt�||||�d
}WnHtk
r�}	zd}
t|	�|
k}W5d}	~	XYntk
r�d
}YnXd
|}zt�||||�d
}Wn8tk
r�}	zd�|�}
t|	�|
k}W5d}	~	XYnXd�||||�}
|�|||
�q"dS)aB
        If this test failed, you probably added a new "format unit"
        in Python/getargs.c, but neglected to update our poor friend
        skipitem() in the same file.  (If so, shame on you!)

        With a few exceptions**, this function brute-force tests all
        printable ASCII*** characters (32 to 126 inclusive) as format units,
        checking to see that PyArg_ParseTupleAndKeywords() return consistent
        errors both when the unit is attempted to be used and when it is
        skipped.  If the format unit doesn't exist, we'll get one of two
        specific error messages (one for used, one for skipped); if it does
        exist we *won't* get that error--we'll get either no error or some
        other error.  If we get the specific "does not exist" error for one
        test and not for the other, there's a mismatch, and the test fails.

           ** Some format units have special funny semantics and it would
              be difficult to accommodate them here.  Since these are all
              well-established and properly skipped in skipitem() we can
              get away with not testing them--this test is really intended
              to catch *new* format units.

          *** Python C source files must be ASCII.  Therefore it's impossible
              to have non-ASCII format units.

        r�rr�rNr�� �z()e|$�iFz(argument 1 (impossible<bad format char>)N�|z!impossible<bad format char>: '{}'z�test_skipitem_parity: detected mismatch between convertsimple and skipitem for format unit '{}' ({}), not skipped {}, skipped {})	�range�chrr�parse_tuple_and_keywords�SystemErrorr�rR�formatr�)r�empty_tuple�tuple_1�dict_b�keywordsr<r�rBZwhen_not_skipped�er��optional_formatZwhen_skipped�messagerrr�
test_skipitem+sJ�
�
�zSkipitemTest.test_skipitemcCs&tj}d}d}ddi}ddg}d}tjD]x}dD]n}||}	|j|	d��Pd	|	d
}
|	|krn||||
|�n&|�td��||||
|�W5QRXW5QRXq0q(ttt	dd
��D]n}d|}	d	|	d
}
|j|	d��D|dkr�||||
|�n&|�td��||||
|�W5QRXW5QRXq�dS)Nrr9r�rNr�)
zs#zs*zz#zz*zu#zZ#zy#zy*zw#zw*z#*)rBr=r<zimpossible<bad format char>r:�rG�st)
rr@�string�
ascii_lettersZsubTestr�rA�mapr?r>)r�parserCrDrErFZ	supportedr��c2�frHrrr�test_skipitem_with_suffixos6
�&�z&SkipitemTest.test_skipitem_with_suffixN)r!r"r#rJrSrrrrr8)sDr8c@s$eZdZdd�Zdd�Zdd�ZdS)�ParseTupleAndKeywords_Testc	Csd|�ttjdidg�|�ttjdidd�|�ttjdiddgd�|�ttjdiddg�dS)NrrPr�)rQrRrr@r�rrrr�test_parse_tuple_and_keywords�s0
�
�
�
�z8ParseTupleAndKeywords_Test.test_parse_tuple_and_keywordsc	Cs|�ttjdiddg�|�ttjdidddg�|�ttjdddid	dg�|�ttjddd
d�dddg�|�ttjdddid
dg�|�ttjddd
d�dddg�|�ttjdidddg�|�ttjdiddg�|�ttjdiddg�|�ttjdidddg�dS)Nr�z||Or�r�z|O|Or�rrNz$$Or�r�z$O$Oz$|Oz$O|Oz|Oz|OOz|$Or�)rQrArr@rrrr�test_bad_use�sx
�
�
�
�
�
�
�
�
�
�z'ParseTupleAndKeywords_Test.test_bad_usec	Cs�tj}|diddddg�|dddiddddg�|�td��|dddiddddg�W5QRX|did	dddg�|�td
��|did	dddg�W5QRX|dddiddddg�|�td
��|dddiddddg�W5QRX|diddddg�|�td
��|diddddg�W5QRX|�td��|diddddg�W5QRX|�td��|did	dddg�W5QRXdS)Nr�ZOOOr�r�r�r�z:function takes at least 2 positional arguments \(1 given\)r�zO|OOr�rzOO$Oz9function takes exactly 2 positional arguments \(1 given\)zO|O$OzEmpty parameter name after \$zO|$OOz
Empty keyword)rr@r�rRrA)rrPrrr�test_positional_only�s4�"��"�z/ParseTupleAndKeywords_Test.test_positional_onlyN)r!r"r#rUrVrWrrrrrT�srTc@s&eZdZe��dd�ee�D��dS)�
Test_testcapiccs0|](}|�d�r|�d�r|tt|�fVqdS)Ztest_�_codeN)�
startswith�endswith�getattrr)�.0�namerrr�	<genexpr>�s

�zTest_testcapi.<genexpr>N)r!r"r#�locals�update�dirrrrrrrX�s�rX�__main__)Ur�rtrM�sysr7r�
import_modulerrrZLARGErWrrrr	r
rrr
rrrrrrrr�
float_info�max_expr��floatr�r�rnrmrqr�intr$r%r(r*r+r.r/r0r1r2r7r9r:r;r=r>r�rCrDrErFrHr�rIr�rJr�rKrarjrsr�r�r�r�r�r�r�rr.r6r8rTrXr!�mainrrrr�<module>sx
 Hi5Y*WH!65f?


F1le Man4ger