summaryrefslogtreecommitdiff
path: root/repoze/bfg/path.py
diff options
context:
space:
mode:
Diffstat (limited to 'repoze/bfg/path.py')
-rw-r--r--repoze/bfg/path.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/repoze/bfg/path.py b/repoze/bfg/path.py
index bb27e556a..b5850968f 100644
--- a/repoze/bfg/path.py
+++ b/repoze/bfg/path.py
@@ -35,6 +35,12 @@ def package_name(pkg_or_module):
return pkg_name
return pkg_name.rsplit('.', 1)[0]
+def package_of(pkg_or_module):
+ """ Return the package of a module or return the package itself """
+ pkg_name = package_name(pkg_or_module)
+ __import__(pkg_name)
+ return sys.modules[pkg_name]
+
def caller_package(level=2, caller_module=caller_module):
# caller_module in arglist for tests
module = caller_module(level+1)