def test_delete_existing_server(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.side_effect = [ test_base.get_mock_session(["delete"], {"delete": { "content": None }}), test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_SERVER_RESPONSE.copy() }}), test_base.get_mock_session(["get"], {"get": { "content": None }}), ] tenant_id = "fcca3cc49d5e42caae15459e27103efc" server_id = "f5dc173b-6804-445a-a6d8-c705dad5b5eb" response = self.client.delete( ("/api/%s/v0/windriver-hudson-dc_RegionOne/%s/" "servers/%s" % (test_base.MULTIVIM_VERSION, tenant_id, server_id)), data=json.dumps(TEST_CREATE_SERVER), content_type="application/json", HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_200_OK, response.status_code)
def test_post_image(self, mock_get_vim_info, mock_get_session, mock_request, mock_run): mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": self.MOCK_GET_RESOURCES_RESPONSE }}), test_base.get_mock_session( ["post"], { "post": { "content": self.MOCK_POST_RESOURCE_RESPONSE, "status_code": 201 } }), ] mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_request.urlopen.return_value = "image" response = self.client.post("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/" "images" % test_base.MULTIVIM_VERSION, data=json.dumps( self.MOCK_POST_RESOURCE_REQUEST), content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_201_CREATED, response.status_code) self.assertIsNotNone(context['id']) self.assertEqual(1, context['returnCode'])
def test_get_list_servers(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_SERVERS_RESPONSE }}), test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_PORTS_RESPONSE }}), test_base.get_mock_session(["get"], {"get": { "content": None }}), ] tenant_id = "fcca3cc49d5e42caae15459e27103efc" response = self.client.get( ("/api/%s/v0/windriver-hudson-dc_RegionOne/%s/" "servers" % (test_base.MULTIVIM_VERSION, tenant_id)), {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_200_OK, response.status_code) content = response.json() self.assertEquals(mock_info.MOCK_VIM_INFO["name"], content["vimName"]) self.assertEquals(tenant_id, content["tenantId"]) self.assertEquals(mock_info.MOCK_VIM_INFO["vimId"], content["vimId"]) self.assertEquals(len(MOCK_GET_SERVERS_RESPONSE["servers"]), len(content["servers"]))
def test_create_server_successfully(self, mock_get_session): VimDriverUtils.get_vim_info = mock.Mock( return_value=mock_info.MOCK_VIM_INFO) mock_get_session.side_effect = [ test_base.get_mock_session(["get"], {"get": { "content": { "servers": [] } }}), test_base.get_mock_session( ["post"], {"post": { "content": MOCK_POST_SERVER_RESPONSE.copy() }}), ] tenant_id = "fcca3cc49d5e42caae15459e27103efc" server_id = "f5dc173b-6804-445a-a6d8-c705dad5b5eb" response = self.client.post( ("/api/%s/v0/windriver-hudson-dc_RegionOne/%s/" "servers/%s" % (test_base.MULTIVIM_VERSION, tenant_id, server_id)), data=json.dumps(TEST_CREATE_SERVER), content_type="application/json", HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertEquals(mock_info.MOCK_VIM_INFO["vimId"], context["vimId"]) self.assertEquals(tenant_id, context["tenantId"]) # self.assertEquals(len(TEST_CREATE_SERVER["volumeArray"]), # len(context['volumeArray'])) self.assertEquals(MOCK_POST_SERVER_RESPONSE["server"]["id"], context["id"]) self.assertEquals(len(TEST_CREATE_SERVER["nicArray"]), len(context["nicArray"])) self.assertEquals(mock_info.MOCK_VIM_INFO["name"], context["vimName"]) self.assertIsNotNone(TEST_CREATE_SERVER["boot"]) self.assertEquals(TEST_CREATE_SERVER["boot"]["volumeId"], context["boot"]["volumeId"]) self.assertEquals(TEST_CREATE_SERVER["boot"]["type"], context["boot"]["type"]) self.assertEquals(1, context["returnCode"]) self.assertEquals(TEST_CREATE_SERVER["name"], context["name"]) self.assertEquals(len(TEST_CREATE_SERVER["contextArray"]), len(context["contextArray"]))
def test_register_hpa_cputopology_successfully(self, mock_get_vim_info, mock_get_session): restcall.req_to_aai = mock.Mock() restcall.req_to_aai.return_value = (0, {}, status.HTTP_200_OK) mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_RESPONSE), self._get_mock_response( MOCK_GET_HPA_FLAVOR_LIST1_RESPONSE), self._get_mock_response( MOCK_GET_HPA_FLAVOR_onap_mini_EXTRA_SPECS2_RESPONSE), self._get_mock_response(MOCK_GET_IMAGE_RESPONSE), self._get_mock_response(), self._get_mock_response(MOCK_GET_AZ_RESPONSE), self._get_mock_response(MOCK_HYPERVISOR_RESPONSE), self._get_mock_response(MOCK_GET_SNAPSHOT_RESPONSE), self._get_mock_response(MOCK_GET_HYPERVISOR_RESPONSE) ] }) response = self.client.post( ("/api/multicloud-thinkcloud/v0/lenovo-hudson-dc_RegionOne/" "registry"), TEST_REGISTER_ENDPOINT_REQUEST, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_202_ACCEPTED, response.status_code)
def test_register_endpoint_successfully(self, mock_get_vim_info, mock_get_session): restcall.req_to_aai = mock.Mock() restcall.req_to_aai.return_value = (0, {}, status.HTTP_200_OK) mock_get_vim_info.return_value = OCATA_MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_RESPONSE), self._get_mock_response(MOCK_GET_FLAVOR_RESPONSE), self._get_mock_response(MOCK_GET_IMAGE_RESPONSE), self._get_mock_response(), self._get_mock_response(MOCK_GET_AZ_RESPONSE), self._get_mock_response(MOCK_HYPERVISOR_RESPONSE), self._get_mock_response(MOCK_GET_SNAPSHOT_RESPONSE), self._get_mock_response(MOCK_GET_HYPERVISOR_RESPONSE) ] }) response = self.client.post( ("/api/multicloud-newton/v0/windriver-hudson-dc_RegionOne/" "registry"), TEST_REGISTER_ENDPOINT_REQUEST, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_202_ACCEPTED, response.status_code)
def test_get_flavor_not_found(self, mock_get_vim_info, mock_get_session, mock_get_flavor_extra_specs): mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "status_code": status.HTTP_404_NOT_FOUND }}), ] mock_extra_specs = mock.Mock(spec=test_base.MockResponse) mock_extra_specs.json.return_value = {"extra_specs": {}} mock_get_flavor_extra_specs.return_value = mock_extra_specs mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO response = self.client.get( ("/api/%s/v0/windriver-hudson-dc_RegionOne" "/fcca3cc49d5e42caae15459e27103efc/flavors/" "uuid_1" % test_base.MULTIVIM_VERSION), {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) # TODO(sshank): 404 status is not possible. self.assertEquals(status.HTTP_500_INTERNAL_SERVER_ERROR, response.status_code) self.assertIn('error', response.data)
def test_create_existing_flavor(self, mock_get_vim_info, mock_get_session, mock_get_flavor_extra_specs): mock_get_session.side_effect = [ test_base.get_mock_session( ["get", "post"], { "get": { "content": self.MOCK_GET_RESOURCES_RESPONSE }, "post": { "content": self.MOCK_POST_RESOURCE_RESPONSE, "status_code": status.HTTP_202_ACCEPTED, } }), ] mock_extra_specs = mock.Mock(spec=test_base.MockResponse) mock_extra_specs.json.return_value = {"extra_specs": {}} mock_get_flavor_extra_specs.return_value = mock_extra_specs mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO response = self.client.post( ("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/" "flavors" % test_base.MULTIVIM_VERSION), data=json.dumps(self.MOCK_POST_RESOURCE_REQUEST_EXISTING), content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertIsNotNone(context['returnCode']) self.assertEqual(0, context['returnCode'])
def test_get_flavors(self, mock_get_vim_info, mock_get_session, mock_get_flavor_extra_specs): mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": self.MOCK_GET_RESOURCES_RESPONSE }}), ] mock_extra_specs = mock.Mock(spec=test_base.MockResponse) mock_extra_specs.json.return_value = {"extra_specs": {}} mock_get_flavor_extra_specs.return_value = mock_extra_specs mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO response = self.client.get(("/api/%s/v0/windriver-hudson-dc_RegionOne" "/fcca3cc49d5e42caae15459e27103efc/" "flavors" % test_base.MULTIVIM_VERSION), {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertIsNotNone(context['flavors']) self.assertEqual(self.MOCK_GET_RESOURCES_RESPONSE["flavors"], context['flavors'])
def test_register_hpa_pcipassthrough_successfully( self, mock_get_vim_info, mock_get_session): restcall.req_to_aai = mock.Mock() restcall.req_to_aai.return_value = (0, {}, status.HTTP_200_OK) mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_RESPONSE), self._get_mock_response(MOCK_GET_HPA_FLAVOR_LIST1_RESPONSE), self._get_mock_response(MOCK_GET_HPA_FLAVOR_ONAP_MINI_EXTRA_SPECS6_RESPONSE), self._get_mock_response(MOCK_GET_IMAGE_RESPONSE), self._get_mock_response(), self._get_mock_response(MOCK_GET_AZ_RESPONSE), self._get_mock_response(MOCK_HYPERVISOR_RESPONSE), self._get_mock_response(MOCK_GET_SNAPSHOT_RESPONSE), self._get_mock_response(MOCK_GET_HYPERVISOR_RESPONSE) ] }) response = self.client.post( "/api/multicloud-pike/v0/windriver-hudson-dc_RegionOne/registry", TEST_REGISTER_ENDPOINT_REQUEST, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
def test_discover_flavors(self): restcall.req_to_aai = mock.Mock() restcall.req_to_aai.return_value = (0, {}, status.HTTP_200_OK) mock_session = test_base.get_mock_session(["get"], { "side_effect": [test_base.get_mock_response(MOCK_GET_FLAVOR_RESPONSE)] }) retcode, content = self.view.register_helper._discover_flavors( vimid="windriver-hudson-dc_RegionOne", session=mock_session, viminfo=MOCK_VIM_INFO) self.assertEqual(retcode, 0)
def test_get_vport_not_found(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], {"get": {"content": None, "status_code": status.HTTP_404_NOT_FOUND}}) response = self.client.get( self.url + "ports/uuid_3", {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_500_INTERNAL_SERVER_ERROR, response.status_code) self.assertIn('error', response.data)
def test_get_vport(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], {"get": {"content": MOCK_GET_VPORT_RESPONSE}}) response = self.client.get( self.url + "ports/uuid_1", {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertEquals(MOCK_GET_VPORT_RESPONSE['id'], context['id'])
def test_delete_vport(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["delete"], {"delete" : {"content": None, "status_code": status.HTTP_204_NO_CONTENT}}) response = self.client.delete( self.url + "ports/uuid_1", HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_204_NO_CONTENT, response.status_code) self.assertIsNone(response.data)
def test_create_existing_server(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_SERVERS_RESPONSE }}), test_base.get_mock_session(["get"], {"get": { "content": None }}), test_base.get_mock_session(["get"], {"get": { "content": None }}), ] tenant_id = "fcca3cc49d5e42caae15459e27103efc" server_id = "f5dc173b-6804-445a-a6d8-c705dad5b5eb" response = self.client.post( ("/api/%s/v0/windriver-hudson-dc_RegionOne/%s/" "servers/%s" % (test_base.MULTIVIM_VERSION, tenant_id, server_id)), data=json.dumps(TEST_CREATE_SERVER), content_type="application/json", HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertIsNone(context["volumeArray"]) self.assertIsNone(context["flavorId"]) self.assertIsNone(context["availabilityZone"]) self.assertEquals(TEST_CREATE_SERVER["name"], context["name"]) self.assertEquals(MOCK_GET_SERVERS_RESPONSE["servers"][0]["id"], context["id"]) self.assertIsNone(context["nicArray"]) self.assertIsNotNone(context["boot"]) self.assertEquals(0, context["returnCode"])
def test_events_check_success(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_SERVERS_DETAIL_RESPONSE), ] }) response = self.client.post( "/api/multicloud-newton/v0/windriver-hudson-dc_RegionOne/events_check", HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertEqual(SUCCESS_VMSTATE_RESPONSE, response.data)
def test_get_volume(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], {"get": { "content": self.MOCK_GET_RESOURCE_RESPONSE }}) response = self.client.get("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/volumes/" "uuid_1" % test_base.MULTIVIM_VERSION, {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertEquals(self.MOCK_GET_RESOURCE_RESPONSE['id'], context['id'])
def test_discover_flavors_w_hpa_numa(self): restcall.req_to_aai = mock.Mock() restcall.req_to_aai.return_value = (0, {}, status.HTTP_200_OK) mock_session = test_base.get_mock_session( ["get"], { "side_effect": [ test_base.get_mock_response(MOCK_GET_FLAVOR_RESPONSE_w_hpa_numa), test_base.get_mock_response(MOCK_GET_FLAVOR_EXTRASPECS_RESPONSE_w_hpa_numa), ] }), retcode, content = self.view.register_helper._discover_flavors( vimid="starlingx_RegionOne", session=mock_session, viminfo=MOCK_VIM_INFO ) self.assertEqual(retcode, 11)
def test_capacity_check_success(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_LIMIT_RESPONSE), self._get_mock_response(MOCK_GET_HYPER_STATATICS_RESPONSE), self._get_mock_response(MOCK_GET_STORAGE_RESPONSE), ] }) response = self.client.post( "/api/multicloud-starlingx/v0/starlingx_RegionOne/capacity_check", TEST_REQ_SUCCESS_SOURCE, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_200_OK, response.status_code) self.assertEqual({'AZs': [], "result": True}, response.data)
def test_retrieve_projects_by_querystring(self, mock_get_vim_info, mock_get_session): mock_vim_identity_v2 = mock_info.MOCK_VIM_INFO.copy() mock_vim_identity_v2["url"] = "http://128.224.180.14:5000/v2" mock_get_vim_info.return_value = mock_vim_identity_v2 mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_PROJECTS_RESPONSE }}), ] response = self.client.get( ("/api/%s/v0/windriver-hudson-dc_RegionOne/" "tenants?name=project" % test_base.MULTIVIM_VERSION), {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_200_OK, response.status_code)
def test_capacity_check_nova_limits_failed(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_LIMIT_RESPONSE), self._get_mock_response(MOCK_GET_HYPER_STATATICS_RESPONSE), self._get_mock_response(MOCK_GET_STORAGE_RESPONSE), ] }) response = self.client.post( "/api/multicloud-titaniumcloud/v0/windriver-hudson-dc_RegionOne/capacity_check", TEST_REQ_FAILED_SOURCE, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_200_OK, response.status_code) self.assertEqual({'AZs': [], "result": False}, response.data)
def test_capacity_check_volume_limits_outofstorage(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_LIMIT_RESPONSE), self._get_mock_response(MOCK_GET_HYPER_STATATICS_RESPONSE), self._get_mock_response(MOCK_GET_STORAGE_RESPONSE_OOS), ] }) response = self.client.post( "/api/multicloud-starlingx/v0/starlingx_RegionOne/capacity_check", data=json.dumps(TEST_REQ_SUCCESS_SOURCE), content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_200_OK, response.status_code) self.assertEqual({'AZs': [], "result": False}, response.data)
def test_create_vport_unsuccessfully(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get", "post"], { "get" : {"content": MOCK_GET_VPORTS_RESPONSE}, "post": {"content": MOCK_POST_VPORT_RESPONSE, "status_code": status.HTTP_202_ACCEPTED} }) response = self.client.post( self.url + "ports", {}, content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertIn('error', context) self.assertEquals(status.HTTP_500_INTERNAL_SERVER_ERROR, response.status_code)
def test_retrieve_projects(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.side_effect = [ test_base.get_mock_session( ["get"], {"get": { "content": MOCK_GET_PROJECTS_RESPONSE }}), ] response = self.client.get(("/api/%s/v0/windriver-hudson-dc_RegionOne/" "tenants" % test_base.MULTIVIM_VERSION), {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEquals(status.HTTP_200_OK, response.status_code) content = response.json() self.assertIsNotNone(content["tenants"]) self.assertEquals(len(MOCK_GET_PROJECTS_RESPONSE["tenants"]), len(content["tenants"])) self.assertEquals(mock_info.MOCK_VIM_INFO["name"], content["vimName"]) self.assertEquals(mock_info.MOCK_VIM_INFO["vimId"], content["vimId"])
def test_create_existing_vport(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get", "post"], { "get" : {"content": MOCK_GET_VPORTS_RESPONSE}, "post": {"content": MOCK_POST_VPORT_RESPONSE, "status_code": status.HTTP_202_ACCEPTED} }) response = self.client.post( self.url + "ports", data=json.dumps(MOCK_POST_VPORT_REQUEST_EXISTING), content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertIsNotNone(context['returnCode']) self.assertEqual(0, context['returnCode'])
def test_capacity_check_nova_hypervisor_outofvcpu(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(MOCK_GET_TENANT_LIMIT_RESPONSE), self._get_mock_response( MOCK_GET_HYPER_STATATICS_RESPONSE_OUTOFVCPU), self._get_mock_response(MOCK_GET_STORAGE_RESPONSE), ] }) response = self.client.post( "/api/multicloud-titaniumcloud/v0/windriver-hudson-dc_RegionOne/capacity_check", data=json.dumps(TEST_REQ_SUCCESS_SOURCE), content_type='application/json', HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_200_OK, response.status_code) self.assertEqual({'AZs': [], "result": False}, response.data)
def test_delete_flavor(self, mock_get_vim_info, mock_get_session): mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO mock_get_session.side_effect = [ test_base.get_mock_session( ["get", "delete"], { "get": { "content": self.MOCK_GET_EXTRA_SPECS }, "delete": { "status_code": status.HTTP_204_NO_CONTENT } }), ] response = self.client.delete( ("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/flavors/" "uuid_1" % test_base.MULTIVIM_VERSION), HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) self.assertEqual(status.HTTP_204_NO_CONTENT, response.status_code) self.assertIsNone(response.data)
def test_get_limits_list_failure(self, mock_get_vim_info, mock_get_session): mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(self.MOCK_GET_LIMITS_RESPONSE), self._get_mock_response({}), self._get_mock_response(self.MOCK_GET_LIMITS_RESPONSE) ] }) mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO response = self.client.get("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/" "limits" % test_base.MULTIVIM_VERSION, {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertIn('error', context) self.assertEquals(status.HTTP_500_INTERNAL_SERVER_ERROR, response.status_code)
def test_get_limits_list(self, mock_get_vim_info, mock_get_session): mock_get_session.return_value = test_base.get_mock_session( ["get"], { "side_effect": [ self._get_mock_response(self.MOCK_GET_LIMITS_RESPONSE), self._get_mock_response(self.MOCK_GET_QUOTAS_RESPONSE), self._get_mock_response(self.MOCK_GET_LIMITS_RESPONSE) ] }) mock_get_vim_info.return_value = mock_info.MOCK_VIM_INFO response = self.client.get("/api/%s/v0/windriver-hudson-dc_RegionOne/" "fcca3cc49d5e42caae15459e27103efc/" "limits" % test_base.MULTIVIM_VERSION, {}, HTTP_X_AUTH_TOKEN=mock_info.MOCK_TOKEN_ID) context = response.json() self.assertEquals(status.HTTP_200_OK, response.status_code) self.assertIsNotNone(context) self.assertIn( self.MOCK_GET_LIMITS_RESPONSE["limits"]["absolute"]['id'], context['id'])