<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
     f&                 @   s   d Z ddlmZ ddlZddlZddlZddlZG dd dZe Zej	Z
ejZG dd dejZG dd	 d	ejZed
krejdd dS )zTest calltip, coverage 60%    )calltipNc               @   s   e Zd ZdZdZd"ddZde_dd Zd	e_d#d
dZde_dd Zde_dd Z	de	_d$ddZ
de
_dd Zde_dd Zde_dd Zedd Zed d! ZdS )%TCdocz(ai=None, *b)Nc             G   s   dS )r   N )selfaibr   r   C/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_calltip.py__init__       zTC.__init__z(self, ai=None, *b)c             C   s   dS )r   Nr   )r   r   r   r	   t1   r   zTC.t1z(self)c             C   s   dS )r   Nr   )r   r   r   r   r   r	   t2   r   zTC.t2z(self, ai, b=None)c             G   s   dS )r   Nr   )r   r   argsr   r   r	   t3   r   zTC.t3z(self, ai, *args)c             G   s   dS )r   Nr   )r   r   r   r   r	   t4   r   zTC.t4z(self, *args)c             O   s   dS )r   Nr   )r   r   r   r   kwr   r   r	   t5   r   zTC.t5z(self, ai, b=None, *args, **kw)c             C   s   dS )r   Nr   )Znor   r   r   r	   t6   r   zTC.t6z
(no, self)c             C   s   dS )r   Nr   )r   cir   r   r	   __call__   r   zTC.__call__z
(self, ci)c             C   s   d S )Nr   )r   r   r   r	   nd   r   zTC.ndc             C   s   dS )r   Nr   )clsar   r   r	   cm    s    zTC.cmc             C   s   dS )r   Nr   )r   r   r   r	   sm"   s    zTC.sm)N)N)N)__name__
__module____qualname____doc__tipr
   r   r   r   r   r   r   r   r   classmethodr   staticmethodr   r   r   r   r	   r      s*   


r   c               @   s   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd ZdS ) Get_argspecTestc                s    fdd}G dd dt }G dd d}|jd k	rN||dtj d|j  |t jd	 |t jd
tj d d  tjd }|t jd|  ||jd|  |g jd|  |tjd || t	 t
d}|t
jd ||jd d S )Nc                s     t| | d S )N)assertEqualget_spec)objout)r   r   r	   tiptest5   s    z.Get_argspecTest.test_builtins.<locals>.tiptestc               @   s   e Zd ZdZdS )z+Get_argspecTest.test_builtins.<locals>.Listz
List() docN)r   r   r   r   r   r   r   r	   List9   s    r(   c               @   s   e Zd ZdZdS )z)Get_argspecTest.test_builtins.<locals>.SBN)r   r   r   r   r   r   r   r	   SB<   s    r)   z(iterable=(), /)
zY(*args, **kwargs)
Create and return a new object.  See help(type) for accurate signature.z(self, /, *args, **kwargs)z>Initialize self.  See help(type(self)) for accurate signature.z&
Append object to the end of the list.z(self, object, /)z(object, /)zmethod(function, instance) aO  (pattern, repl, string, count=0, flags=0)
Return the string obtained by replacing the leftmost
non-overlapping occurrences of the pattern in string by the
replacement repl.  repl can be either a string or a callable;
if a string, backslash escapes in it are processed.  If it is
a callable, it's passed the Match object and must returnzm(repl, string, count=0)
Return the string obtained by replacing the leftmost non-overlapping occurrences o...)listr   r   Z_argument_positional__new__r
   appendtypes
MethodTypedefault_tiprecompilesub)r   r'   r(   r)   Z
append_docpr   )r   r	   test_builtins3   s.    

zGet_argspecTest.test_builtinsc             C   s"   t jjd k	r| tt jd d S )Nz(width=70, initial_indent='', subsequent_indent='', expand_tabs=True,
    replace_whitespace=True, fix_sentence_endings=False, break_long_words=True,
    drop_whitespace=True, break_on_hyphens=True, tabsize=8, *, max_lines=None,
    placeholder=' [...]'))textwrapZTextWrapperr   r#   r$   )r   r   r   r	   test_signature_wrap`   s    z#Get_argspecTest.test_signature_wrapc       
   
   C   s   ddd}ddd}ddd}t j}d	| d
 }d	| d }d	| d | d }xL||f||f||fgD ]2\}}	| j||	d | t||	 W d Q R X qhW d S )Ndaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac             S   s   d S )Nr   )sr   r   r	   fooj   s    z3Get_argspecTest.test_properly_formated.<locals>.fooc             S   s   dS )zHello GuidoNr   )r:   r   r   r	   barm   s    z3Get_argspecTest.test_properly_formated.<locals>.bardbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc             S   s   d S )Nr   )r:   zr   r   r	   bazq   s    z3Get_argspecTest.test_properly_formated.<locals>.bazzV(s='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
zaaaaaaaaaaaaaaaaaaa')z!aaaaaaaaaaaaaaaaaaa')
Hello GuidozRaaaaaaaaaaaaaaaaaaa', z='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
z.bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'))funcr   )r9   )r9   )r9   r=   )r   Z_INDENTsubTestr#   r$   )
r   r;   r<   r?   indentZsfooZsbarZsbazr@   r   r   r   r	   test_properly_formatedh   s    


 z&Get_argspecTest.test_properly_formatedc             C   s6   dd }d|_ | t|ddtjd  d   d S )Nc               S   s   d S )Nr   r   r   r   r	   f   r   z2Get_argspecTest.test_docline_truncation.<locals>.fA,  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz()
