summaryrefslogtreecommitdiff
path: root/py/test/Ice/faultTolerance/run.py
diff options
context:
space:
mode:
Diffstat (limited to 'py/test/Ice/faultTolerance/run.py')
-rwxr-xr-xpy/test/Ice/faultTolerance/run.py46
1 files changed, 16 insertions, 30 deletions
diff --git a/py/test/Ice/faultTolerance/run.py b/py/test/Ice/faultTolerance/run.py
index 5191ac0b503..444473efb53 100755
--- a/py/test/Ice/faultTolerance/run.py
+++ b/py/test/Ice/faultTolerance/run.py
@@ -10,50 +10,36 @@
import os, sys
-for toplevel in [".", "..", "../..", "../../..", "../../../.."]:
- toplevel = os.path.normpath(toplevel)
- if os.path.exists(os.path.join(toplevel, "config", "TestUtil.py")):
- break
-else:
+path = [ ".", "..", "../..", "../../..", "../../../.." ]
+head = os.path.dirname(sys.argv[0])
+if len(head) > 0:
+ path = [os.path.join(head, p) for p in path]
+path = [os.path.abspath(p) for p in path if os.path.exists(os.path.join(p, "scripts", "TestUtil.py")) ]
+if len(path) == 0:
raise "can't find toplevel directory!"
+sys.path.append(os.path.join(path[0]))
+from scripts import *
-sys.path.append(os.path.join(toplevel, "config"))
-import TestUtil
-TestUtil.processCmdLine()
-
-name = os.path.join("Ice", "faultTolerance")
-testdir = os.path.join(toplevel, "py", "test", name)
-
-cwd = os.getcwd()
-os.chdir(testdir)
-
-server = "Server.py"
-client = "Client.py"
+server = os.path.join(os.getcwd(), "Server.py")
+client = os.path.join(os.getcwd(), "Client.py")
num = 12
base = 12340
+serverProc = []
for i in range(0, num):
print "starting server #%d..." % (i + 1),
sys.stdout.flush()
- serverPipe = TestUtil.startServer(server, "%d" % (base + i))
- TestUtil.getServerPid(serverPipe)
- TestUtil.getAdapterReady(serverPipe)
+ serverProc.append(TestUtil.startServer(server, "%d" % (base + i)))
print "ok"
ports = ""
for i in range(0, num):
ports = "%s %d" % (ports, base + i)
print "starting client...",
-clientPipe = TestUtil.startClient(client, ports)
+clientProc = TestUtil.startClient(client, ports)
print "ok"
-TestUtil.printOutputFromPipe(clientPipe)
-clientStatus = TestUtil.closePipe(clientPipe)
-if clientStatus:
- TestUtil.killServers()
-
-if clientStatus or TestUtil.serverStatus():
- sys.exit(1)
-
-sys.exit(0)
+clientProc.waitTestSuccess()
+for p in serverProc:
+ p.waitTestSuccess()