Exemple #1
0
 def test_delete_multiple_bay_by_name(self):
     obj_utils.create_test_bay(self.context, name="test_bay", uuid=utils.generate_uuid())
     obj_utils.create_test_bay(self.context, name="test_bay", uuid=utils.generate_uuid())
     response = self.delete("/bays/test_bay", expect_errors=True)
     self.assertEqual(409, response.status_int)
     self.assertEqual("application/json", response.content_type)
     self.assertTrue(response.json["error_message"])
Exemple #2
0
 def setUp(self):
     super(TestPatch, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc = obj_utils.create_test_rc(self.context,
                                        images=['rc_example_A_image'])
     self.another_bay = obj_utils.create_test_bay(
         self.context, uuid=utils.generate_uuid())
Exemple #3
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, 'pod_create')
     self.mock_pod_create = p.start()
     self.mock_pod_create.side_effect = self._simulate_rpc_pod_create
     self.addCleanup(p.stop)
Exemple #4
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, 'pod_create')
     self.mock_pod_create = p.start()
     self.mock_pod_create.side_effect = self._simulate_rpc_pod_create
     self.addCleanup(p.stop)
 def setUp(self):
     super(TestPatch, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc = obj_utils.create_test_rc(self.context,
                                        images=['rc_example_A_image'])
     self.another_bay = obj_utils.create_test_bay(self.context,
                            uuid=utils.generate_uuid())
Exemple #6
0
 def setUp(self):
     super(TestPatch, self).setUp()
     self.bay = obj_utils.create_test_bay(self.context,
                                          uuid=utils.generate_uuid())
     self.bay2 = obj_utils.create_test_bay(self.context,
                                           uuid=utils.generate_uuid())
     self.service = obj_utils.create_test_service(self.context,
                                                  bay_uuid=self.bay.uuid)
Exemple #7
0
 def setUp(self):
     super(TestDelete, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc = obj_utils.create_test_rc(self.context)
     p = mock.patch.object(rpcapi.API, 'rc_delete')
     self.mock_rc_delete = p.start()
     self.mock_rc_delete.side_effect = self._simulate_rpc_rc_delete
     self.addCleanup(p.stop)
Exemple #8
0
    def test_collection_links(self):
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_, uuid=utils.generate_uuid())
        response = self.get_json("/bays/?limit=3")
        self.assertEqual(3, len(response["bays"]))

        next_marker = response["bays"][-1]["uuid"]
        self.assertIn(next_marker, response["next"])
Exemple #9
0
 def setUp(self):
     super(TestPatch, self).setUp()
     self.bay = obj_utils.create_test_bay(self.context,
                                          uuid=utils.generate_uuid())
     self.bay2 = obj_utils.create_test_bay(self.context,
                                           uuid=utils.generate_uuid())
     self.service = obj_utils.create_test_service(self.context,
                                                  bay_uuid=self.bay.uuid)
Exemple #10
0
 def test_delete_baymodel_with_bay(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.delete("/baymodels/%s" % baymodel.uuid, expect_errors=True)
     self.assertEqual(400, response.status_int)
     self.assertEqual("application/json", response.content_type)
     self.assertTrue(response.json["error_message"])
     self.assertIn(baymodel.uuid, response.json["error_message"])
 def setUp(self):
     super(TestDelete, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc = obj_utils.create_test_rc(self.context)
     p = mock.patch.object(rpcapi.API, 'rc_delete')
     self.mock_rc_delete = p.start()
     self.mock_rc_delete.side_effect = self._simulate_rpc_rc_delete
     self.addCleanup(p.stop)
Exemple #12
0
    def test_collection_links_default_limit(self):
        cfg.CONF.set_override("max_limit", 3, "api")
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_, uuid=utils.generate_uuid())
        response = self.get_json("/bays")
        self.assertEqual(3, len(response["bays"]))

        next_marker = response["bays"][-1]["uuid"]
        self.assertIn(next_marker, response["next"])
Exemple #13
0
 def test_delete_multiple_bay_by_name(self):
     obj_utils.create_test_bay(self.context, name='test_bay',
                               uuid=uuidutils.generate_uuid())
     obj_utils.create_test_bay(self.context, name='test_bay',
                               uuid=uuidutils.generate_uuid())
     response = self.delete('/bays/test_bay', expect_errors=True)
     self.assertEqual(409, response.status_int)
     self.assertEqual('application/json', response.content_type)
     self.assertTrue(response.json['errors'])
Exemple #14
0
 def test_delete_baymodel_with_bay(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.delete('/baymodels/%s' % baymodel.uuid,
                            expect_errors=True)
     self.assertEqual(400, response.status_int)
     self.assertEqual('application/json', response.content_type)
     self.assertTrue(response.json['errors'])
     self.assertIn(baymodel.uuid, response.json['errors'][0]['detail'])
Exemple #15
0
 def test_update_baymodel_with_bay_not_allow_update(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                [{'path': '/name',
                                  'value': 'new_name',
                                  'op': 'replace'}],
                                expect_errors=True)
     self.assertEqual(400, response.status_code)
Exemple #16
0
    def test_collection_links(self):
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_,
                                      uuid=utils.generate_uuid())
        response = self.get_json('/bays/?limit=3')
        self.assertEqual(3, len(response['bays']))

        next_marker = response['bays'][-1]['uuid']
        self.assertIn(next_marker, response['next'])
Exemple #17
0
    def test_collection_links(self):
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_,
                                      uuid=uuidutils.generate_uuid())
        response = self.get_json('/bays/?limit=3')
        self.assertEqual(3, len(response['bays']))

        next_marker = response['bays'][-1]['uuid']
        self.assertIn(next_marker, response['next'])
Exemple #18
0
 def test_delete_baymodel_with_bay(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.delete('/baymodels/%s' % baymodel.uuid,
                            expect_errors=True)
     self.assertEqual(400, response.status_int)
     self.assertEqual('application/json', response.content_type)
     self.assertTrue(response.json['error_message'])
     self.assertIn(baymodel.uuid, response.json['error_message'])
Exemple #19
0
 def test_update_baymodel_with_bay_not_allow_update(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                [{'path': '/name',
                                  'value': 'new_name',
                                  'op': 'replace'}],
                                expect_errors=True)
     self.assertEqual(400, response.status_code)
Exemple #20
0
 def test_get_one_by_name_multiple_bay(self):
     obj_utils.create_test_bay(self.context, name='test_bay',
                               uuid=utils.generate_uuid())
     obj_utils.create_test_bay(self.context, name='test_bay',
                               uuid=utils.generate_uuid())
     response = self.get_json('/bays/test_bay', expect_errors=True)
     self.assertEqual(409, response.status_int)
     self.assertEqual('application/json', response.content_type)
     self.assertTrue(response.json['error_message'])
Exemple #21
0
    def test_collection_links_default_limit(self):
        cfg.CONF.set_override('max_limit', 3, 'api')
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_,
                                      uuid=uuidutils.generate_uuid())
        response = self.get_json('/bays')
        self.assertEqual(3, len(response['bays']))

        next_marker = response['bays'][-1]['uuid']
        self.assertIn(next_marker, response['next'])
Exemple #22
0
 def test_links(self):
     uuid = utils.generate_uuid()
     obj_utils.create_test_bay(self.context, id=1, uuid=uuid)
     response = self.get_json("/bays/%s" % uuid)
     self.assertIn("links", response.keys())
     self.assertEqual(2, len(response["links"]))
     self.assertIn(uuid, response["links"][0]["href"])
     for l in response["links"]:
         bookmark = l["rel"] == "bookmark"
         self.assertTrue(self.validate_link(l["href"], bookmark=bookmark))
Exemple #23
0
    def test_collection_links_default_limit(self):
        cfg.CONF.set_override('max_limit', 3, 'api')
        for id_ in range(5):
            obj_utils.create_test_bay(self.context, id=id_,
                                      uuid=utils.generate_uuid())
        response = self.get_json('/bays')
        self.assertEqual(3, len(response['bays']))

        next_marker = response['bays'][-1]['uuid']
        self.assertIn(next_marker, response['next'])
Exemple #24
0
 def test_links(self):
     uuid = uuidutils.generate_uuid()
     obj_utils.create_test_bay(self.context, id=1, uuid=uuid)
     response = self.get_json('/bays/%s' % uuid)
     self.assertIn('links', response.keys())
     self.assertEqual(2, len(response['links']))
     self.assertIn(uuid, response['links'][0]['href'])
     for l in response['links']:
         bookmark = l['rel'] == 'bookmark'
         self.assertTrue(self.validate_link(l['href'], bookmark=bookmark))
Exemple #25
0
 def test_links(self):
     uuid = uuidutils.generate_uuid()
     obj_utils.create_test_bay(self.context, id=1, uuid=uuid)
     response = self.get_json('/bays/%s' % uuid)
     self.assertIn('links', response.keys())
     self.assertEqual(2, len(response['links']))
     self.assertIn(uuid, response['links'][0]['href'])
     for l in response['links']:
         bookmark = l['rel'] == 'bookmark'
         self.assertTrue(self.validate_link(l['href'], bookmark=bookmark))
Exemple #26
0
 def test_update_baymodel_with_bay_allow_update(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                [{'path': '/public',
                                  'value': True,
                                  'op': 'replace'}],
                                expect_errors=True)
     self.assertEqual(200, response.status_int)
     response = self.get_json('/baymodels/%s' % self.baymodel.uuid)
     self.assertEqual(response['public'], True)
Exemple #27
0
 def test_update_baymodel_with_bay_allow_update(self):
     baymodel = obj_utils.create_test_baymodel(self.context)
     obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)
     response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                [{'path': '/public',
                                  'value': True,
                                  'op': 'replace'}],
                                expect_errors=True)
     self.assertEqual(200, response.status_int)
     response = self.get_json('/baymodels/%s' % self.baymodel.uuid)
     self.assertEqual(response['public'], True)
