示例#1
0
 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),
     ])
示例#2
0
 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)
示例#3
0
 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"))
示例#4
0
    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)
示例#5
0
    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)
示例#6
0
 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)
示例#7
0
 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)
示例#8
0
    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')
示例#9
0
    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)
示例#10
0
    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)
示例#11
0
 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)
示例#12
0
 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")))