B YI~dÑ&ã@sˆddlmZddlZddlZddlZddlZGdd„dƒZeƒZejZ ej Z Gdd„dej ƒZ Gdd„dej ƒZed kr„ejd d �dS) é)ÚcalltipNc@s¦eZdZdZd!dd„Zde_dd„Zde_d"d d „Zd e_d d „Zde_dd„Zde_d#dd„Z de _dd„Z de _dd„Z de _dd„Z e dd„ƒZedd „ƒZdS)$ÚTCz (ai=None, *b)NcGsdS)N©)ÚselfÚaiÚbrrúC/opt/alt/python37/lib64/python3.7/idlelib/idle_test/test_calltip.pyÚ__init__óz TC.__init__z(self, ai=None, *b)cCsdS)Nr)rrrrÚt1r zTC.t1z(self)cCsdS)Nr)rrrrrrÚt2r zTC.t2z(self, ai, b=None)cGsdS)Nr)rrÚargsrrrÚt3r zTC.t3z(self, ai, *args)cGsdS)Nr)rr rrrÚt4r zTC.t4z (self, *args)cOsdS)Nr)rrrr ÚkwrrrÚt5r zTC.t5z(self, ai, b=None, *args, **kw)cCsdS)Nr)ÚnorrrrÚt6r zTC.t6z (no, self)cCsdS)Nr)rÚcirrrÚ__call__r z TC.__call__z (self, ci)cCsdS)Nr)rrrrÚndr zTC.ndcCsdS)Nr)ÚclsÚarrrÚcm szTC.cmcCsdS)Nr)rrrrÚsm"szTC.sm)N)N)N)Ú__name__Ú __module__Ú __qualname__Útipr r r rrrrrrÚ classmethodrÚ staticmethodrrrrrr s(    rc@s„eZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„ZdS) ÚGet_argspecTestcsì‡fdd„}Gdd„dtƒ}Gdd„dƒ}|jdk rN||dtj›d|j›�ƒ|tjd ƒ|tjd tjdd ƒtjd }|tjd |ƒ||jd |ƒ|gjd|ƒ|tjdƒ||ƒt ƒt   d¡}|t j dƒ||j dƒdS)Ncsˆ t|ƒ|¡dS)N)Ú assertEqualÚget_spec)ÚobjÚout)rrrÚtiptest5sz.Get_argspecTest.test_builtins..tiptestc@s eZdZdS)z+Get_argspecTest.test_builtins..ListN)rrrrrrrÚList9sr'c@seZdZdZdS)z)Get_argspecTest.test_builtins..SBN)rrrrrrrrÚSB<sr(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, /)zmethod(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...) ÚlistÚ__doc__rZ_argument_positionalÚ__new__r ÚappendÚtypesÚ MethodTypeÚ default_tipÚreÚcompileÚsub)rr&r'r(Z append_docÚpr)rrÚ test_builtins3s.      zGet_argspecTest.test_builtinscCs"tjjdk r| ttjƒd¡dS)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#)rrrrÚtest_signature_wrap`s  z#Get_argspecTest.test_signature_wrapc Cs¢ddd„}ddd„}ddd„}tj}d |d }d |d }d |d |d }xL||f||f||fgD]2\}} |j|| d��| t|ƒ| ¡WdQRXqhWdS)NÚdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacSsdS)Nr)ÚsrrrÚfoojsz3Get_argspecTest.test_properly_formated..foocSsdS)Nr)r:rrrÚbarmsz3Get_argspecTest.test_properly_formated..barÚdbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcSsdS)Nr)r:ÚzrrrÚbazqsz3Get_argspecTest.test_properly_formated..bazzV(s='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa zaaaaaaaaaaaaaaaaaaa')z!aaaaaaaaaaaaaaaaaaa') Hello GuidozRaaaaaaaaaaaaaaaaaaa', z='bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb z.bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'))ÚfuncÚdoc)r9)r9)r9r=)rZ_INDENTÚsubTestr"r#) rr;r<r?ÚindentZsfooZsbarZsbazr@rArrrÚtest_properly_formatedhs      z&Get_argspecTest.test_properly_formatedcCs6dd„}d|_| t|ƒddtjdd›�¡dS)NcSsdS)NrrrrrÚf‡r z2Get_argspecTest.test_docline_truncation..fA,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz() réz...)r,r"r#rZ _MAX_COLS)rrErrrÚtest_docline_truncation†sz'Get_argspecTest.test_docline_truncationcCsL| ttƒd¡| ttƒd¡dd„}d|_| t|ƒddtj¡dS)NzFrange(stop) -> range object range(start, stop[, step]) -> range objectzûbytes(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 objectcSsdS)NrrrrrrEšr z3Get_argspecTest.test_multiline_docstring..fza a a a a a a a a a a a a a a z()z a)r"r#ÚrangeÚbytesr,rZ _MAX_LINES)rrErrrÚtest_multiline_docstring‹s  z(Get_argspecTest.test_multiline_docstringc Cs¨dd„}d|_ddd„}d|_dd„}d |_d d „}d |_dd d„}d|_|jdk rXdnd}xF|||||tfD]2}|j|d��| t|ƒ|j|¡WdQRXqnWdS)NcSsdS)Nrrrrrr Ÿr z*Get_argspecTest.test_functions..t1z()cSsdS)Nr)rrrrrr ¡r z*Get_argspecTest.test_functions..t2z (a, b=None)cWsdS)Nr)rr rrrr£r z*Get_argspecTest.test_functions..t3z (a, *args)cWsdS)Nr)r rrrr¥r z*Get_argspecTest.test_functions..t4z(*args)c_sdS)Nr)rrr rrrrr§r z*Get_argspecTest.test_functions..t5z(a, b=None, *args, **kw)z docr*)r@)N)N)rr,rrBr"r#)rr r rrrrAr@rrrÚtest_functionsžs  zGet_argspecTest.test_functionsc Csštjdk rdnd}xVtjtjtjtjtjtjtjfD]2}|j |d��|  t |ƒ|j |¡WdQRXq4W|  t tj ƒd|¡|  t tjƒd|¡dS)Nz docr*)Úmethz(a)z(b))rr,r r rrrrrrBr"r#rrr)rrArLrrrÚ test_methods¯s &$zGet_argspecTest.test_methodsc Cs„tjdk rdnd}xltjdftjdftjdftjdftdftjdffD]6\}}|j||d��|  t |ƒ||¡WdQRXqFWdS) Nz docr*z()z(*args)z(self)z(ci)z(a))rLÚmtip) rr,Útcr rrrrrBr"r#)rrArLrNrrrÚtest_bound_methods·s z"Get_argspecTest.test_bound_methodsc CsdGdd„dƒ}|ƒ}xJ|jdf|jdffD]2\}}|j||d��| t|ƒ|¡WdQRXq*WdS)Nc@seZdZdd„ZdS)z1Get_argspecTest.test_starred_parameter..CcWsdS)Nr)r rrrÚm1Ãr z4Get_argspecTest.test_starred_parameter..C.m1N)rrrrQrrrrÚCÂsrRz(*args))rLrN)rQrBr"r#)rrRÚcrLrNrrrÚtest_starred_parameterÀs z&Get_argspecTest.test_starred_parametercCsLGdd„dƒ}Gdd„dƒ}tj}| t|ƒjƒ|¡| t|ƒƒ|¡dS)Nc@seZdZdd„ZdS)z7Get_argspecTest.test_invalid_method_get_spec..Cc[sdS)Nr)ÚkwargsrrrÚm2Ër z:Get_argspecTest.test_invalid_method_get_spec..C.m2N)rrrrVrrrrrRÊsrRc@seZdZdd„ZdS)z:Get_argspecTest.test_invalid_method_get_spec..TestcSsdS)Nr)rrrrrÍr zCGet_argspecTest.test_invalid_method_get_spec..Test.__call__N)rrrrrrrrÚTestÌsrW)rZ_invalid_methodr"r#rV)rrRrWrNrrrÚtest_invalid_method_get_specÉs z,Get_argspecTest.test_invalid_method_get_speccCsd}dS)Nu(AΑÐ�×�اअḀã�‚, a)r)rZunirrrÚtest_non_ascii_nameÓsz#Get_argspecTest.test_non_ascii_namec CsPxJtjdftjdffD]2\}}|j||d��| t|ƒ|¡WdQRXqWdS)Nz(self)z())rLrN)rrrOrBr"r#)rrLrNrrrÚtest_no_docstringÙsz!Get_argspecTest.test_no_docstringc Cs’Gdd„dƒ}Gdd„d|ƒ}Gdd„d|ƒ}x^|tf|tf|ƒdf|ƒdf|ƒd ffD]2\}}|j||d ��| t|ƒ|¡WdQRXqXWdS) Nc@seZdZdd„ZdS)z8Get_argspecTest.test_buggy_getattr_class..NoCallcSst‚dS)N)Ú IndexError)rÚnamerrrÚ __getattr__àszDGet_argspecTest.test_buggy_getattr_class..NoCall.__getattr__N)rrrr]rrrrÚNoCallßsr^c@seZdZdd„ZdS)z7Get_argspecTest.test_buggy_getattr_class..CallAcSsdS)Nr)rrrrrrãsz@Get_argspecTest.test_buggy_getattr_class..CallA.__call__N)rrrrrrrrÚCallAâsr_c@seZdZdd„ZdS)z7Get_argspecTest.test_buggy_getattr_class..CallBcSsdS)Nr)ZouirrrSrrrræsz@Get_argspecTest.test_buggy_getattr_class..CallB.__call__N)rrrrrrrrÚCallBåsr`r*z(ci)z (a, b, c))rLrN)r1rBr"r#)rr^r_r`rLrNrrrÚtest_buggy_getattr_classÞsz(Get_argspecTest.test_buggy_getattr_classc CsvGdd„dtƒ}Gdd„d|d�}xN|tf|tf|ƒdffD]2\}}|j||d��| t|ƒ|¡WdQRXq.TypeN)rrrÚpropertyÚ __getitem__Ú __setitem__Ú __class__rrrrÚTypeðsrfc@seZdZdZdS)z4Get_argspecTest.test_metaclass_class..ObjectreN)rrrÚ __slots__rrrrÚObjectòsrh)Ú metaclassr*)rLrN)Útyper1rBr"r#)rrfrhrLrNrrrÚtest_metaclass_classïs z$Get_argspecTest.test_metaclass_classc CsFx@ddddgifD],}|j|d��| t|ƒd¡WdQRXqWdS)NrgÚ0ó0)r$r*)rBr"r#)rr$rrrÚtest_non_callablesùsz"Get_argspecTest.test_non_callablesN)rrrr6r8rDrGrJrKrMrPrTrXrYrZrarkrnrrrrr!+s-    r!c@seZdZdd„Zdd„ZdS)ÚGet_entityTestcCs| t d¡¡dS)Nz1/0)Z assertIsNonerÚ get_entity)rrrrÚtest_bad_entityszGet_entityTest.test_bad_entitycCs| t d¡t¡dS)NÚint)ZassertIsrrprr)rrrrÚtest_good_entityszGet_entityTest.test_good_entityN)rrrrqrsrrrrroÿsroÚ__main__é)Ú verbosity)ZidlelibrZunittestr7r/r2rrOZ_default_callable_argspecr1Z get_argspecr#ZTestCaser!rorÚmainrrrrÚs U