object-store: Added busy_wait unit test to Glusterfs.py
Change-Id: Ifee5dccd47a3e301812533851c45b9fe853f9b71 Signed-off-by: Luis Pabon <lpabon@redhat.com> Reviewed-on: http://review.gluster.org/4983 Reviewed-by: Peter Portante <pportant@redhat.com> Tested-by: Peter Portante <pportant@redhat.com>
This commit is contained in:
parent
952a240852
commit
7f7014862e
@ -55,7 +55,7 @@ def _busy_wait(full_mount_path):
|
|||||||
# Iterate for definite number of time over a given
|
# Iterate for definite number of time over a given
|
||||||
# interval for successful mount
|
# interval for successful mount
|
||||||
for i in range(0, 5):
|
for i in range(0, 5):
|
||||||
if os.path.ismount(os.path.join(full_mount_path)):
|
if os.path.ismount(full_mount_path):
|
||||||
return True
|
return True
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
logging.error('Busy wait for mount timed out for mount %s', full_mount_path)
|
logging.error('Busy wait for mount timed out for mount %s', full_mount_path)
|
||||||
|
@ -15,9 +15,13 @@
|
|||||||
|
|
||||||
import unittest
|
import unittest
|
||||||
import os, fcntl, errno, shutil
|
import os, fcntl, errno, shutil
|
||||||
|
import time
|
||||||
from tempfile import mkdtemp
|
from tempfile import mkdtemp
|
||||||
import gluster.swift.common.Glusterfs as gfs
|
import gluster.swift.common.Glusterfs as gfs
|
||||||
|
|
||||||
|
def mock_os_path_ismount_false(path):
|
||||||
|
return False
|
||||||
|
|
||||||
def mock_os_path_ismount(path):
|
def mock_os_path_ismount(path):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
@ -30,6 +34,9 @@ def mock_os_system(cmd):
|
|||||||
def mock_fcntl_lockf(f, *a, **kw):
|
def mock_fcntl_lockf(f, *a, **kw):
|
||||||
raise IOError(errno.EAGAIN, os.strerror(errno.EAGAIN))
|
raise IOError(errno.EAGAIN, os.strerror(errno.EAGAIN))
|
||||||
|
|
||||||
|
def mock_time_sleep(secs):
|
||||||
|
return True
|
||||||
|
|
||||||
def _init():
|
def _init():
|
||||||
global _RUN_DIR, _OS_SYSTEM, _FCNTL_LOCKF
|
global _RUN_DIR, _OS_SYSTEM, _FCNTL_LOCKF
|
||||||
global _OS_PATH_ISMOUNT, __GET_EXPORT_LIST
|
global _OS_PATH_ISMOUNT, __GET_EXPORT_LIST
|
||||||
@ -60,6 +67,21 @@ class TestGlusterfs(unittest.TestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
_init()
|
_init()
|
||||||
|
|
||||||
|
def test_busy_wait_timeout(self):
|
||||||
|
os.path.ismount = mock_os_path_ismount_false
|
||||||
|
|
||||||
|
# setup time mock
|
||||||
|
real_time_sleep = time.sleep
|
||||||
|
time.sleep = mock_time_sleep
|
||||||
|
|
||||||
|
try:
|
||||||
|
self.assertFalse(gfs._busy_wait("/"))
|
||||||
|
finally:
|
||||||
|
time.sleep = real_time_sleep
|
||||||
|
|
||||||
|
def test_busy_wait(self):
|
||||||
|
self.assertTrue(gfs._busy_wait("/"))
|
||||||
|
|
||||||
def test_mount(self):
|
def test_mount(self):
|
||||||
try:
|
try:
|
||||||
tmpdir = mkdtemp()
|
tmpdir = mkdtemp()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user