Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/test/__pycache__/test_keywordonlyarg.cpython-310.opt-2.pyc

o

0�i��@s�	dZdZddlZdd�Zdd�dd�Zd	d
�Zdd�Zddd
�dd�Zddd
�dd�Zdd�dd�Z	dd�dd�Z
Gdd�d�ZGdd�dej�Z
edkrTe��dSdS)z	Jiwon Seozseojiwon at gmail dot com�NcOs|t|�t|���S�N��sum�values)Zpos_arg1�arg�kwarg�r�?/opt/alt/python310/lib64/python3.10/test/test_keywordonlyarg.py�posonly_sum�r
��k1cC�||Srr�r
�k2rrr	�keywordonly_sum
�rcCrrrrrrr	�keywordonly_nodefaults_sumrrcKs||t|���Srr)r
rrrrr	�keywordonly_and_kwarg_sumsr�rcGs||||t|�Sr)r)�a�br
rrrrr	�
mixedargs_sumrrcOs$||||t|�t|���Srr)rrr
rr�kwargsrrr	�mixedargs_sum2s$rF��reversecG�tt|�|d�S�Nr��sorted�list)rZnumsrrr	�sortnum�r"cOrrr)rZwordsrrrr	�	sortwordsr#r$c@s*eZdZdd�dd�Zdd�Zdd�Zd	S)
�FoorrcCs||_||_dSrr��selfr
rrrr	�__init__�
zFoo.__init__cCs||_||_dSrr)r'�p1r
rrrr	�setr)zFoo.setcCs|j|jSrr�r'rrr	r"szFoo.sumN)�__name__�
__module__�__qualname__r(r+rrrrr	r%sr%c@sleZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�KeywordOnlyArgTestCasecCsdd�}|�t||�dS)NcSst|dd�dS)N�<test>�single)�compile)�srrr	�shouldRaiseSyntaxError'r#zNKeywordOnlyArgTestCase.assertRaisesSyntaxError.<locals>.shouldRaiseSyntaxError)�assertRaises�SyntaxError)r'Zcodestrr5rrr	�assertRaisesSyntaxError&sz.KeywordOnlyArgTestCase.assertRaisesSyntaxErrorcCsT|�d�|�d�|�d�|�d�|�d�|�d�|�d�|�d�dS)	Nzdef f(p, *):
  pass
zdef f(p1, *, p1=100):
  pass
zdef f(p1, *k1, k1=100):
  pass
z!def f(p1, *, k1, k1=100):
  pass
zdef f(p1, *, **k1):
  pass
zdef f(p1, *, k1, **k1):
  pass
z!def f(p1, *, None, **k1):
  pass
z$def f(p, *, (k1, k2), **kw):
  pass
�r8r,rrr	�$testSyntaxErrorForFunctionDefinition+s






z;KeywordOnlyArgTestCase.testSyntaxErrorForFunctionDefinitioncCsTdd�dd�td�D��}t|dd�dd�d	d�td�D��}t|dd�dS)
Nzdef f(%s):
  pass
z, cs��|]}d|VqdS�zi%dNr��.0�irrr	�	<genexpr>7��zDKeywordOnlyArgTestCase.testSyntaxForManyArguments.<locals>.<genexpr>i,r1r2zdef f(*, %s):
  pass