Exemple #28
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, 'pod_create')
     self.mock_pod_create = p.start()
     self.mock_pod_create.side_effect = self._simulate_rpc_pod_create
     self.addCleanup(p.stop)
     p = mock.patch('magnum.objects.BayModel.get_by_uuid')
     self.mock_baymodel_get_by_uuid = p.start()
     self.mock_baymodel_get_by_uuid.return_value.coe = 'kubernetes'
     self.addCleanup(p.stop)
Exemple #29
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, 'pod_create')
     self.mock_pod_create = p.start()
     self.mock_pod_create.side_effect = self._simulate_rpc_pod_create
     self.addCleanup(p.stop)
     p = mock.patch('magnum.objects.BayModel.get_by_uuid')
     self.mock_baymodel_get_by_uuid = p.start()
     self.mock_baymodel_get_by_uuid.return_value.coe = 'kubernetes'
     self.addCleanup(p.stop)
Exemple #30
0
    def test_replace_ok_by_name_multiple_bay(self, mock_utcnow):
        test_time = datetime.datetime(2000, 1, 1, 0, 0)
        mock_utcnow.return_value = test_time

        obj_utils.create_test_bay(self.context, name="test_bay", uuid=utils.generate_uuid())
        obj_utils.create_test_bay(self.context, name="test_bay", uuid=utils.generate_uuid())

        response = self.patch_json(
            "/bays/test_bay", [{"path": "/name", "value": "test_bay", "op": "replace"}], expect_errors=True
        )
        self.assertEqual("application/json", response.content_type)
        self.assertEqual(409, response.status_code)
