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.7/test/__pycache__/test_keywordonlyarg.cpython-37.opt-2.pyc
B

��gi�@s�dZdZddlZdd�Zdd�dd�Zd	d
�Zdd�Zddd
�dd�Zddd
�dd�Zdd�dd�Z	dd�dd�Z
Gdd�d�ZGdd�dej�Z
edkr�e��dS)z	Jiwon Seozseojiwon at gmail dot com�NcOs|t|�t|���S)N)�sum�values)Zpos_arg1�arg�kwarg�r�4/usr/local/lib/python3.7/test/test_keywordonlyarg.py�posonly_sumsr)�k1cCs||S)Nr)r	�k2rrr�keywordonly_sum
srcCs||S)Nr)r	r
rrr�keywordonly_nodefaults_sumsrcKs||t|���S)N)rr)r	r
rrrr�keywordonly_and_kwarg_sumsr
)r
cGs||||t|�S)N)r)�a�br	r
rrrr�
mixedargs_sumsrcOs$||||t|�t|���S)N)rr)rrr	r
r�kwargsrrr�mixedargs_sum2srF)�reversecGstt|�|d�S)N)r)�sorted�list)rZnumsrrr�sortnumsrcOstt|�|d�S)N)r)rr)rZwordsrrrr�	sortwordssrc@s*eZdZdd�dd�Zdd�Zdd�Zd	S)
�Foor)r
cCs||_||_dS)N)r	r
)�selfr	r
rrr�__init__szFoo.__init__cCs||_||_dS)N)r	r
)r�p1r	r
rrr�setszFoo.setcCs|j|jS)N)r	r
)rrrrr"szFoo.sumN)�__name__�
__module__�__qualname__rrrrrrrrsrc@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)Nz<test>�single)�compile)�srrr�shouldRaiseSyntaxError'szNKeywordOnlyArgTestCase.assertRaisesSyntaxError.<locals>.shouldRaiseSyntaxError)�assertRaises�SyntaxError)rZcodestrr$rrr�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
)r')rrrr�$testSyntaxErrorForFunctionDefinition+s






z;KeywordOnlyArgTestCase.testSyntaxErrorForFunctionDefinitioncCsTdd�dd�td�D��}t|dd�dd�d	d�td�D��}t|dd�dS)
Nzdef f(%s):
  pass
z, css|]}d|VqdS)zi%dNr)�.0�irrr�	<genexpr>7szDKeywordOnlyArgTestCase.testSyntaxForManyArguments.<locals>.<genexpr>i,z<test>r!zdef f(*, %s):
  pass
css|]}d|VqdS)zi%dNr)r)r*rrrr+:s)�join�ranger")rZfundefrrr�testSyntaxForManyArguments5sz1KeywordOnlyArgTestCase.testSyntaxForManyArgumentsc	CsLddd�dd�}|�t��}|ddd�WdQRXd}|�t|j�|�dS)	N)�ccSsdS)Nr)rrr/rrr�f>szCKeywordOnlyArgTestCase.testTooManyPositionalErrorMessage.<locals>.f���z;f() takes from 1 to 2 positional arguments but 3 were given)N)r%�	TypeError�assertEqual�str�	exception)rr0�excZexpectedrrr�!testTooManyPositionalErrorMessage=s
z8KeywordOnlyArgTestCase.testTooManyPositionalErrorMessagecCs|�d�|�d�dS)Nz
f(p, k=1, p2)zf(p, k1=50, *(1,2), k1=100))r')rrrr�testSyntaxErrorForFunctionCallEs
z5KeywordOnlyArgTestCase.testSyntaxErrorForFunctionCallcCs�|�ttd�|�ttd�|�ttd�ytddd�|�d�Wntk
rXYnXytdd�|�d�Wntk
r�YnXdS)Nr�d��)r
Znon_existing_argzshould raise TypeErrorr2)r
)r%r4rrr�fail)rrrr�2testRaiseErrorFuncallWithUnexpectedKeywordArgumentIs
zIKeywordOnlyArgTestCase.testRaiseErrorFuncallWithUnexpectedKeywordArgumentcCs||�dtd��|�dtdddi��|�dtdd���|�dtdd�dd	i��|�dtdd
��|�dtddd��|�dtddd��|�dtdddd��|�dtfddd�dd	d
����|�dtddd��|�dtdddd��|�dtdddd	d��|�dtdddd	dd��|�dtddd��|�dtdddd��|�dtdddd	d��|�dtdddd	dd��|�dtdddd	ddd��|�dtddd	iddd����|�dtdd����|�dtddd����|�dddgtddd��|�dddgtddddd��|�dddgt	ddd��|�dddgt	ddddd��|�dddgt	dddddd��dS)Nr1r3�2r2�)r2r3�
�4�)r
)r	r
)r	r
�k3)rr)r	���r	)r
rDT)rrrr/�ignore)rrH)r1)r1)r1)r1r2r3)
r5rrr
rrrrrr)rrrr�testFunctionCallXs>z'KeywordOnlyArgTestCase.testFunctionCallcCspddd�dd�}|�d|jj�|�ddi|j�ddi|_y|dd	d
�|�d�Wntk
rjYnXdS)
Nr)r
cSs||||S)Nr)rZp2r	r
rrr�foo�sz2KeywordOnlyArgTestCase.testKwDefaults.<locals>.foor2r
r	r1rA)r	z&__kwdefaults__ is not properly changed)r)r5�__code__�co_kwonlyargcount�__kwdefaults__r=r4)rrJrrr�testKwDefaults�s
z%KeywordOnlyArgTestCase.testKwDefaultscCsXGdd�d�}|�|�jddd�d�|�|j|�ddd�d�|jt|jddd�dS)Nc@seZdZddd�dd�ZdS)z;KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Exampler1r2)r	r
cSs||fS)Nr)rr	r
rrrr0�sz=KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Example.fN)rrrr0rrrr�Example�srOr1r2)r	r
)r1r2)r5r0r%r4)rrOrrr�test_kwonly_methods�sz*KeywordOnlyArgTestCase.test_kwonly_methodscCstd�dd�dS)N)r	cSsdS)Nr)r	rrr�<lambda>��z8KeywordOnlyArgTestCase.test_issue13343.<locals>.<lambda>)�unittest)rrrr�test_issue13343�sz&KeywordOnlyArgTestCase.test_issue13343cCs$Gdd�d�}|�|���d�dS)Nc@seZdZdd�dd�ZdS)z/KeywordOnlyArgTestCase.test_mangling.<locals>.X�*)�_X__acSs|S)Nr)rrVrrrr0�sz1KeywordOnlyArgTestCase.test_mangling.<locals>.X.fN)rrrr0rrrr�X�srWrU)r5r0)rrWrrr�
test_mangling�sz$KeywordOnlyArgTestCase.test_manglingc	Cs�d}|�t��}|tfttd�dd�}WdQRX|�t|j�d�|�t��}|tfttd�dd�}WdQRX|�t|j�d�dS)NrU)�y�zcSsdS)Nr)�v�xrYrZrrrr0�sz?KeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.fzname 'b' is not definedcSsdS)Nr)r[r\rYrZrrrrQ�rRzFKeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.<lambda>)r%�	NameErrorrr/�dr5r6r7)rr�errr0rrr�test_default_evaluation_order�s  z4KeywordOnlyArgTestCase.test_default_evaluation_orderN)rrrr'r(r.r9r:r>rIrNrPrTrXr`rrrrr %s
(
	r �__main__)r)r)�
__author__Z	__email__rSrrrr
rrrrrZTestCaser r�mainrrrr�<module>s