Commit 34906550 authored by Terry Jan Reedy's avatar Terry Jan Reedy

Issue #18539: Calltips now work for float default arguments.

parent d5648ac3
......@@ -163,7 +163,7 @@ def get_arg_text(ob):
if fob.func_code.co_flags & 0x8:
items.append("***")
arg_text = ", ".join(items)
arg_text = "(%s)" % re.sub("\.\d+", "<tuple>", arg_text)
arg_text = "(%s)" % re.sub("(?<!\d)\.\d+", "<tuple>", arg_text)
# See if we can use the docstring
doc = getattr(ob, "__doc__", "")
if doc:
......
......@@ -10,5 +10,11 @@ class Test_get_entity(unittest.TestCase):
def test_good_entity(self):
self.assertIs(CTi.get_entity('int'), int)
class Py2Test(unittest.TestCase):
def test_paramtuple_float(self):
# 18539: (a,b) becomes '.0' in code object; change that but not float
def f((a,b), c=0.0): pass
self.assertEqual(ct.get_arg_text(f), '(<tuple>, c=0.0)')
if __name__ == '__main__':
unittest.main(verbosity=2, exit=False)
......@@ -104,6 +104,8 @@ IDLE
changed when it has not been changed. This fix followed the addition of a
test file originally written by Phil Webster (the issue's main goal).
- Issue #18539: Calltips now work for float default arguments.
- Issue #7136: In the Idle File menu, "New Window" is renamed "New File".
Patch by Tal Einat, Roget Serwy, and Todd Rovito.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment