From 569ed043579f08a7f6faf3b3770401c541cc0fc9 Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Fri, 12 Jun 2009 20:49:02 -0400 Subject: Get the flat_rootname right for nested CodeUnits. Thanks, Christian Heimes. --- coverage/codeunit.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'coverage/codeunit.py') diff --git a/coverage/codeunit.py b/coverage/codeunit.py index a4e029b..87782cd 100644 --- a/coverage/codeunit.py +++ b/coverage/codeunit.py @@ -66,7 +66,7 @@ class CodeUnit: self.filename = file_locator.canonical_filename(f) if hasattr(morf, '__name__'): - n = morf.__name__ + n = modname = morf.__name__ self.relative = True else: n = os.path.splitext(morf)[0] @@ -76,7 +76,9 @@ class CodeUnit: else: self.relative = True n = rel + modname = None self.name = n + self.modname = modname def __repr__(self): return "" % (self.name, self.filename) @@ -94,8 +96,11 @@ class CodeUnit: For example, the file a/b/c.py might return 'a_b_c' """ - root = os.path.splitdrive(os.path.splitext(self.name)[0])[1] - return root.replace('\\', '_').replace('/', '_') + if self.modname: + return self.modname.replace('.', '_') + else: + root = os.path.splitdrive(os.path.splitext(self.name)[0])[1] + return root.replace('\\', '_').replace('/', '_') def source_file(self): """Return an open file for reading the source of the code unit.""" -- cgit v1.2.1