Exemple #31
0
    def test_get_one_by_name_multiple_bay(self):
        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=utils.generate_uuid())
        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=utils.generate_uuid())

        response = self.get_json('/certificates/test_bay',
                                 expect_errors=True)

        self.assertEqual(409, response.status_int)
        self.assertEqual('application/json', response.content_type)
        self.assertTrue(response.json['error_message'])
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc_obj = obj_utils.create_test_rc(self.context)
     p = mock.patch.object(rpcapi.API, 'rc_create')
     self.mock_rc_create = p.start()
     self.mock_rc_create.return_value = self.rc_obj
     self.addCleanup(p.stop)
     p = mock.patch('magnum.objects.BayModel.get_by_uuid')
     self.mock_baymodel_get_by_uuid = p.start()
     self.mock_baymodel_get_by_uuid.return_value.coe = 'kubernetes'
     self.addCleanup(p.stop)
Exemple #33
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.rc_obj = obj_utils.create_test_rc(self.context)
     p = mock.patch.object(rpcapi.API, 'rc_create')
     self.mock_rc_create = p.start()
     self.mock_rc_create.return_value = self.rc_obj
     self.addCleanup(p.stop)
     p = mock.patch('magnum.objects.BayModel.get_by_uuid')
     self.mock_baymodel_get_by_uuid = p.start()
     self.mock_baymodel_get_by_uuid.return_value.coe = 'kubernetes'
     self.addCleanup(p.stop)