csr;r<rr=rrr	r@:rA)�join�ranger3)r'Zfundefrrr	�testSyntaxForManyArguments5sz1KeywordOnlyArgTestCase.testSyntaxForManyArgumentscCshddd�dd�}|�t��}|ddd�Wd�n1swY|j�d�}|�t|j�|�dS)	N)�ccS�dSrr�rrrErrr	�f>�zCKeywordOnlyArgTestCase.testTooManyPositionalErrorMessage.<locals>.f���z:() takes from 1 to 2 positional arguments but 3 were givenr)r6�	TypeErrorr/�assertEqual�str�	exception)r'rH�excZexpectedrrr	�!testTooManyPositionalErrorMessage=s�z8KeywordOnlyArgTestCase.testTooManyPositionalErrorMessagecCs|�d�|�d�dS)Nz
f(p, k=1, p2)zf(p, k1=50, *(1,2), k1=100)r9r,rrr	�testSyntaxErrorForFunctionCallFs
z5KeywordOnlyArgTestCase.testSyntaxErrorForFunctionCallcCs�|�ttd�|�ttd�|�ttd�z
tddd�|�d�Wn	ty+Ynwz
tdd�|�d�WdStyCYdSw)Nr�d��)rZnon_existing_argzshould raise TypeErrorrKr)r6rMrrr%�failr,rrr	�2testRaiseErrorFuncallWithUnexpectedKeywordArgumentJs�
�zIKeywordOnlyArgTestCase.testRaiseErrorFuncallWithUnexpectedKeywordArgumentcCs�|�dtd��|�dtdiddi���|�dtdgd�R��|�dtdgd�Ridd	i���|�dtdd
��|�dtddd��|�dtddd��|�dtdddd��|�dtd ddd�dd	d
����|�dtddd��|�dtdddd��|�dtdddd	d��|�dtdddd	dd��|�dtddd��|�dtdddd��|�dtdddd	d��|�dtdddd	dd��|�dtdddd	ddd��|�dtddd	iddd����|�dtdd����|�dtddd����|�gd�tddd��|�gd�tddddd��|�gd�t	ddd��|�gd�t	ddddd��|�gd�t	dddddd��dS)!NrJrL�2rK�)rKrL�
�4�rr)r
r�k3)rrr���)rJrKrLr
)rr])rLrKrJTrrGrrEr)rErr�ignore)rra)rJr)
rNr
rrrrr%rr"r$r,rrr	�testFunctionCallYsH"����
�z'KeywordOnlyArgTestCase.testFunctionCallcCsnddd�dd�}|�d|jj�|�ddi|j�ddi|_z|dd	d
�|�d�WdSty6YdSw)
NrrcSs||||Srr)r*Zp2r
rrrr	�foo�r#z2KeywordOnlyArgTestCase.testKwDefaults.<locals>.foorKrr
rJrZrz&__kwdefaults__ is not properly changed�r)rN�__code__�co_kwonlyargcount�__kwdefaults__rVrM)r'rcrrr	�testKwDefaults�s
�z%KeywordOnlyArgTestCase.testKwDefaultscCsXGdd�d�}|�|�jddd�d�|�|j|�ddd�d�|jt|jddd�dS)Nc@seZdZddd�dd�ZdS)z;KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.ExamplerJrKrcSs||fSrrr&rrr	rH�rz=KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Example.fN�r-r.r/rHrrrr	�Example�srjrJrKr)rJrK)rNrHr6rM)r'rjrrr	�test_kwonly_methods�sz*KeywordOnlyArgTestCase.test_kwonly_methodscCstd�dd�dS)NrcSrFrrrrrr	�<lambda>��z8KeywordOnlyArgTestCase.test_issue13343.<locals>.<lambda>)�unittestr,rrr	�test_issue13343�sz&KeywordOnlyArgTestCase.test_issue13343cCs$Gdd�d�}|�|���d�dS)Nc@seZdZdd�dd�ZdS)z/KeywordOnlyArgTestCase.test_mangling.<locals>.X�*)�_X__acSs|Srr)r'rqrrr	rH�rIz1KeywordOnlyArgTestCase.test_mangling.<locals>.X.fNrirrrr	�X�srrrp)rNrH)r'rrrrr	�
test_mangling�sz$KeywordOnlyArgTestCase.test_manglingcCs�d}|�t��}|tfttd�dd�}Wd�n1swY|�t|j�d�|�t��}|tfttd�dd�}Wd�n1sFwY|�t|j�d�dS)Nrp)�y�zcSrFrr��v�xrtrurrr	rH�rIz?KeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.fzname 'b' is not definedcSrFrrrvrrr	rl�rmzFKeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.<lambda>)r6�	NameErrorrrE�drNrOrP)r'r�errrHrrr	�test_default_evaluation_order�s��z4KeywordOnlyArgTestCase.test_default_evaluation_orderN)r-r.r/r8r:rDrRrSrWrbrhrkrorsr|rrrr	r0%s
	(
	r0�__main__rd)�
__author__Z	__email__rnr
rrrrrr"r$r%ZTestCaser0r-�mainrrrr	�<module>s$

