From: Georg Brandl Date: Sat, 30 Sep 2006 11:06:55 +0000 (+0000) Subject: Bug #1560617: in pyclbr, return full module name not only for classes, X-Git-Tag: v2.5.1c1~361 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7037745be72691f7d956a5873a4e925b8485c9a9;p=python Bug #1560617: in pyclbr, return full module name not only for classes, but also for functions. (backport from rev. 52069) --- diff --git a/Lib/pyclbr.py b/Lib/pyclbr.py index 073122417d..079b38c411 100644 --- a/Lib/pyclbr.py +++ b/Lib/pyclbr.py @@ -172,7 +172,7 @@ def _readmodule(module, path, inpackage=None): # else it's a nested def else: # it's a function - dict[meth_name] = Function(module, meth_name, file, lineno) + dict[meth_name] = Function(fullmodule, meth_name, file, lineno) stack.append((None, thisindent)) # Marker for nested fns elif token == 'class': lineno, thisindent = start diff --git a/Lib/test/test_pyclbr.py b/Lib/test/test_pyclbr.py index 6d7d5ba96e..5188bb3502 100644 --- a/Lib/test/test_pyclbr.py +++ b/Lib/test/test_pyclbr.py @@ -93,6 +93,9 @@ class PyclbrTest(TestCase): py_item = getattr(module, name) if isinstance(value, pyclbr.Function): self.assert_(isinstance(py_item, (FunctionType, BuiltinFunctionType))) + if py_item.__module__ != moduleName: + continue # skip functions that came from somewhere else + self.assertEquals(py_item.__module__, value.module) else: self.failUnless(isinstance(py_item, (ClassType, type))) if py_item.__module__ != moduleName: diff --git a/Misc/NEWS b/Misc/NEWS index 56e0e2beb6..e8a3b088e2 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -41,6 +41,9 @@ Extension Modules Library ------- +- Bug #1560617: in pyclbr, return full module name not only for classes, + but also for functions. + - Bug #1566602: correct failure of posixpath unittest when $HOME ends with a slash.