Exemple #34
0
    def test_update_baymodel_with_bay(self):
        baymodel = obj_utils.create_test_baymodel(self.context)
        obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)

        response = self.patch_json(
            "/baymodels/%s" % baymodel.uuid,
            [{"path": "/name", "value": "bay_model_example_B", "op": "replace"}],
            expect_errors=True,
        )
        self.assertEqual(400, response.status_int)
        self.assertEqual("application/json", response.content_type)
        self.assertTrue(response.json["error_message"])
        self.assertIn(baymodel.uuid, response.json["error_message"])
Exemple #35
0
    def test_update_baymodel_with_bay(self):
        baymodel = obj_utils.create_test_baymodel(self.context)
        obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)

        response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                   [{'path': '/name',
                                     'value': 'bay_model_example_B',
                                     'op': 'replace'}],
                                   expect_errors=True)
        self.assertEqual(400, response.status_int)
        self.assertEqual('application/json', response.content_type)
        self.assertTrue(response.json['error_message'])
        self.assertIn(baymodel.uuid, response.json['error_message'])
Exemple #36
0
 def setUp(self):
     super(TestPost, self).setUp()
     obj_utils.create_test_bay(self.context)
     self.service_obj = obj_utils.create_test_service(self.context)
     p = mock.patch.object(rpcapi.API, "service_create")
     self.mock_service_create = p.start()
     self.mock_service_create.return_value = self.service_obj
     self.mock_service_create.side_effect = self._simulate_rpc_service_create
     self.addCleanup(p.stop)
     p = mock.patch("magnum.objects.BayModel.get_by_uuid")
     self.mock_baymodel_get_by_uuid = p.start()
     self.mock_baymodel_get_by_uuid.return_value.coe = "kubernetes"
     self.addCleanup(p.stop)
Exemple #37
0
    def test_update_baymodel_with_bay(self):
        baymodel = obj_utils.create_test_baymodel(self.context)
        obj_utils.create_test_bay(self.context, baymodel_id=baymodel.uuid)

        response = self.patch_json('/baymodels/%s' % baymodel.uuid,
                                   [{'path': '/name',
                                     'value': 'bay_model_example_B',
                                     'op': 'replace'}],
                                   expect_errors=True)
        self.assertEqual(400, response.status_int)
        self.assertEqual('application/json', response.content_type)
        self.assertTrue(response.json['errors'])
        self.assertIn(baymodel.uuid, response.json['errors'][0]['detail'])
Exemple #38
0
    def test_replace_ok_by_name_multiple_bay(self, mock_utcnow):
        test_time = datetime.datetime(2000, 1, 1, 0, 0)
        mock_utcnow.return_value = test_time

        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=uuidutils.generate_uuid())
        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=uuidutils.generate_uuid())

        response = self.patch_json('/bays/test_bay',
                                   [{'path': '/name', 'value': 'test_bay',
                                     'op': 'replace'}],
                                   expect_errors=True)
        self.assertEqual('application/json', response.content_type)
        self.assertEqual(409, response.status_code)
Exemple #39
0
    def test_replace_ok_by_name_multiple_bay(self, mock_utcnow):
        test_time = datetime.datetime(2000, 1, 1, 0, 0)
        mock_utcnow.return_value = test_time

        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=utils.generate_uuid())
        obj_utils.create_test_bay(self.context, name='test_bay',
                                  uuid=utils.generate_uuid())

        response = self.patch_json('/bays/test_bay',
                                   [{'path': '/name', 'value': 'test_bay',
                                     'op': 'replace'}],
                                   expect_errors=True)
        self.assertEqual('application/json', response.content_type)
        self.assertEqual(409, response.status_code)
Exemple #40
0
 def test_create_container_without_memory(self,
                                          mock_container_create,
                                          mock_container_show):
     mock_container_create.side_effect = lambda x: x
     bay = obj_utils.create_test_bay(self.context)
     # Create a container with a command
     params = ('{"name": "My Docker", "image": "ubuntu",'
               '"command": "env",'
               '"bay_uuid": "%s",'
               '"environment": {"key1": "val1", "key2": "val2"}}' %
               bay.uuid)
     response = self.app.post('/v1/containers',
                              params=params,
                              content_type='application/json')
     self.assertEqual(201, response.status_int)
     # get all containers
     container = objects.Container.list(self.context)[0]
     container.status = 'Stopped'
     mock_container_show.return_value = container
     response = self.app.get('/v1/containers')
     self.assertEqual(200, response.status_int)
     self.assertEqual(1, len(response.json))
     c = response.json['containers'][0]
     self.assertIsNotNone(c.get('uuid'))
     self.assertEqual('My Docker', c.get('name'))
     self.assertEqual('env', c.get('command'))
     self.assertEqual('Stopped', c.get('status'))
     self.assertIsNone(c.get('memory'))
     self.assertEqual({"key1": "val1", "key2": "val2"},
                      c.get('environment'))
