diff -r c59d81b802f8 Lib/idlelib/idle_test/test_calltips.py --- a/Lib/idlelib/idle_test/test_calltips.py Tue Mar 31 16:35:35 2015 +0200 +++ b/Lib/idlelib/idle_test/test_calltips.py Tue Mar 31 18:23:00 2015 +0300 @@ -52,7 +52,8 @@ class Get_signatureTest(unittest.TestCas def gtest(obj, out): self.assertEqual(signature(obj), out) - gtest(List, List.__doc__) + if List.__doc__ is not None: + gtest(List, List.__doc__) gtest(list.__new__, 'Create and return a new object. See help(type) for accurate signature.') gtest(list.__init__, @@ -108,20 +109,23 @@ bytes() -> empty bytes object''') def t5(a, b=None, *args, **kw): 'doc' t5.tip = "(a, b=None, *args, **kw)" + doc = '\ndoc' if t1.__doc__ is not None else '' for func in (t1, t2, t3, t4, t5, TC): - self.assertEqual(signature(func), func.tip + '\ndoc') + self.assertEqual(signature(func), func.tip + doc) def test_methods(self): + doc = '\ndoc' if TC.__doc__ is not None else '' for meth in (TC.t1, TC.t2, TC.t3, TC.t4, TC.t5, TC.t6, TC.__call__): - self.assertEqual(signature(meth), meth.tip + "\ndoc") - self.assertEqual(signature(TC.cm), "(a)\ndoc") - self.assertEqual(signature(TC.sm), "(b)\ndoc") + self.assertEqual(signature(meth), meth.tip + doc) + self.assertEqual(signature(TC.cm), "(a)" + doc) + self.assertEqual(signature(TC.sm), "(b)" + doc) def test_bound_methods(self): # test that first parameter is correctly removed from argspec + doc = '\ndoc' if TC.__doc__ is not None else '' for meth, mtip in ((tc.t1, "()"), (tc.t4, "(*args)"), (tc.t6, "(self)"), (tc.__call__, '(ci)'), (tc, '(ci)'), (TC.cm, "(a)"),): - self.assertEqual(signature(meth), mtip + "\ndoc") + self.assertEqual(signature(meth), mtip + doc) def test_starred_parameter(self): # test that starred first parameter is *not* removed from argspec