def test_update_pool(self): post_model = datagen.random_pool_data() resp, old_model = self._create_pool(post_model) patch_model = datagen.random_pool_data() resp, new_model = PoolClient.as_user('admin').patch_pool( old_model.id, patch_model) self.assertEqual(resp.status, 202) resp, model = PoolClient.as_user('admin').get_pool(new_model.id) self.assertEqual(resp.status, 200) self.assertEqual(new_model.id, old_model.id) self.assertEqual(new_model.name, patch_model.name)
def test_update_pool_404(self): model = datagen.random_pool_data() client = PoolClient.as_user('admin') self._assert_exception( exceptions.NotFound, 'pool_not_found', 404, client.patch_pool, str(uuid.uuid4()), model)
def test_get_pool_fuzz_accept_header(self, fuzz_type, payload): resp, test_model = self._create_pool(datagen.random_pool_data()) headers = {"Accept": payload} result = fuzzer.verify_tempest_exception( self.client.get_pool, fuzz_type, test_model.id, headers=headers) self.assertTrue(result['status']) self.assertNotIn(result['resp'].status, range(500, 600))
def test_update_pool_fuzz_param(self, parameter, fuzz_type, payload): resp, test_model = self._create_pool(datagen.random_pool_data()) test_model.__dict__[parameter] = payload result = fuzzer.verify_tempest_exception( self.client.patch_pool, fuzz_type, test_model.id, test_model) self.assertTrue(result['status']) self.assertNotIn(result['resp'].status, range(500, 600))
def test_get_pool_fuzz_uuid(self, fuzz_type, payload): if isinstance(payload, string_types): payload = quote_plus(payload.encode('utf-8')) resp, test_model = self._create_pool(datagen.random_pool_data()) result = fuzzer.verify_tempest_exception( self.client.get_pool, fuzz_type, payload) self.assertTrue(result['status']) self.assertEqual(result['resp'].status, 404)
def test_update_pool_fuzz_header(self, parameter, fuzz_type, payload): resp, test_model = self._create_pool(datagen.random_pool_data()) headers = {parameter: payload.encode('utf-8')} result = fuzzer.verify_tempest_exception( self.client.patch_pool, fuzz_type, test_model.id, test_model, headers=headers) self.assertTrue(result['status']) self.assertNotIn(result['resp'].status, range(500, 600))
def test_update_existing_pool(self): """ resp, self.pool = self.authed_client.post_pool( datagen.random_pool_data()) """ self.assertRaises( exceptions.Unauthorized, self.client.patch_pool, self.fixture.created_pool.id, datagen.random_pool_data())
def test_create_pool_fuzz_data_hostname(self, fuzz_type, payload): test_model = datagen.random_pool_data() test_model.ns_records = [{"hostname": payload, "priority": x["priority"]} for x in test_model.ns_records] result = fuzzer.verify_tempest_exception( self.client.post_pool, fuzz_type, test_model) self.assertTrue(result['status']) self.assertEqual(result['resp'].status, 400)
def test_create_pool_fuzz_param(self, parameter, fuzz_type, payload): test_model = datagen.random_pool_data() test_model.__dict__[parameter] = payload result = fuzzer.verify_tempest_exception( self.client.post_pool, fuzz_type, test_model) self.assertTrue(result['status']) self.assertNotIn(result['resp'].status, range(500, 600)) if result['resp'].status == 201: self.pool_id = result['model'].id
def test_create_pool_fuzz_header(self, parameter, fuzz_type, payload): test_model = datagen.random_pool_data() headers = {parameter: payload.encode('utf-8')} result = fuzzer.verify_tempest_exception( self.client.post_pool, fuzz_type, test_model, headers=headers) self.assertTrue(result['status']) self.assertNotIn(result['resp'].status, range(500, 600)) if result['resp'].status == 201: self.pool_id = result['model'].id
def test_update_pool(self): old_model = self.useFixture(PoolFixture()).created_pool patch_model = datagen.random_pool_data() resp, new_model = PoolClient.as_user('admin').patch_pool( old_model.id, patch_model) self.assertEqual(202, resp.status) resp, model = PoolClient.as_user('admin').get_pool(new_model.id) self.assertEqual(200, resp.status) self.assertEqual(old_model.id, new_model.id) self.assertEqual(patch_model.name, new_model.name)
def test_update_pool_invalid_uuid(self): model = datagen.random_pool_data() client = PoolClient.as_user('admin') self._assert_invalid_uuid(client.patch_pool, 'fooo', model)
def test_list_pools(self): self._create_pool(datagen.random_pool_data()) resp, model = PoolClient.as_user('admin').list_pools() self.assertEqual(resp.status, 200) self.assertGreater(len(model.pools), 0)
def test_update_fake_pool(self): self.assertRaises( exceptions.Unauthorized, self.client.patch_pool, 'junk', datagen.random_pool_data())
def test_update_existing_pool(self): self.assertRaises( exceptions.Unauthorized, self.client.patch_pool, self.fixture.created_pool.id, datagen.random_pool_data())
def test_create_pool(self): self.assertRaises( exceptions.Unauthorized, self.client.post_pool, datagen.random_pool_data())
def __init__(self, post_model=None, user='******'): super(PoolFixture, self).__init__() self.post_model = post_model or datagen.random_pool_data() self.user = user
def test_create_pool(self): self._create_pool(datagen.random_pool_data(), user='******')
def test_delete_pool(self): resp, model = self._create_pool(datagen.random_pool_data()) resp, model = PoolClient.as_user('admin').delete_pool(model.id) self.assertEqual(resp.status, 204)