Exemple #41
0
 def test_get_one_by_name(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays/%s' % bay['name'])
     self.assertEqual(bay.uuid, response['uuid'])
     self.assertIn('name', response)
     self.assertIn('baymodel_id', response)
     self.assertIn('node_count', response)
Exemple #42
0
 def test_one(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays')
     self.assertEqual(bay.uuid, response['bays'][0]["uuid"])
     for key in ("name", "baymodel_id", "node_count", "status",
                 "master_count"):
         self.assertIn(key, response['bays'][0])
Exemple #43
0
 def test_get_one_by_name(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays/%s' % bay['name'])
     self.assertEqual(bay.uuid, response['uuid'])
     for key in ("name", "baymodel_id", "node_count", "status",
                 "api_address", "discovery_url", "node_addresses"):
         self.assertIn(key, response)
Exemple #44
0
 def test_policy_disallow_update(self):
     self.bay = obj_utils.create_test_bay(self.context,
                                          name='bay_example_A',
                                          node_count=3)
     self._common_policy_check(
         "bay:update", self.patch_json, '/bays/%s' % self.bay.name,
         [{'path': '/name', 'value': "new_name", 'op': 'replace'}])
Exemple #45
0
 def test_one(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays')
     self.assertEqual(bay.uuid, response['bays'][0]["uuid"])
     for key in ("name", "baymodel_id", "node_count", "status",
                 "master_count"):
         self.assertIn(key, response['bays'][0])
Exemple #46
0
 def test_create_container_without_memory(self,
                                          mock_container_create,
                                          mock_container_show):
     mock_container_create.side_effect = lambda x: x
     bay = obj_utils.create_test_bay(self.context)
     # Create a container with a command
     params = ('{"name": "My Docker", "image": "ubuntu",'
               '"command": "env",'
               '"bay_uuid": "%s",'
               '"environment": {"key1": "val1", "key2": "val2"}}' %
               bay.uuid)
     response = self.app.post('/v1/containers',
                              params=params,
                              content_type='application/json')
     self.assertEqual(201, response.status_int)
     # get all containers
     container = objects.Container.list(self.context)[0]
     container.status = 'Stopped'
     mock_container_show.return_value = container
     response = self.app.get('/v1/containers')
     self.assertEqual(200, response.status_int)
     self.assertEqual(1, len(response.json))
     c = response.json['containers'][0]
     self.assertIsNotNone(c.get('uuid'))
     self.assertEqual('My Docker', c.get('name'))
     self.assertEqual('env', c.get('command'))
     self.assertEqual('Stopped', c.get('status'))
     self.assertIsNone(c.get('memory'))
     self.assertEqual({"key1": "val1", "key2": "val2"},
                      c.get('environment'))
Exemple #47
0
 def test_get_one_by_name(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays/%s' % bay['name'])
     self.assertEqual(bay.uuid, response['uuid'])
     for key in ("name", "baymodel_id", "node_count", "status",
                 "api_address", "discovery_url", "node_addresses",
                 "master_count"):
         self.assertIn(key, response)
Exemple #48
0
 def test_policy_disallow_delete(self):
     bay = obj_utils.create_test_bay(self.context)
     container = obj_utils.create_test_container(self.context,
                                                 bay_uuid=bay.uuid)
     self._common_policy_check(
         'container:delete', self.app.delete,
         '/v1/containers/%s' % container.uuid,
         expect_errors=True)
Exemple #49
0
 def test_policy_disallow_create(self):
     bay = obj_utils.create_test_bay(self.context)
     pdict = apiutils.service_post_data(bay_uuid=bay.uuid)
     self._common_policy_check('service:create',
                               self.post_json,
                               '/services',
                               pdict,
                               expect_errors=True)
Exemple #50
0
 def test_detail(self):
     bay = obj_utils.create_test_bay(self.context)
     response = self.get_json('/bays/detail')
     self.assertEqual(bay.uuid, response['bays'][0]["uuid"])
     self.assertIn('name', response['bays'][0])
     self.assertIn('baymodel_id', response['bays'][0])
     self.assertIn('node_count', response['bays'][0])
     self.assertIn('status', response['bays'][0])
Exemple #51
0
 def setUp(self):
     super(TestDelete, self).setUp()
     self.baymodel = obj_utils.create_test_baymodel(self.context)
     self.bay = obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, "bay_delete")
     self.mock_bay_delete = p.start()
     self.mock_bay_delete.side_effect = self._simulate_rpc_bay_delete
     self.addCleanup(p.stop)
Exemple #52
0
 def setUp(self):
     super(TestPatch, self).setUp()
     self.baymodel = obj_utils.create_test_baymodel(self.context)
     self.bay = obj_utils.create_test_bay(self.context, name="bay_example_A", node_count=3)
     p = mock.patch.object(rpcapi.API, "bay_update")
     self.mock_bay_update = p.start()
     self.mock_bay_update.side_effect = self._simulate_rpc_bay_update
     self.addCleanup(p.stop)
 def test_policy_disallow_create(self):
     bay = obj_utils.create_test_bay(self.context)
     cert = api_utils.cert_post_data(bay_uuid=bay.uuid)
     self._common_policy_check("certificate:create",
                               self.post_json,
                               '/certificates',
                               cert,
                               expect_errors=True)
Exemple #54
0
    def setUp(self):
        super(TestGetCertificate, self).setUp()
        self.bay = obj_utils.create_test_bay(self.context)

        conductor_api_patcher = mock.patch('magnum.conductor.api.API')
        self.conductor_api_class = conductor_api_patcher.start()
        self.conductor_api = mock.MagicMock()
        self.conductor_api_class.return_value = self.conductor_api
        self.addCleanup(conductor_api_patcher.stop)
Exemple #55
0
 def setUp(self):
     super(TestDelete, self).setUp()
     self.cluster_template = obj_utils.create_test_cluster_template(
         self.context)
     self.bay = obj_utils.create_test_bay(self.context)
     p = mock.patch.object(rpcapi.API, 'bay_delete')
     self.mock_bay_delete = p.start()
     self.mock_bay_delete.side_effect = self._simulate_rpc_bay_delete
     self.addCleanup(p.stop)
Exemple #56
0
    def test_one(self):
        bay = obj_utils.create_test_bay(self.context)
        response = self.get_json('/bays')
        self.assertEqual(bay.uuid, response['bays'][0]["uuid"])
        self._verify_attrs(self._bay_attrs, response['bays'][0])

        # Verify atts that should not appear from bay's get_all response
        none_attrs = set(self._expand_bay_attrs) - set(self._bay_attrs)
        self._verify_attrs(none_attrs, response['bays'][0], positive=False)
Exemple #57
0
 def setUp(self):
     super(TestDelete, self).setUp()
     self.bay = obj_utils.create_test_bay(self.context)
     self.x509keypair = obj_utils.create_test_x509keypair(self.context)
     p = mock.patch.object(rpcapi.API, 'x509keypair_delete')
     self.mock_x509keypair_delete = p.start()
     self.mock_x509keypair_delete.side_effect = \
         self._simulate_rpc_x509keypair_delete
     self.addCleanup(p.stop)
Exemple #58
0
 def test_policy_only_owner_update(self):
     bay = obj_utils.create_test_bay(self.context, user_id='another')
     self._owner_check("bay:update",
                       self.patch_json,
                       '/bays/%s' % bay.uuid, [{
                           'path': '/name',
                           'value': "new_name",
                           'op': 'replace'
                       }],
                       expect_errors=True)
Exemple #59
0
 def test_policy_disallow_delete(self):
     p = mock.patch.object(rpcapi.API, 'bay_delete')
     self.mock_bay_delete = p.start()
     self.mock_bay_delete.side_effect = self._simulate_rpc_bay_delete
     self.addCleanup(p.stop)
     self.bay = obj_utils.create_test_bay(self.context)
     self._common_policy_check("bay:delete",
                               self.delete,
                               '/bays/%s' % self.bay.uuid,
                               expect_errors=True)