def test_destroy_servers(self, mock_osclients): prov = OSProvider(mock.MagicMock(), self._get_valid_config()) prov.resources.get_all.side_effect = [ [ fakes.FakeResource( id=1, items={ 'info': { 'id': '35FC0503-FED6-419F-B6EE-B704198CE642' } }) ], [fakes.FakeResource(id=2, items={'info': { 'id': 'keypair_name' }})], ] prov.destroy_servers() prov.resources.get_all.assert_has_calls([ mock.call(type='server'), mock.call(type='keypair'), ]) prov.nova.servers.delete.assert_called_once_with( '35FC0503-FED6-419F-B6EE-B704198CE642') prov.nova.keypairs.delete.assert_called_once_with('keypair_name') prov.resources.delete.assert_has_calls([ mock.call(1), mock.call(2), ])
def setUp(self): super(ImageResourceTypeTestCase, self).setUp() self.clients = fakes.FakeClients() image1 = fakes.FakeResource(name="cirros-0.3.1-uec", id="100") self.clients.glance().images._cache(image1) image2 = fakes.FakeResource(name="cirros-0.3.1-uec-ramdisk", id="101") self.clients.glance().images._cache(image2)
def setUp(self): super(FlavorResourceTypeTestCase, self).setUp() self.clients = fakes.FakeClients() self.clients.nova().flavors._cache( fakes.FakeResource(name='m1.tiny', id="1")) self.clients.nova().flavors._cache( fakes.FakeResource(name='m1.nano', id="42"))
def test_is_temporary(self): tests = [(fakes.FakeResource(name=utils.TEMP_TEMPLATE + "abc"), True), (fakes.FakeResource(name="fdaffdafa"), False), (fakes.FakeResource(name=utils.TEMP_TEMPLATE[:-3] + "agag"), False)] for resource, is_valid in tests: self.assertEqual(utils.is_temporary(resource), is_valid)
def test_is_temporary(self): prefix = utils.KeystoneScenario.RESOURCE_NAME_PREFIX tests = [(fakes.FakeResource(name=prefix + "abc"), True), (fakes.FakeResource(name="another"), False), (fakes.FakeResource(name=prefix[:-3] + "abc"), False)] for resource, is_valid in tests: self.assertEqual(utils.is_temporary(resource), is_valid)
def test_get_from_manager_in_deleted_state(self): get_from_manager = utils.get_from_manager() manager = fakes.FakeManager() resource = fakes.FakeResource(manager=manager, status="DELETED") manager._cache(resource) self.assertRaises(exceptions.GetResourceNotFound, get_from_manager, resource)
def test_get_from_manager_in_error_state(self): get_from_manager = utils.get_from_manager() manager = fakes.FakeManager() resource = fakes.FakeResource(manager=manager, status="ERROR") manager._cache(resource) self.assertRaises(exceptions.GetResourceFailure, get_from_manager, resource)
def test_user_delete(self): resource = fakes.FakeResource() resource.delete = mock.MagicMock() scenario = utils.KeystoneScenario() scenario._resource_delete(resource) resource.delete.assert_called_once_with() self._test_atomic_action_timer(scenario.atomic_actions(), 'keystone.delete_resource')
def test_get_from_manager_http_exception(self): get_from_manager = utils.get_from_manager() manager = mock.MagicMock() resource = fakes.FakeResource(manager=manager, status="ERROR") class HTTPException(Exception): pass manager.get = mock.MagicMock(side_effect=HTTPException) self.assertRaises(exceptions.GetResourceFailure, get_from_manager, resource)
def test_get_from_manager_not_found(self): get_from_manager = utils.get_from_manager() manager = mock.MagicMock() resource = fakes.FakeResource(manager=manager, status="ERROR") class NotFoundException(Exception): http_status = 404 manager.get = mock.MagicMock(side_effect=NotFoundException) self.assertRaises(exceptions.GetResourceFailure, get_from_manager, resource)
def test_get_from_manager(self): get_from_manager = utils.get_from_manager() manager = fakes.FakeManager() resource = fakes.FakeResource(manager=manager) manager._cache(resource) self.assertEqual(get_from_manager(resource), resource)
def test_resource_is(self): is_active = utils.resource_is("ACTIVE") self.assertTrue(is_active(fakes.FakeResource(status="active"))) self.assertTrue(is_active(fakes.FakeResource(status="aCtIvE"))) self.assertFalse(is_active(fakes.FakeResource(status="ERROR")))