Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_keywordonlyarg.cpython-311.opt-2.pyc
�

�Ke�����	dZdZddlZd�Zdd�d�Zd�Zd�Zddd	�d
�Zddd	�d�Zdd
�d�Z	dd
�d�Z
Gd�d��ZGd�dej��Z
edkrej��dSdS)z	Jiwon Seozseojiwon at gmail dot com�Nc�j�|t|��zt|�����zS�N��sum�values)�pos_arg1�arg�kwargs   �B/usr/local/apps/python3/lib/python3.11/test/test_keywordonlyarg.py�posonly_sumrs(���c�#�h�h���U�\�\�^�^�!4�!4�4�4���k1c��||zSr��r�k2s  r�keywordonly_sumr
���
��7�Nr
c��||zSrrrs  r�keywordonly_nodefaults_sumrrr
c�P�||zt|�����zSrr)rrr
s   r�keywordonly_and_kwarg_sumrs!��
��7�S������(�(�(�(r
�rc�8�||z|z|zt|��zSr)r)�a�brrr	s     r�
mixedargs_sumrs���q�5�2�:��?�S��X�X�%�%r
c�|�||z|z|zt|��zt|�����zSrr)rrrrr	�kwargss      r�mixedargs_sum2r!s4���q�5�2�:��?�S��X�X�%��F�M�M�O�O�(<�(<�<�<r
F��reversec�>�tt|��|���S�Nr"��sorted�list)r#�numss  r�sortnumr*s���$�t�*�*�g�.�.�.�.r
c�>�tt|��|���Sr%r&)r#�wordsr s   r�	sortwordsr-s���$�u�+�+�w�/�/�/�/r
c�&�eZdZdd�d�Zd�Zd�ZdS)�Foorrc�"�||_||_dSrr��selfrrs   r�__init__zFoo.__init__����������r
c�"�||_||_dSrr)r2�p1rrs    r�setzFoo.setr4r
c� �|j|jzSrr�r2s rrzFoo.sum"s���w��� � r
N)�__name__�
__module__�__qualname__r3r7rrr
rr/r/sN������!"���������!�!�!�!�!r
r/c�V�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
S)�KeywordOnlyArgTestCasec�D�d�}|�t||��dS)Nc�(�t|dd��dS)N�<test>�single)�compile)�ss r�shouldRaiseSyntaxErrorzNKeywordOnlyArgTestCase.assertRaisesSyntaxError.<locals>.shouldRaiseSyntaxError's���A�x��*�*�*�*�*r
)�assertRaises�SyntaxError)r2�codestrrEs   r�assertRaisesSyntaxErrorz.KeywordOnlyArgTestCase.assertRaisesSyntaxError&s0��	+�	+�	+����+�'=�w�G�G�G�G�Gr
c�V�|�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
�rIr9s r�$testSyntaxErrorForFunctionDefinitionz;KeywordOnlyArgTestCase.testSyntaxErrorForFunctionDefinition+s����$�$�%=�>�>�>��$�$�%F�G�G�G��$�$�%H�I�I�I��$�$�%J�K�K�K��$�$�%D�E�E�E��$�$�%H�I�I�I��$�$�%J�K�K�K��$�$�%M�N�N�N�N�Nr
c��dd�d�td��D����z}t|dd��dd�d�td��D����z}t|dd��dS)	Nzdef f(%s):
  pass
z, c3� K�|]	}d|zV��
dS�zi%dNr��.0�is  r�	<genexpr>zDKeywordOnlyArgTestCase.testSyntaxForManyArguments.<locals>.<genexpr>7s&����3R�3R�!�E�A�I�3R�3R�3R�3R�3R�3Rr
i,rArBzdef f(*, %s):
  pass
