HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/test/__pycache__/test_keywordonlyarg.cpython-310.pyc
o

�i��@s�dZdZdZddlZdd�Zdd�dd	�Zd
d�Zdd
�Zddd�dd�Zddd�dd�Z	dd�dd�Z
dd�dd�ZGdd�d�ZGdd�dej
�ZedkrUe��dSdS)z?Unit tests for the keyword only argument specified in PEP 3102.z	Jiwon Seozseojiwon at gmail dot com�NcOs|t|�t|���S�N��sum�values)Zpos_arg1�arg�kwarg�r�5/usr/local/lib/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)r�wordsrrrr	�	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(Zcodestrr6rrr	�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
�r9r-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,r2r3zdef f(*, %s):
  pass
csr<r=rr>rrr	rA:rB)�join�ranger4)r(Zfundefrrr	�testSyntaxForManyArguments5sz1KeywordOnlyArgTestCase.testSyntaxForManyArgumentscCshddd�dd�}|�t��}|ddd�Wd�n1swY|j�d�}|�t|j�|�dS)	N)�ccS�dSrr�rrrFrrr	�f>�zCKeywordOnlyArgTestCase.testTooManyPositionalErrorMessage.<locals>.f���z:() takes from 1 to 2 positional arguments but 3 were givenr)r7�	TypeErrorr0�assertEqual�str�	exception)r(rI�excZexpectedrrr	�!testTooManyPositionalErrorMessage=s�z8KeywordOnlyArgTestCase.testTooManyPositionalErrorMessagecCs|�d�|�d�dS)Nz
f(p, k=1, p2)zf(p, k1=50, *(1,2), k1=100)r:r-rrr	�testSyntaxErrorForFunctionCallFs
z5KeywordOnlyArgTestCase.testSyntaxErrorForFunctionCallcCs�|�ttd�|�ttd�|�ttd�z
tddd�|�d�Wn	ty+Ynwz
tdd�|�d�WdStyCYdSw)Nr�d��)rZnon_existing_argzshould raise TypeErrorrLr)r7rNrrr&�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)!NrKrM�2rL�)rLrM�
�4�rr)r
r�k3)rrr���)rKrLrMr
)rr^)rMrLrKTrrHrrFr)rFrr�ignore)rrb)rKr)
rOr
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>.foorLrr
rKr[rz&__kwdefaults__ is not properly changed�r)rO�__code__�co_kwonlyargcount�__kwdefaults__rWrN)r(rdrrr	�testKwDefaults�s
�z%KeywordOnlyArgTestCase.testKwDefaultscCsXGdd�d�}|�|�jddd�d�|�|j|�ddd�d�|jt|jddd�dS)Nc@seZdZddd�dd�ZdS)z;KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.ExamplerKrLrcSs||fSrrr'rrr	rI�rz=KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Example.fN�r.r/r0rIrrrr	�Example�srkrKrLr)rKrL)rOrIr7rN)r(rkrrr	�test_kwonly_methods�sz*KeywordOnlyArgTestCase.test_kwonly_methodscCstd�dd�dS)NrcSrGrrr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(rrrrr	rI�rJz1KeywordOnlyArgTestCase.test_mangling.<locals>.X.fNrjrrrr	�X�srsrq)rOrI)r(rsrrr	�
test_mangling�sz$KeywordOnlyArgTestCase.test_manglingcCs�d}|�t��}|tfttd�dd�}Wd�n1swY|�t|j�d�|�t��}|tfttd�dd�}Wd�n1sFwY|�t|j�d�dS)Nrq)�y�zcSrGrr��v�xrurvrrr	rI�rJz?KeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.fzname 'b' is not definedcSrGrrrwrrr	rm�rnzFKeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.<lambda>)r7�	NameErrorrrF�drOrPrQ)r(r�errrIrrr	�test_default_evaluation_order�s��z4KeywordOnlyArgTestCase.test_default_evaluation_orderN)r.r/r0r9r;rErSrTrXrcrirlrprtr}rrrr	r1%s
	(
	r1�__main__re)�__doc__�
__author__Z	__email__ror
rrrrrr"r%r&ZTestCaser1r.�mainrrrr	�<module>s$

