def test_mount_egain(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test' _init_mock_variables(tmpdir) assert gfs.mount(root, drive) fcntl.lockf = mock_fcntl_lockf assert gfs.mount(root, drive) finally: shutil.rmtree(tmpdir)
def gluster_check_mount(root, drive): # FIXME: Potential performance optimization here to not call the original # check mount which makes two stat calls. We could do what they do with # just one. if __check_mount(root, drive): return True return Glusterfs.mount(root, drive)
def test_invalid_drive_name(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'te st' _init_mock_variables(tmpdir) self.assertFalse(gfs.mount(root, drive)) finally: _reset_mock_variables() shutil.rmtree(tmpdir)
def test_mount(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test' _init_mock_variables(tmpdir) assert gfs.mount(root, drive) finally: _reset_mock_variables() shutil.rmtree(tmpdir)
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_mount_get_export_list_err(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test3' _init_mock_variables(tmpdir) gfs._get_export_list = mock_get_export_list assert not gfs.mount(root, drive) finally: shutil.rmtree(tmpdir)
def test_get_drive_mount_point_name_unique_id_None(self): """ Using the public method mount to test _get_drive_mount_point_name """ try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test' _init_mock_variables(tmpdir) gfs._allow_mount_per_server = True self.assertTrue(gfs.mount(root, drive)) finally: gfs._allow_mount_per_server = False _reset_mock_variables() shutil.rmtree(tmpdir)
def test_already_mounted(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test' _init_mock_variables(tmpdir) def mock_do_ismount(path): return True with mock.patch("gluster.swift.common.Glusterfs.do_ismount", mock_do_ismount): self.assertTrue(gfs.mount(root, drive)) finally: _reset_mock_variables() shutil.rmtree(tmpdir)
def test_get_export_list(self): try: tmpdir = mkdtemp() root = os.path.join(tmpdir, 'mnt/gluster-object') drive = 'test' # undo mocking of _get_export_list tmp_get_export_list = gfs._get_export_list _init_mock_variables(tmpdir) gfs._get_export_list = tmp_get_export_list def mock_os_popen(cmd): mock_string = """ Volume Name: test Type: Distribute Volume ID: 361cfe52-75c0-4a76-88af-0092a92270b5 Status: Started Number of Bricks: 1 Transport-type: tcp Bricks: Brick1: myhost:/export/brick/test Volume Name: test2 Type: Distribute Volume ID: a6df4e2b-6040-4e19-96f1-b8d8c0a29528 Status: Started Number of Bricks: 1 Transport-type: tcp Bricks: Brick1: myhost:/export/brick/test2 """ return StringIO.StringIO(mock_string) # mock os_popen with mock.patch('os.popen', mock_os_popen): self.assertTrue(gfs.mount(root, drive)) finally: _reset_mock_variables() shutil.rmtree(tmpdir)
def test_busy_wait(self): self.assertTrue(gfs._busy_wait("/"))
def test_mount_get_export_list_err(self): gfs._get_export_list = mock_get_export_list assert not gfs.mount(None, 'drive') _reset_mock_variables()