r      z...)r   r#   r$   r   Z	_MAX_COLS)r   rD   r   r   r	   test_docline_truncation   s    z'Get_argspecTest.test_docline_truncationc             C   sL   |  ttd |  ttd dd }d|_|  t|ddtj   d S )NzFrange(stop) -> range object
range(start, stop[, step]) -> range objectzbytes(iterable_of_ints) -> bytes
bytes(string, encoding[, errors]) -> bytes
bytes(bytes_or_buffer) -> immutable copy of bytes_or_buffer
bytes(int) -> bytes object of size given by the parameter initialized with null bytes
bytes() -> empty bytes objectc               S   s   d S )Nr   r   r   r   r	   rD      r   z3Get_argspecTest.test_multiline_docstring.<locals>.fza
a
a
a
a
a
a
a
a
a
a
a
a
a
a
z()z
a)r#   r$   rangebytesr   r   Z
_MAX_LINES)r   rD   r   r   r	   test_multiline_docstring   s    

z(Get_argspecTest.test_multiline_docstringc          
   C   s   dd }d|_ ddd}d|_ dd }d	|_ d
d }d|_ ddd}d|_ |jd k	rXdnd}xF|||||tfD ]2}| j|d | t||j |  W d Q R X qnW d S )Nc               S   s   dS )r   Nr   r   r   r   r	   r      r   z*Get_argspecTest.test_functions.<locals>.t1z()c             S   s   dS )r   Nr   )r   r   r   r   r	   r      r   z*Get_argspecTest.test_functions.<locals>.t2z(a, b=None)c             W   s   dS )r   Nr   )r   r   r   r   r	   r      r   z*Get_argspecTest.test_functions.<locals>.t3z
(a, *args)c              W   s   dS )r   Nr   )r   r   r   r	   r      r   z*Get_argspecTest.test_functions.<locals>.t4z(*args)c             _   s   dS )r   Nr   )r   r   r   r   r   r   r	   r      r   z*Get_argspecTest.test_functions.<locals>.t5z(a, b=None, *args, **kw)z
docr+   )r@   )N)N)r   r   r   rA   r#   r$   )r   r   r   r   r   r   r   r@   r   r   r	   test_functions   s    

zGet_argspecTest.test_functionsc          
   C   s   t jd k	rdnd}xVt jt jt jt jt jt jt jfD ]2}| j	|d | 
t||j|  W d Q R X q4W | 
tt jd|  | 
tt jd|  d S )Nz
docr+   )methz(a)z(b))r   r   r   r   r   r   r   r   r   rA   r#   r$   r   r   r   )r   r   rK   r   r   r	   test_methods   s    &$zGet_argspecTest.test_methodsc          
   C   s   t jd k	rdnd}xltjdftjdftjdftjdftdft jdffD ]6\}}| j||d | 	t
