1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
#!/usr/bin/env python
import os
import sys
from twisted.scripts.trial import run
from juju.tests.common import zookeeper_test_context
from juju.lib.testing import TestCase
FUNCTIONAL = '--functional'
def main(args):
if not "ZOOKEEPER_PATH" in os.environ:
# Look for a system install of ZK
env_path = "/etc/zookeeper/conf/environment"
if os.path.exists(env_path):
print "Using system zookeeper classpath from %s" % env_path
os.environ["ZOOKEEPER_PATH"] = "system"
else:
print ("Environment variable ZOOKEEPER_PATH must be defined "
"and should point to directory of Zookeeper installation")
exit()
matched = [arg for arg in args if arg.startswith("juju")]
if FUNCTIONAL in sys.argv:
sys.argv.remove(FUNCTIONAL)
sys.argv.append("juju.ftests")
elif matched:
pass
else:
packages = [p for p in os.listdir("juju") \
if os.path.isdir("juju%s%s"%(os.sep, p))]
packages.remove("ftests")
sys.argv.extend(["juju.%s"%p for p in packages])
if 'JUJU_TEST_TIMEOUT' in os.environ:
try:
TestCase.timeout = float(os.environ['JUJU_TEST_TIMEOUT'])
except ValueError:
print ("JUJU_TEST_TIMEOUT must be a number")
exit()
with zookeeper_test_context(
os.environ["ZOOKEEPER_PATH"],
os.environ.get("ZOOKEEPER_TEST_PORT", 28181)):
run()
if __name__ == "__main__":
main(sys.argv[1:])
|