Example #1
0
 def test_onlyTopModules(self):
     """ Verify that the iterModules API will only return top-level modules and
     packages, not submodules or subpackages.  """
     for module in modules.iterModules():
         self.failIf(
             '.' in module.name,
             "no nested modules should be returned from iterModules: %r"
             % (module.filePath))
Example #2
0
File: pnp.py Project: nosklo/scibby
#!/usr/bin/env python
import sys
import os.path

from twisted.python.modules import iterModules

from scibby.config import values as configuration

configuration.plugins_directory = os.path.expanduser(configuration.plugins_directory)

sys.path.append(configuration.plugins_directory)

plugins = {}

# Get list of all plugins and import them
# TODO make the modules be packages and have a file describing them as an actual
# scibby plugin so not everything in this directory gets imported
for modinfo in iterModules():
    if os.path.dirname(modinfo.filePath.path) == configuration.plugins_directory:
        filename = os.path.basename(modinfo.filePath.path)
        modulename = os.path.splitext(filename)[0]

        plugins[modulename] = __import__(modulename, globals(), locals())