summaryrefslogtreecommitdiff
path: root/cpp/test/IceUtil/fileLock/run.py
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2009-12-04 06:51:23 +0100
committerJose <jose@zeroc.com>2009-12-04 06:51:23 +0100
commit0ad40835182795b5f9bedeea10aeb6f07c666e7d (patch)
tree5dff55b02aefb5854a972eb2cef128d1537d5c47 /cpp/test/IceUtil/fileLock/run.py
parentBug 4408 - plugin does not work with x64 only installation (diff)
downloadice-0ad40835182795b5f9bedeea10aeb6f07c666e7d.tar.bz2
ice-0ad40835182795b5f9bedeea10aeb6f07c666e7d.tar.xz
ice-0ad40835182795b5f9bedeea10aeb6f07c666e7d.zip
4089 - IceGrid database corruption.
Diffstat (limited to 'cpp/test/IceUtil/fileLock/run.py')
-rwxr-xr-xcpp/test/IceUtil/fileLock/run.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/cpp/test/IceUtil/fileLock/run.py b/cpp/test/IceUtil/fileLock/run.py
new file mode 100755
index 00000000000..67cf14acc21
--- /dev/null
+++ b/cpp/test/IceUtil/fileLock/run.py
@@ -0,0 +1,55 @@
+#!/usr/bin/env python
+# **********************************************************************
+#
+# Copyright (c) 2003-2009 ZeroC, Inc. All rights reserved.
+#
+# This copy of Ice is licensed to you under the terms described in the
+# ICE_LICENSE file included in this distribution.
+#
+# **********************************************************************
+
+import os, sys
+
+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 *
+
+print "testing process file lock...",
+sys.stdout.flush()
+
+client = os.path.join(os.getcwd(), "client")
+clientFail = os.path.join(os.getcwd(), "clientFail")
+
+clientExe = TestUtil.startClient(client, "", None, None, False)
+clientExe.expect('File lock acquired.\.*')
+
+#
+# Ensure that the file lock exists.
+#
+assert(os.path.exists("file.lock"));
+
+clientFailExe = TestUtil.startClient(clientFail, "", None, None, False)
+clientFailExe.expect('File lock not acquired.')
+
+# send some output to client to terminate it.
+clientExe.sendline('go')
+clientExe.expect('File lock released.')
+
+#
+# Ensure that the file lock was removed.
+#
+assert(not os.path.exists("file.lock"));
+
+# The lock is gone try to acquire it again.
+clientExe = TestUtil.startClient(client, "", None, None, False)
+clientExe.expect('File lock acquired.\.*')
+clientExe.sendline('go')
+clientExe.expect('File lock released.')
+
+print "ok" \ No newline at end of file