|||  W d Q R X qFW d S )	Nz
docr+   z()z(*args)z(self)z(ci)z(a))rK   mtip)r   r   tcr   r   r   r   r   rA   r#   r$   )r   r   rK   rM   r   r   r	   test_bound_methods   s    z"Get_argspecTest.test_bound_methodsc          
   C   sd   G dd d}| }xJ|j df|j dffD ]2\}}| j||d | t|| W d Q R X q*W d S )Nc               @   s   e Zd Zdd ZdS )z1Get_argspecTest.test_starred_parameter.<locals>.Cc              W   s   d S )Nr   )r   r   r   r	   m1   r   z4Get_argspecTest.test_starred_parameter.<locals>.C.m1N)r   r   r   rP   r   r   r   r	   C   s   rQ   z(*args))rK   rM   )rP   rA   r#   r$   )r   rQ   crK   rM   r   r   r	   test_starred_parameter   s
    z&Get_argspecTest.test_starred_parameterc             C   sL   G dd d}G dd d}t j}| t| j| | t| | d S )Nc               @   s   e Zd Zdd ZdS )z7Get_argspecTest.test_invalid_method_get_spec.<locals>.Cc              [   s   d S )Nr   )kwargsr   r   r	   m2   r   z:Get_argspecTest.test_invalid_method_get_spec.<locals>.C.m2N)r   r   r   rU   r   r   r   r	   rQ      s   rQ   c               @   s   e Zd Zdd ZdS )z:Get_argspecTest.test_invalid_method_get_spec.<locals>.Testc             S   s   d S )Nr   )r   r   r   r	   r      r   zCGet_argspecTest.test_invalid_method_get_spec.<locals>.Test.__call__N)r   r   r   r   r   r   r   r	   Test   s   rV   )r   Z_invalid_methodr#   r$   rU   )r   rQ   rV   rM   r   r   r	   test_invalid_method_get_spec   s
    z,Get_argspecTest.test_invalid_method_get_specc             C   s   d}t jd|dkstd S )Nu   (AΑАאاअḀあ, a)r+   z(a))r   Z_first_paramr4   AssertionError)r   Zunir   r   r	   test_non_ascii_name   s    z#Get_argspecTest.test_non_ascii_namec          
   C   sP   xJt jdftjdffD ]2\}}| j||d | t|| W d Q R X qW d S )Nz(self)z())rK   rM   )r   r   rN   rA   r#   r$   )r   rK   rM   r   r   r	   test_no_docstring   s    z!Get_argspecTest.test_no_docstringc          
   C   s   G dd d}G dd d|}G dd d|}x^|t f|t f| df| df| d	ffD ]2\}}| j||d
 | t|| W d Q R X qXW d S )Nc               @   s   e Zd Zdd ZdS )z8Get_argspecTest.test_buggy_getattr_class.<locals>.NoCallc             S   s   t d S )N)
IndexError)r   namer   r   r	   __getattr__   s    zDGet_argspecTest.test_buggy_getattr_class.<locals>.NoCall.__getattr__N)r   r   r   r]   r   r   r   r	   NoCall   s   r^   c               @   s   e Zd Zdd ZdS )z7Get_argspecTest.test_buggy_getattr_class.<locals>.CallAc             S   s   d S )Nr   )r   r   r   r   r	   r      s    z@Get_argspecTest.test_buggy_getattr_class.<locals>.CallA.__call__N)r   r   r   r   r   r   r   r	   CallA   s   r_   c               @   s   e Zd Zdd ZdS )z7Get_argspecTest.test_buggy_getattr_class.<locals>.CallBc             S   s   d S )Nr   )Zouir   r   rR   r   r   r	   r      s    z@Get_argspecTest.test_buggy_getattr_class.<locals>.CallB.__call__N)r   r   r   r   r   r   r   r	   CallB   s   r`   r+   z(ci)z	(a, b, c))rK   rM   )r1   rA   r#   r$   )r   r^   r_   r`   rK   rM   r   r   r	   test_buggy_getattr_class   s    z(Get_argspecTest.test_buggy_getattr_classc          
   C   sv   G dd dt }G dd d|d}xN|tf|tf| dffD ]2\}}| j||d | t|| W d Q R X q<W d S )Nc               @   s   e Zd Zei ji jZdS )z2Get_argspecTest.test_metaclass_class.<locals>.TypeN)r   r   r   property__getitem____setitem__	__class__r   r   r   r	   Type   s   rf   c               @   s   e Zd ZdZdS )z4Get_argspecTest.test_metaclass_class.<locals>.Objectre   N)r   r   r   	__slots__r   r   r   r	   Object   s   rh   )	metaclassr+   )rK   rM   )typer1   rA   r#   r$   )r   rf   rh   rK   rM   r   r   r	   test_metaclass_class   s    z$Get_argspecTest.test_metaclass_classc          
   C   sF   x@ddddg i fD ],}| j |d | t|d W d Q R X qW d S )Nr   g        0   0)r%   r+   )rA   r#   r$   )r   r%   r   r   r	   test_non_callables   s    z"Get_argspecTest.test_non_callablesN)r   r   r   r6   r8   rC   rF   rI   rJ   rL   rO   rS   rW   rY   rZ   ra   rk   rn   r   r   r   r	   r"   +   s   -		

r"   c               @   s   e Zd Zdd Zdd ZdS )Get_entityTestc             C   s   |  td d S )Nz1/0)ZassertIsNoner   
get_entity)r   r   r   r	   test_bad_entity   s    zGet_entityTest.test_bad_entityc             C   s   |  tdt d S )Nint)ZassertIsr   rp   rr   )r   r   r   r	   test_good_entity  s    zGet_entityTest.test_good_entityN)r   r   r   rq   rs   r   r   r   r	   ro      s   ro   __main__   )	verbosity)r   Zidlelibr   Zunittestr7   r/   r2   r   rN   Z_default_callable_argspecr1   Zget_argspecr$   ZTestCaser"   ro   r   mainr   r   r   r	   <module>   s    U