# Find right directory when running from source tree
sys.path.insert(0, "bin/python")
-from subunit.run import TestProgram
import optparse
import samba
samba.ensure_external_module("testtools", "testtools")
samba.ensure_external_module("subunit", "subunit/python")
+from subunit.run import SubunitTestRunner, TestProgram
import samba.getopt as options
import samba.tests
-from subunit.run import SubunitTestRunner
parser = optparse.OptionParser("subunitrun [options] <tests>")
credopts = options.CredentialsOptions(parser)
return True
+def import_bundled_package(modulename, location):
+ """Import the bundled version of a package.
+
+ :note: This should only be called if the system version of the package
+ is not adequate.
+
+ :param modulename: Module name to import
+ :param location: Location to add to sys.path (can be relative to
+ ${srcdir}/lib)
+ """
+ if in_source_tree():
+ sys.path.insert(0,
+ os.path.join(os.path.dirname(__file__),
+ "../../../../lib", location))
+ __import__(modulename)
+ else:
+ sys.modules[modulename] = __import__(
+ "samba.external.%s" % modulename, fromlist=["samba.external"])
+
+
def ensure_external_module(modulename, location):
"""Add a location to sys.path if an external dependency can't be found.
try:
__import__(modulename)
except ImportError:
- if in_source_tree():
- sys.path.insert(0,
- os.path.join(os.path.dirname(__file__),
- "../../../../lib", location))
- __import__(modulename)
- else:
- sys.modules[modulename] = __import__(
- "samba.external.%s" % modulename, fromlist=["samba.external"])
+ import_bundled_package(modulename)
+
from samba import _glue
version = _glue.version