def test_init(self, extra_specs): info = {'extra_specs': extra_specs} share_type = share_types.ShareType(share_types.ShareTypeManager, info) self.assertTrue(hasattr(share_type, '_required_extra_specs')) self.assertTrue(hasattr(share_type, '_optional_extra_specs')) self.assertIsInstance(share_type._required_extra_specs, dict) self.assertIsInstance(share_type._optional_extra_specs, dict) self.assertEqual(extra_specs, share_type.get_optional_keys())
def test_init(self, extra_specs): info = {'extra_specs': {'snapshot_support': 'False'}} share_type = share_types.ShareType(share_types.ShareTypeManager, info) self.assertTrue(hasattr(share_type, '_required_extra_specs')) self.assertTrue(hasattr(share_type, '_optional_extra_specs')) self.assertTrue(isinstance(share_type._required_extra_specs, dict)) self.assertTrue(isinstance(share_type._optional_extra_specs, dict)) self.assertEqual( {'snapshot_support': 'False'}, share_type.get_optional_keys())
def test_get_keys_from_resource_data(self): manager = mock.Mock() manager.api.client.get = mock.Mock(return_value=(200, {})) valid_extra_specs = {'test': 'test'} share_type = share_types.ShareType(mock.Mock(), {'extra_specs': valid_extra_specs, 'name': 'test'}, loaded=True) actual_result = share_type.get_keys() self.assertEqual(actual_result, valid_extra_specs) self.assertEqual(manager.api.client.get.call_count, 0)
def test_get_keys_from_api(self, prefer_resource_data, resource_extra_specs): manager = mock.Mock() valid_extra_specs = {'test': 'test'} manager.api.client.get = mock.Mock( return_value=(200, {'extra_specs': valid_extra_specs})) info = { 'name': 'test', 'uuid': 'fake', 'extra_specs': resource_extra_specs } share_type = share_types.ShareType(manager, info, loaded=True) actual_result = share_type.get_keys(prefer_resource_data) self.assertEqual(actual_result, valid_extra_specs) self.assertEqual(manager.api.client.get.call_count, 1)
share_server_errored = share_servers.ShareServer( share_servers.ShareServerManager(FakeAPIClient), { 'id': 'fake_share_server_id2', 'status': 'error', 'share_network_id': 'fake_share_network_id2', 'share_network_name': 'fake_share_network_name2', 'project_id': 'fake_project_id2', 'backend_details': {}, 'host': 'fakehost2@fakebackend2#fakepool2' }) share_type = share_types.ShareType( share_types.ShareTypeManager(FakeAPIClient), { 'id': 'share-type-id1', 'name': 'test-share-type1', 'share_type_access:is_public': True, 'extra_specs': { 'snapshot_support': True, 'driver_handles_share_servers': False } }) share_type_private = share_types.ShareType( share_types.ShareTypeManager(FakeAPIClient), { 'id': 'share-type-id2', 'name': 'test-share-type2', 'share_type_access:is_public': False, 'extra_specs': { 'driver_handles_share_servers': False } })
share_server_errored = share_servers.ShareServer( share_servers.ShareServerManager(FakeAPIClient), { 'id': 'fake_share_server_id2', 'status': 'error', 'share_network_id': 'fake_share_network_id2', 'share_network_name': 'fake_share_network_name2', 'project_id': 'fake_project_id2', 'backend_details': {}, 'host': 'fakehost2@fakebackend2#fakepool2' }) share_type = share_types.ShareType( share_types.ShareTypeManager(FakeAPIClient), { 'id': 'share-type-id1', 'name': 'test-share-type', 'extra_specs': { 'snapshot_support': True, 'driver_handles_share_servers': False } }) # Quota Sets quota_data = dict(shares='1', share_snapshots='1', share_gigabytes='1000') quota = quotas.QuotaSet(quotas.QuotaSetManager(FakeAPIClient), quota_data) # Quota Usages quota_usage_data = { 'gigabytes': { 'used': 0, 'quota': 1000 },