LOG.info('Called Fake ModifyVolume...')
return {'result': {}, 'id': 1}
+ elif method is 'CloneVolume':
+ return {'result': {'volumeID': 6}, 'id': 2}
+
+ elif method is 'ModifyVolume':
+ return
+
elif method is 'ListVolumesForAccount' and version == '1.0':
test_name = 'OS-VOLID-a720b3c0-d1f0-11e1-9b23-0800200c9a66'
LOG.info('Called Fake ListVolumesForAccount...')
def fake_update_cluster_status(self):
return
+ def fake_get_model_info(self, account, vid):
+ return {'fake': 'fake-model'}
+
def test_create_with_qos_type(self):
self.stubs.Set(SolidFireDriver, '_issue_api_request',
self.fake_issue_api_request)
'4096 4096')
self.configuration.sf_emulate_512 = True
+ def test_create_snapshot(self):
+ self.stubs.Set(SolidFireDriver, '_issue_api_request',
+ self.fake_issue_api_request)
+ self.stubs.Set(SolidFireDriver, '_get_model_info',
+ self.fake_get_model_info)
+ testvol = {'project_id': 'testprjid',
+ 'name': 'testvol',
+ 'size': 1,
+ 'id': 'a720b3c0-d1f0-11e1-9b23-0800200c9a66',
+ 'volume_type_id': None,
+ 'created_at': timeutils.utcnow()}
+
+ testsnap = {'project_id': 'testprjid',
+ 'name': 'testvol',
+ 'volume_size': 1,
+ 'id': 'b831c4d1-d1f0-11e1-9b23-0800200c9a66',
+ 'volume_id': 'a720b3c0-d1f0-11e1-9b23-0800200c9a66',
+ 'volume_type_id': None,
+ 'created_at': timeutils.utcnow()}
+
+ sfv = SolidFireDriver(configuration=self.configuration)
+ model_update = sfv.create_volume(testvol)
+ sfv.create_snapshot(testsnap)
+
+ def test_create_clone(self):
+ self.stubs.Set(SolidFireDriver, '_issue_api_request',
+ self.fake_issue_api_request)
+ self.stubs.Set(SolidFireDriver, '_get_model_info',
+ self.fake_get_model_info)
+ testvol = {'project_id': 'testprjid',
+ 'name': 'testvol',
+ 'size': 1,
+ 'id': 'a720b3c0-d1f0-11e1-9b23-0800200c9a66',
+ 'volume_type_id': None,
+ 'created_at': timeutils.utcnow()}
+
+ testvol_b = {'project_id': 'testprjid',
+ 'name': 'testvol',
+ 'size': 1,
+ 'id': 'b831c4d1-d1f0-11e1-9b23-0800200c9a66',
+ 'volume_type_id': None,
+ 'created_at': timeutils.utcnow()}
+
+ sfv = SolidFireDriver(configuration=self.configuration)
+ sfv.create_cloned_volume(testvol_b, testvol)
+
def test_initialize_connector_with_blocksizes(self):
connector = {'initiator': 'iqn.2012-07.org.fake:01'}
testvol = {'project_id': 'testprjid',
if src_project_id != v_ref['project_id']:
sfaccount = self._create_sfaccount(v_ref['project_id'])
+ if v_ref.get('size', None):
+ new_size = v_ref['size']
+ else:
+ new_size = v_ref['volume_size']
+
params = {'volumeID': int(sf_vol['volumeID']),
'name': 'UUID-%s' % v_ref['id'],
- 'newSize': int(v_ref['size'] * self.GB),
+ 'newSize': int(new_size * self.GB),
'newAccountID': sfaccount['accountID']}
data = self._issue_api_request('CloneVolume', params)