c3� K�|]	}d|zV��
dSrOrrPs  rrSzDKeywordOnlyArgTestCase.testSyntaxForManyArguments.<locals>.<genexpr>:s&����6U�6U�Q�u�q�y�6U�6U�6U�6U�6U�6Ur
)�join�rangerC)r2�fundefs  r�testSyntaxForManyArgumentsz1KeywordOnlyArgTestCase.testSyntaxForManyArguments5s���'�$�)�)�3R�3R�u�S�z�z�3R�3R�3R�*R�*R�R�����(�+�+�+�*�T�Y�Y�6U�6U�%�PS�*�*�6U�6U�6U�-U�-U�U�����(�+�+�+�+�+r
c��ddd�d�}|�t��5}|ddd��ddd��n#1swxYwY|j�d�}|�t	|j��|��dS)N)�cc��dSrr�rrrZs   r�fzCKeywordOnlyArgTestCase.testTooManyPositionalErrorMessage.<locals>.f>s���Dr
���z:() takes from 1 to 2 positional arguments but 3 were givenr)rF�	TypeErrorr<�assertEqual�str�	exception)r2r]�exc�expecteds    r�!testTooManyPositionalErrorMessagez8KeywordOnlyArgTestCase.testTooManyPositionalErrorMessage=s���	�d�	�	�	�	�	�
�
�
�y�
)�
)�	�S�
�A�a��A�J�J�J�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��~�<�<�<������S�]�+�+�X�6�6�6�6�6s�<�A�Ac�Z�|�d��|�d��dS)Nz
f(p, k=1, p2)zf(p, k1=50, *(1,2), k1=100)rKr9s r�testSyntaxErrorForFunctionCallz5KeywordOnlyArgTestCase.testSyntaxErrorForFunctionCallFs1���$�$�_�5�5�5��$�$�%B�C�C�C�C�Cr
c��|�ttd��|�ttd��|�ttd��	tdd���|�d��n#t$rYnwxYw	td���|�d��dS#t$rYdSwxYw)Nr�d��)r�non_existing_argzshould raise TypeErrorr_r)rFrarrr/�failr9s r�2testRaiseErrorFuncallWithUnexpectedKeywordArgumentzIKeywordOnlyArgTestCase.testRaiseErrorFuncallWithUnexpectedKeywordArgumentJs������)�_�b�9�9�9����)�%?��D�D�D����)�S�"�-�-�-�	��s�S�9�9�9�9��I�I�.�/�/�/�/���	�	�	��D�	����	�&�!�,�,�,�,��I�I�.�/�/�/�/�/���	�	�	��D�D�	���s$�%&B�
B�B�%C�
C�Cc��|�dtd����|�dtdiddi����|�dtdgd�R���|�dtdgd�Ridd	i����|�dtd�
����|�dtdd�����|�dtdd�����|�dtddd�����|�dtd ddd�dd	d
�����|�dt	dd�����|�dt	ddd�����|�dt	dddd	�����|�dt	dddd	d�����|�dtdd�����|�dtddd�����|�dtdddd	�����|�dtdddd	d�����|�dtdddd	dd�����|�dtddd	iddd�����|�dt
d��������|�dt
dd��������|�gd�tddd����|�gd�tdddd�����|�gd�tddd����|�gd�tdddd�����|�gd�tddddd�����dS)!Nr^r`�2r_�)r_r`�
�4�rr)rr�k3)rrr���)r^r_r`r)rrv)r`r_r^Tr"r\rrZr)rZrr�ignore)r#rz)r^r)
rbrrrrr!r/rr*r-r9s r�testFunctionCallz'KeywordOnlyArgTestCase.testFunctionCallYsP������K��N�N�+�+�+�����k�6�6�s�1�g�6�6�7�7�7������A� 5�u� 5� 5� 5�6�6�6�����+�a�"A��"A�"A�"A�#�a��"A�"A�B�B�B�����O�q�1�1�1�2�2�2�����o��q�9�9�9�:�:�:�����7�1��C�C�C�D�D�D����� 9�Q�1�� K� K� K�L�L�L�����2�E�a�A�E�E�;<��m�m�E�E�	F�	F�	F�	
����m�A�!�4�4�4�5�5�5�����
�a��q� 9� 9� 9�:�:�:�����-��1��q�"A�"A�"A�B�B�B�����M�!�Q��a�A�$F�$F�$F�G�G�G�����n�Q�1�5�5�5�6�6�6������q�!�� :� :� :�;�;�;�����.��A�!��"B�"B�"B�C�C�C�����N�1�a��q�Q�$G�$G�$G�H�H�H�����'��1�a�A�!��B�B�B�	D�	D�	D�����'�J�J�A�J�q�q�9I�9I�J�J�	L�	L�	L�	
����C�1�I�I�I�M�M�O�O�,�,�,�����c�Q�!�n�n�n�0�0�2�2�3�3�3�������'�!�A�a�.�.�1�1�1�������'�!�A�a��">�">�">�?�?�?�������	�#�c�#�(>�(>�?�?�?�������	�#�c�#�t�(L�(L�(L�M�M�M�������"�3�s�3��X�N�N�N�	P�	P�	P�	P�	Pr
c��ddd�d�}|�d|jj��|�ddi|j��ddi|_	|dd�	��|�d
��dS#t
$rYdSwxYw)Nrrc��||z|z|zSrr)r6�p2rrs    r�fooz2KeywordOnlyArgTestCase.testKwDefaults.<locals>.foo�s����7�R�<�"�$�$r
r_rrr^rsrz&__kwdefaults__ is not properly changed�r)rb�__code__�co_kwonlyargcount�__kwdefaults__rnra)r2rs  r�testKwDefaultsz%KeywordOnlyArgTestCase.testKwDefaults�s���	%�1�	%�	%�	%�	%�	%�	
����C�L�:�;�;�;����$�q��3�#5�6�6�6�"�1�X���	��C��R�L�L�L�L��I�I�>�?�?�?�?�?���	�	�	��D�D�	���s�"A3�3
B�Bc�4�Gd�d��}|�|���dd���d��|�|�|��dd���d��|�t|jdd���dS)Nc��eZdZddd�d�ZdS)�;KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Exampler^r_rc�
�||fSrrr1s   rr]z=KeywordOnlyArgTestCase.test_kwonly_methods.<locals>.Example.f�s���2�v�
r
N�r:r;r<r]rr
r�Exampler��s2�������A�
�
�
�
�
�
�
r
r�r^r_r)r^r_)rbr]rFra)r2r�s  r�test_kwonly_methodsz*KeywordOnlyArgTestCase.test_kwonly_methods�s���	�	�	�	�	�	�	�	�	
����������a��0�0�&�9�9�9�������7�7�9�9��q��9�9�6�B�B�B����)�W�Y�1���;�;�;�;�;r
c��td�d�dS)Nrc��dSrrrs r�<lambda>z8KeywordOnlyArgTestCase.test_issue13343.<locals>.<lambda>�s��t�r
)�unittestr9s r�test_issue13343z&KeywordOnlyArgTestCase.test_issue13343�s���#�#�#�#�#�#�#r
c��Gd�d��}|�|�����d��dS)Nc��eZdZdd�d�ZdS)�/KeywordOnlyArgTestCase.test_mangling.<locals>.X�*)�_X__ac��|Srr)r2r�s  rr]z1KeywordOnlyArgTestCase.test_mangling.<locals>.X.f�s���
r
Nr�rr
r�Xr��s0������!�
�
�
�
�
�
�
r
r�r�)rbr])r2r�s  r�
test_manglingz$KeywordOnlyArgTestCase.test_mangling�sV��	�	�	�	�	�	�	�	�	
�����������"�%�%�%�%�%r
c���d}|�t��5}|tfttd�d�}ddd��n#1swxYwY|�t
|j��d��|�t��5}|tfttd�d�}ddd��n#1swxYwY|�t
|j��d��dS)Nr�)�y�zc��dSrr��v�xr�r�s    rr]z?KeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.f�s���r
zname 'b' is not definedc��dSrrr�s    rr�zFKeywordOnlyArgTestCase.test_default_evaluation_order.<locals>.<lambda>�s��d�r
)rF�	NameErrorrrZ�drbrcrd)r2r�errr]s    r�test_default_evaluation_orderz4KeywordOnlyArgTestCase.test_default_evaluation_order�s^����
�
�
�y�
)�
)�	�S���
��a�
�
�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	
����S�]�+�+�-F�G�G�G�
�
�
�y�
)�
)�	3�S��a�2�a�1�2�2�2�2�A�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3�����S�]�+�+�-F�G�G�G�G�Gs#�A�A�
A�B6�6B:�=B:N)r:r;r<rIrLrXrgriror{r�r�r�r�r�rr
rr>r>%s�������H�H�H�
O�O�O�,�,�,�7�7�7�D�D�D�
�
�
�&P�&P�&P�P���<�<�<�$�$�$�&�&�&�	H�	H�	H�	H�	Hr
r>�__main__r�)�
__author__�	__email__r�rrrrrr!r*r-r/�TestCaser>r:�mainrr
r�<module>r�sl��E�
�
�'�	�����5�5�5����������)�)�)�&�q�&�&�&�&�&�=��=�=�=�=�=�!�/�/�/�/�/�$�0�0�0�0�0�!�!�!�!�!�!�!�!�IH�IH�IH�IH�IH�X�.�IH�IH�IH�X�z����H�M�O�O�O�O�O��r