diff options
author | Jose <jose@zeroc.com> | 2009-12-04 06:51:23 +0100 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2009-12-04 06:51:23 +0100 |
commit | 0ad40835182795b5f9bedeea10aeb6f07c666e7d (patch) | |
tree | 5dff55b02aefb5854a972eb2cef128d1537d5c47 /cpp/test/IceUtil/fileLock/run.py | |
parent | Bug 4408 - plugin does not work with x64 only installation (diff) | |
download | ice-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-x | cpp/test/IceUtil/fileLock/run.py | 55 |
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 |