diff options
Diffstat (limited to 'asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute')
76 files changed, 0 insertions, 58203 deletions
diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/TODO/ImportCapabilityTypeCITest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/TODO/ImportCapabilityTypeCITest.java deleted file mode 100644 index 3af40c5bb8..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/TODO/ImportCapabilityTypeCITest.java +++ /dev/null @@ -1,135 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.TODO; - -import java.io.File; -import java.io.IOException; - -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.mime.MultipartEntityBuilder; -import org.apache.http.entity.mime.content.FileBody; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.tinkerpop.gremlin.structure.Vertex; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.DbUtils.TitanState; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterClass; -import org.testng.annotations.Test; - -import fj.data.Either; - -public class ImportCapabilityTypeCITest { - public static final DbUtils DbUtils = new DbUtils(); - - @AfterClass - public static void afterClass() { - DbUtils.shutDowntitan(); - } - - static Config config = Config.instance(); - - // private final String IMPORT_CAPABILITY_TYPES_PATH = - // "src/test/resources/CI/importResourceTests/import_capabilitiesTypes/"; - - @Test - public void testAddingCapabilityTypes() throws IOException { - TitanState originalState = DbUtils.getCurrentTitanState(); - - String importResourceDir = config.getImportResourceConfigDir(); - - String capabilityTypes = importResourceDir + File.separator + "capabilityTypesCi.zip"; - // importCapabilityType("src/test/resources/CI/importResource/capabilityTypesCi.zip"); - importCapabilityType(capabilityTypes); - Either<Vertex, Boolean> eitherVertex = DbUtils.getVertexByUId("tosca.capabilities.Test.Ci"); - AssertJUnit.assertTrue(eitherVertex.isLeft()); - DbUtils.restoreToTitanState(originalState); - eitherVertex = DbUtils.getVertexByUId("tosca.capabilities.Test.Ci"); - AssertJUnit.assertTrue(eitherVertex.isRight()); - } - - @Test - public void AddingCapabilityNotFound() throws IOException { - TitanState originalState = DbUtils.getCurrentTitanState(); - String importResourceTestsDir = config.getImportResourceTestsConfigDir(); - String capabilitiesTests = importResourceTestsDir + File.separator + "capabilityTypesCi.zip"; - importCapabilityType(capabilitiesTests); - Either<Vertex, Boolean> eitherVertex = DbUtils.getVertexByUId("tosca.capabilities.NonExsitingCapability"); - AssertJUnit.assertTrue(eitherVertex.isRight()); - DbUtils.restoreToTitanState(originalState); - } - - public static Integer importAllCapabilityTypes() throws IOException { - - String importResourceDir = config.getImportResourceConfigDir() + File.separator + "capabilityTypes.zip"; - // return - // importCapabilityType("src/test/resources/CI/importResource/capabilityTypes.zip"); - return importCapabilityType(importResourceDir); - } - - private static Integer importCapabilityType(String filePath) throws IOException { - Config config = Utils.getConfig(); - CloseableHttpResponse response = null; - MultipartEntityBuilder mpBuilder = MultipartEntityBuilder.create(); - - mpBuilder.addPart("capabilityTypeZip", new FileBody(new File(filePath))); - - String url = String.format(Urls.IMPORT_CAPABILITY_TYPE, config.getCatalogBeHost(), config.getCatalogBePort()); - - CloseableHttpClient client = HttpClients.createDefault(); - try { - HttpPost httpPost = new HttpPost(url); - httpPost.addHeader("USER_ID", "jh0003"); - httpPost.setEntity(mpBuilder.build()); - response = client.execute(httpPost); - return response.getStatusLine().getStatusCode(); - } finally { - closeResponse(response); - closeHttpClient(client); - - } - } - - private static void closeHttpClient(CloseableHttpClient client) { - try { - if (client != null) { - client.close(); - } - } catch (IOException e) { - System.out.println("failed to close client or response: " + e.getMessage()); - } - } - - private static void closeResponse(CloseableHttpResponse response) { - try { - if (response != null) { - response.close(); - } - } catch (IOException e) { - System.out.println("failed to close client or response: " + e.getMessage()); - } - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ArtifactServletTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ArtifactServletTest.java deleted file mode 100644 index 49b556fc28..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ArtifactServletTest.java +++ /dev/null @@ -1,656 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.util.HashMap; -import java.util.Map; - -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.HttpResponseException; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpDelete; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.BasicResponseHandler; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.codehaus.jackson.map.ObjectMapper; -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.parser.JSONParser; -import org.json.simple.parser.ParseException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum; -import org.openecomp.sdc.common.util.GeneralUtility; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -import fj.data.Either; - -public class ArtifactServletTest extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(ArtifactServletTest.class.getName()); - protected static final String UPLOAD_ARTIFACT_PAYLOAD = "UHVUVFktVXNlci1LZXktRmlsZS0yOiBzc2gtcnNhDQpFbmNyeXB0aW9uOiBhZXMyNTYtY2JjDQpDb21tZW5wOA0K"; - protected static final String UPLOAD_ARTIFACT_NAME = "TLV_prv.ppk"; - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - protected Gson gson = new Gson(); - protected JSONParser jsonParser = new JSONParser(); - protected String serviceVersion; - protected Resource resourceDetailsVFCcomp; - protected Service defaultService1; - - protected User sdncUserDetails; - - @Rule - public static TestName name = new TestName(); - - public ArtifactServletTest() { - super(name, ArtifactServletTest.class.getName()); - - } - - @BeforeMethod - public void create() throws Exception { - - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - Either<Resource, RestResponse> resourceDetailsVFCcompE = AtomicOperationUtils - .createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, NormativeTypesEnum.COMPUTE, - ResourceCategoryEnum.APPLICATION_L4_APP_SERVER, UserRoleEnum.DESIGNER, true); - resourceDetailsVFCcomp = resourceDetailsVFCcompE.left().value(); - Either<Service, RestResponse> defaultService1e = AtomicOperationUtils - .createDefaultService(UserRoleEnum.DESIGNER, true); - defaultService1 = defaultService1e.left().value(); - } - - @Test - public void upadteArtifactWithPayLoadToResourcseTest() throws Exception { - - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultArtifact(); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertEquals("add informational artifact request returned status: " + response.getErrorCode(), 200, - status); - - defaultArtifact.setDescription("kjglkh"); - defaultArtifact.setArtifactName("install_apache.sh"); - defaultArtifact.setArtifactType("SHELL"); - defaultArtifact.setPayload("new payload"); - - response = ArtifactRestUtils.updateInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to update artifact metatdata: " + response.getErrorCode(), 200, status); - - response = ArtifactRestUtils.deleteInformationalArtifactFromResource(resourceDetailsVFCcomp.getUniqueId(), - defaultArtifact, sdncUserDetails); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to remove artifact: " + response.getErrorCode(), 200, status); - - } - - @Test - public void createAndUpdateArtifactToInterface() throws Exception { - - CloseableHttpResponse response; - int status; - CloseableHttpClient httpclient = HttpClients.createDefault(); - - try { - // upload artifact to interface - String interfaceName = "Standard"; - String operationName = "configure"; - - String userBodyJson = createUploadArtifactBodyJson(); - String url = String.format(Urls.UPLOAD_ARTIFACT_BY_INTERFACE_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), interfaceName, operationName); - - HttpPost httpPost = createPostAddArtifactRequeast(userBodyJson, url, true); - response = httpclient.execute(httpPost); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, status, 200); - - // get artifact uniqueId - String artifactId = getLifecycleArtifactUid(response); - - Map<String, Object> jsonBody = new HashMap<String, Object>(); - jsonBody.put("artifactName", "TLV_prv.ppk"); - jsonBody.put("artifactDisplayName", "configure"); - jsonBody.put("artifactType", "SHELL"); - jsonBody.put("mandatory", "false"); - String newDescription = "new something"; - jsonBody.put("description", newDescription); - jsonBody.put("artifactLabel", "configure"); - userBodyJson = gson.toJson(jsonBody); - - url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_BY_INTERFACE_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), interfaceName, operationName, - artifactId); - - httpPost = createPostAddArtifactRequeast(userBodyJson, url, false); - - response = httpclient.execute(httpPost); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, 200, status); - - url = String.format(Urls.GET_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), - resourceDetailsVFCcomp.getUniqueId()); - HttpGet httpGet = createGetRequest(url); - response = httpclient.execute(httpGet); - AssertJUnit.assertTrue(response.getStatusLine().getStatusCode() == 200); - String responseString = new BasicResponseHandler().handleResponse(response); - - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - responseMap = (JSONObject) responseMap.get("interfaces"); - responseMap = (JSONObject) responseMap.get(interfaceName.toLowerCase()); - responseMap = (JSONObject) responseMap.get("operations"); - responseMap = (JSONObject) responseMap.get(operationName.toLowerCase()); - responseMap = (JSONObject) responseMap.get("implementation"); - String description = (String) responseMap.get("description"); - - AssertJUnit.assertEquals("the new description value was not set", newDescription, description); - - // delete artifact - url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_BY_INTERFACE_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), interfaceName, operationName, - artifactId); - HttpDelete httpDelete = createDeleteArtifactRequest(url); - - response = httpclient.execute(httpDelete); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, status, 200); - } finally { - httpclient.close(); - } - - } - - protected String createUploadArtifactBodyJson() { - Map<String, Object> jsonBody = new HashMap<String, Object>(); - jsonBody.put("artifactName", UPLOAD_ARTIFACT_NAME); - jsonBody.put("artifactDisplayName", "configure"); - jsonBody.put("artifactType", "SHELL"); - jsonBody.put("mandatory", "false"); - jsonBody.put("description", "ff"); - jsonBody.put("payloadData", UPLOAD_ARTIFACT_PAYLOAD); - jsonBody.put("artifactLabel", "configure"); - return gson.toJson(jsonBody); - } - - protected ArtifactDefinition getArtifactDataFromJson(String json) { - Gson gson = new Gson(); - ArtifactDefinition artifact = new ArtifactDefinition(); - artifact = gson.fromJson(json, ArtifactDefinition.class); - - /* - * atifact.setArtifactName(UPLOAD_ARTIFACT_NAME); - * artifact.setArtifactDisplayName("configure"); - * artifact.setArtifactType("SHELL"); artifact.setMandatory(false); - * artifact.setDescription("ff"); - * artifact.setPayloadData(UPLOAD_ARTIFACT_PAYLOAD); - * artifact.setArtifactLabel("configure"); - */ - return artifact; - } - - protected HttpGet createGetRequest(String url) { - HttpGet httpGet = new HttpGet(url); - httpGet.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httpGet.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httpGet.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - return httpGet; - } - - protected String getArtifactUid(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected String getArtifactEsId(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String esId = (String) responseMap.get("EsId"); - return esId; - } - - protected ArtifactDefinition addArtifactDataFromResponse(HttpResponse response, ArtifactDefinition artifact) - throws HttpResponseException, IOException, ParseException { - // String responseString = new - // BasicResponseHandler().handleResponse(response); - HttpEntity entity = response.getEntity(); - String responseString = EntityUtils.toString(entity); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - artifact.setEsId((String) responseMap.get("esId")); - artifact.setUniqueId((String) responseMap.get("uniqueId")); - artifact.setArtifactGroupType(ArtifactGroupTypeEnum.findType((String) responseMap.get("artifactGroupType"))); - artifact.setTimeout(((Long) responseMap.get("timeout")).intValue()); - return artifact; - } - - protected String getLifecycleArtifactUid(CloseableHttpResponse response) - throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - responseMap = (JSONObject) responseMap.get("implementation"); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected HttpDelete createDeleteArtifactRequest(String url) { - HttpDelete httpDelete = new HttpDelete(url); - httpDelete.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - httpDelete.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - return httpDelete; - } - - protected HttpPost createPostAddArtifactRequeast(String jsonBody, String url, boolean addMd5Header) - throws UnsupportedEncodingException { - HttpPost httppost = new HttpPost(url); - httppost.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httppost.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httppost.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - if (addMd5Header) { - httppost.addHeader(HttpHeaderEnum.Content_MD5.getValue(), GeneralUtility.calculateMD5Base64EncodedByString(jsonBody)); - } - StringEntity input = new StringEntity(jsonBody); - input.setContentType("application/json"); - httppost.setEntity(input); - log.debug("Executing request {}", httppost.getRequestLine()); - return httppost; - } - - protected String createLoadArtifactBody() { - Map<String, Object> json = new HashMap<String, Object>(); - json.put("artifactName", "install_apache2.sh"); - json.put("artifactType", "SHELL"); - json.put("description", "ddd"); - json.put("payloadData", "UEsDBAoAAAAIAAeLb0bDQz"); - json.put("artifactLabel", "name123"); - - String jsonStr = gson.toJson(json); - return jsonStr; - } - - protected void checkDeleteResponse(RestResponse response) { - BaseRestUtils.checkStatusCode(response, "delete request failed", false, 204, 404); - } - - protected ArtifactUiDownloadData getArtifactUiDownloadData(String artifactUiDownloadDataStr) throws Exception { - - ObjectMapper mapper = new ObjectMapper(); - try { - ArtifactUiDownloadData artifactUiDownloadData = mapper.readValue(artifactUiDownloadDataStr, - ArtifactUiDownloadData.class); - return artifactUiDownloadData; - } catch (Exception e) { - e.printStackTrace(); - } - return null; - } - - // TODO - // @Ignore("") - @Test - public void addArtifactNoPayLoadToResourcseTest() throws Exception { - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultArtifact(); - defaultArtifact.setPayload(null); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertTrue(status == 400); - - } - - @Test - public void upadteArtifactNoPayLoadToResourcseTest() throws Exception { - - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultArtifact(); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertEquals("add informational artifact request returned status: " + response.getErrorCode(), 200, - status); - - defaultArtifact.setDescription("kjglkh"); - defaultArtifact.setArtifactName("install_apache.sh"); - defaultArtifact.setArtifactType("SHELL"); - defaultArtifact.setPayload(null); - - response = ArtifactRestUtils.updateInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to update artifact metatdata: " + response.getErrorCode(), 200, status); - - response = ArtifactRestUtils.deleteInformationalArtifactFromResource(resourceDetailsVFCcomp.getUniqueId(), - defaultArtifact, sdncUserDetails); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to remove artifact: " + response.getErrorCode(), 200, status); - - } - - // TODO - @Test(enabled = false) - public void updateDeploymentArtifactToResourcseTest() throws Exception { - - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultDeploymentArtifactForType("HEAT"); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertEquals("add informational artifact request returned status: " + response.getErrorCode(), 200, - status); - - response = ArtifactRestUtils.updateInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to update artifact metatdata: " + response.getErrorCode(), 200, status); - - response = ArtifactRestUtils.deleteInformationalArtifactFromResource(resourceDetailsVFCcomp.getUniqueId(), - defaultArtifact, sdncUserDetails); - status = response.getErrorCode(); - AssertJUnit.assertEquals("failed to remove artifact: " + response.getErrorCode(), 200, status); - - } - - // -------------------- - @Test - public void addArtifactToResourcse_AlreadyExistsTest() throws Exception { - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - String jsonBody = createLoadArtifactBody(); - - String url = String.format(Urls.ADD_ARTIFACT_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId()); - HttpPost httppost = createPostAddArtifactRequeast(jsonBody, url, true); - CloseableHttpResponse response = httpclient.execute(httppost); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertTrue("failed to add artifact", status == 200); - - String artifactId = getArtifactUid(response); - - httppost = createPostAddArtifactRequeast(jsonBody, url, true); - response = httpclient.execute(httppost); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("the returned status code is in correct", status, 400); - - url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_OF_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), artifactId); - HttpDelete httpDelete = createDeleteArtifactRequest(url); - response = httpclient.execute(httpDelete); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertTrue("failed to remove artifact", status == 200); - } finally { - httpclient.close(); - } - - } - - @Test - public void addArtifactToResourcse_MissingContentTest() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - Map<String, Object> json = new HashMap<String, Object>(); - json.put("description", "desc"); - json.put("payloadData", "UEsDBAoAAAAIAAeLb0bDQz"); - json.put("Content-MD5", "YTg2Mjg4MWJhNmI5NzBiNzdDFkMWI="); - - String jsonBody = gson.toJson(json); - - String url = String.format(Urls.ADD_ARTIFACT_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId()); - HttpPost httppost = createPostAddArtifactRequeast(jsonBody, url, true); - CloseableHttpResponse response = httpclient.execute(httppost); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("the returned status code is in correct", status, 400); - } finally { - httpclient.close(); - } - - } - - @Test - public void addArtifactToResourcse_MissingMd5Test() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - HashMap<String, Object> json = new HashMap<String, Object>(); - json.put("artifactName", "install_apache.sh"); - json.put("artifactType", "SHELL"); - json.put("description", "kjglkh"); - json.put("payloadData", "UEsDBYTEIWUYIFHWFMABCNAoAAAAIAAeLb0bDQz"); - json.put("artifactLabel", "name123"); - String url = String.format(Urls.ADD_ARTIFACT_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId()); - String jsonBody = gson.toJson(json); - HttpPost httppost = createPostAddArtifactRequeast(jsonBody, url, false); - CloseableHttpResponse response = httpclient.execute(httppost); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertTrue("failed to update artifact metatdata", status == 400); - } finally { - httpclient.close(); - } - - } - - @Test - public void deleteArtifact_NotExistsTest() throws Exception { - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - String url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_OF_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), "someFakeId"); - HttpDelete httpDelete = createDeleteArtifactRequest(url); - CloseableHttpResponse response = httpclient.execute(httpDelete); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("the returned status code is in correct", status, 404); - } finally { - httpclient.close(); - } - - } - - @Test - public void createAndRemoveArtifactToInterface() throws Exception { - CloseableHttpResponse response; - int status; - CloseableHttpClient httpclient = HttpClients.createDefault(); - - try { - // upload artifact to interface - String interfaceName = "Standard"; - String operationName = "configure"; - - String userBodyJson = createUploadArtifactBodyJson(); - String url = String.format(Urls.UPLOAD_ARTIFACT_BY_INTERFACE_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), interfaceName, operationName); - - HttpPost httpPost = createPostAddArtifactRequeast(userBodyJson, url, true); - response = httpclient.execute(httpPost); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, status, 200); - - // get artifact uniqueId - String artifactId = getLifecycleArtifactUid(response); - - // delete artifact - url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_BY_INTERFACE_TO_RESOURCE, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetailsVFCcomp.getUniqueId(), interfaceName, operationName, - artifactId); - HttpDelete httpDelete = createDeleteArtifactRequest(url); - - response = httpclient.execute(httpDelete); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, status, 200); - } finally { - httpclient.close(); - } - - } - - @Test - public void addArtifactToServiceTest() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - - try { - String jsonStr = createLoadArtifactBody(); - - String url = String.format(Urls.ADD_ARTIFACT_TO_SERVICE, config.getCatalogBeHost(), - config.getCatalogBePort(), defaultService1.getUniqueId()); - HttpPost httpPost = createPostAddArtifactRequeast(jsonStr, url, true); - CloseableHttpResponse result = httpclient.execute(httpPost); - int status = result.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, 200, status); - - String artifactId = getArtifactUid(result); - - url = String.format(Urls.UPDATE_OR_DELETE_ARTIFACT_OF_SERVICE, config.getCatalogBeHost(), - config.getCatalogBePort(), defaultService1.getUniqueId(), artifactId); - HttpDelete httpDelete = createDeleteArtifactRequest(url); - - result = httpclient.execute(httpDelete); - status = result.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 200, returned :" + status, 200, status); - } finally { - RestResponse response = ServiceRestUtils.deleteService(defaultService1.getName(), serviceVersion, - sdncUserDetails); - checkDeleteResponse(response); - httpclient.close(); - } - } - - @Test - public void addArtifactNotSupportedTypeToServiceTest() throws Exception { - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - Map<String, Object> json = new HashMap<String, Object>(); - json.put("artifactName", "install_apache.sh"); - json.put("artifactType", "SHELL11"); - json.put("description", "fff"); - json.put("payloadData", "UEsDBAoAAAAIAAeLb0bDQz"); - json.put("artifactLabel", "name123"); - - String jsonStr = gson.toJson(json); - - String url = String.format(Urls.ADD_ARTIFACT_TO_SERVICE, config.getCatalogBeHost(), - config.getCatalogBePort(), defaultService1.getUniqueId()); - - HttpPost httpPost = createPostAddArtifactRequeast(jsonStr, url, true); - CloseableHttpResponse result = httpclient.execute(httpPost); - int status = result.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("response code is not 400, returned :" + status, 400, status); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name()); - - String responseString = EntityUtils.toString(result.getEntity()); - - JSONObject map = (JSONObject) jsonParser.parse(responseString); - JSONObject requestError = (JSONObject) map.get("requestError"); - JSONObject serviceException = (JSONObject) requestError.get("serviceException"); - - String msgId = (String) serviceException.get("messageId"); - AssertJUnit.assertEquals("message id did not match expacted", errorInfo.getMessageId(), msgId); - - String text = (String) serviceException.get("text"); - AssertJUnit.assertEquals("text did not match expacted", errorInfo.getMessage(), text); - - JSONArray variables = (JSONArray) serviceException.get("variables"); - String type = (String) variables.get(0); - AssertJUnit.assertEquals("variable did not match expacted", "SHELL11", type); - } finally { - RestResponse response = ServiceRestUtils.deleteService(defaultService1.getName(), serviceVersion, - sdncUserDetails); - checkDeleteResponse(response); - httpclient.close(); - } - - } - - @Test - public void addArtifactToResourceTest() throws Exception { - - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultArtifact(); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, - resourceDetailsVFCcomp.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertEquals("add informational artifact request returned status: " + response.getErrorCode(), 200, - status); - - RestResponse resourceResp = ResourceRestUtils.getResource(resourceDetailsVFCcomp.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(resourceResp.getResponse()); - AssertJUnit.assertNotNull(resource); - - Map<String, ArtifactDefinition> artifacts = resource.getArtifacts(); - boolean isExist = false; - for (Map.Entry<String, ArtifactDefinition> entry : artifacts.entrySet()) { - if (entry.getKey().equals(defaultArtifact.getArtifactLabel())) { - isExist = true; - - } - } - AssertJUnit.assertTrue(isExist); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/CrudArt.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/CrudArt.java deleted file mode 100644 index 28c346efc9..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/CrudArt.java +++ /dev/null @@ -1,1789 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -import org.apache.commons.lang3.tuple.Pair; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.FileUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ArtifactValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -public class CrudArt extends ComponentBaseTest { - - private static Logger logger = LoggerFactory.getLogger(CrudArt.class.getName()); - private static final User sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - private static final String HEAT_NET_LABEL = "heatnet"; - private static final String HEAT_LABEL = "heat"; - - protected String testResourcesPath; - protected String testResourcesInstancesPath; - - protected static final String dcaeInventoryToscaFile = "toscaSampleArtifact.yml"; - protected static final String dcaeInventoryJsonFile = "jsonSampleArtifact.json"; - protected static final String dcaeInventoryPolicyFile = "emfSampleArtifact.emf"; - protected static final String dcaeInventoryDocFile = "docSampleArtifact.doc"; - protected static final String dcaeInventoryBlueprintFile = "bluePrintSampleArtifact.xml"; - protected static final String dcaeInventoryEventFile = "eventSampleArtifact.xml"; - - protected static final String heatSuccessFile = "asc_heat 0 2.yaml"; - protected static final String heatNetSuccessFile = "asc_heat_net 0 2.yaml"; - protected static final String yangFile = "addYangXmlArtifactToResource.xml"; - protected static final String jsonFile = "jsonArtifact.json"; - protected static final String invalidJsonFile = "invalidJson.json"; - protected static final String invalidYangFile = "invalidYangXml.xml"; - protected static final String otherFile = "other.txt"; - protected static final String muranoFile = "asc_heat 0 2.zip"; - protected static final String heatSuccessMiniFile = "heat_mini.yaml"; - protected static final String heatInvalidFormat = "heatInvalidFormat.yaml"; - protected static final String yamlInvalidFormat = "invalidYamlFormat.yaml"; - protected static final String heatEnvfile = "heatEnvfile.env"; - - protected ServiceReqDetails serviceDetails; - protected ResourceReqDetails vfResourceDetails; - protected ResourceReqDetails cpResourceDetails; - protected ResourceReqDetails vfcResourceDetails; - protected ResourceReqDetails vlResourceDetails; - - @Rule - public static TestName name = new TestName(); - - public CrudArt() { - super(name, CrudArt.class.getName()); - } - - @DataProvider - private static final Object[][] getDepArtByType() throws IOException, Exception { - return new Object[][] { { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()) }, { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_VOL.getType()) }, - { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_NET.getType()) }, { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_TOSCA.getType()) }, - { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_JSON.getType()) }, { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_POLICY.getType()) }, - { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_DOC.getType()) }, { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_BLUEPRINT.getType()) }, - { ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.DCAE_INVENTORY_EVENT.getType()) } }; - } - - @DataProvider - private static final Object[][] getServiceDepArtByType() throws IOException, Exception { - return new Object[][] { { ArtifactTypeEnum.OTHER.getType() }, { ArtifactTypeEnum.YANG_XML.getType() }, }; - } - - @BeforeMethod - public void init() throws Exception { - // Set files working directory - String sourceDir = config.getResourceConfigDir(); - String workDir = "HeatDeploymentArtifacts"; - testResourcesPath = sourceDir + File.separator + workDir; - String workDirResourceInstanceArtifacts = "ResourceInstanceArtifacts"; - testResourcesInstancesPath = sourceDir + File.separator + workDirResourceInstanceArtifacts; - - // Build the components - Service serviceObj = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - serviceDetails = new ServiceReqDetails(serviceObj); - - Resource vfcResourceObj = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - vfcResourceDetails = new ResourceReqDetails(vfcResourceObj); - - Resource vfResourceObj = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - vfResourceDetails = new ResourceReqDetails(vfResourceObj); - - Resource cpResourceObj = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.CP, UserRoleEnum.DESIGNER, true).left().value(); - cpResourceDetails = new ResourceReqDetails(cpResourceObj); - - Resource vlResourceObj = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VL, UserRoleEnum.DESIGNER, true).left().value(); - vlResourceDetails = new ResourceReqDetails(vlResourceObj); - } - - // ---------------------------------Resource - // success-------------------------------- - @Test - public void addHeatArtifactToResourceAndCertify() throws Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // certified resource - RestResponse changeResourceState = LifecycleRestUtils.certifyResource(vfResourceDetails); - int status = changeResourceState.getErrorCode(); - assertEquals("certify resource request returned status:" + status, BaseRestUtils.STATUS_CODE_SUCCESS, status); - - Resource resourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(changeResourceState.getResponse()); - Map<String, ArtifactDefinition> artifactsMap = resourceJavaObject.getDeploymentArtifacts(); - boolean flag = false; - if (artifactsMap != null) { - for (Entry<String, ArtifactDefinition> art : artifactsMap.entrySet()) { - if (art.getValue().getArtifactName().equals(heatArtifactDetails.getArtifactName())) { - assertTrue("expected artifact type is " + ArtifactGroupTypeEnum.DEPLOYMENT.getType() + " but was " + art.getValue().getArtifactGroupType(), art.getValue().getArtifactGroupType().equals(ArtifactGroupTypeEnum.DEPLOYMENT)); - flag = true; - break; - } - } - assertTrue("expected artifact not found", flag == true); - } - - } - - // ---------------------------------Resource - // success-------------------------------- - @Test - public void addDcaeInventoryToscaArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryToscaFile; - String artifactName = dcaeInventoryToscaFile; - String artifactLabel = "dcae inv tosca label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_TOSCA; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addDcaeInventoryJsonArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryJsonFile; - String artifactName = dcaeInventoryJsonFile; - String artifactLabel = "dcae inv json label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_JSON; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addDcaeInventoryPolicyArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryPolicyFile; - String artifactName = dcaeInventoryPolicyFile; - String artifactLabel = "dcae inv policy label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_POLICY; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addDcaeInventoryDocArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryDocFile; - String artifactName = dcaeInventoryDocFile; - String artifactLabel = "dcae inv doc label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_DOC; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addDcaeInventoryBluePrintArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryBlueprintFile; - String artifactName = dcaeInventoryBlueprintFile; - String artifactLabel = "dcae inv blueprint label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_BLUEPRINT; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addDcaeInventoryEventArtifactToResourceInstanceAndCertify() throws Exception { - String artifactFileName = dcaeInventoryEventFile; - String artifactName = dcaeInventoryEventFile; - String artifactLabel = "dcae inv event label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_EVENT; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - private RestResponse addArtifactToResourceInstanceAndCertify(String artifactFileName, String artifactName, String artifactLabel, ArtifactTypeEnum artifactType) throws Exception { - - // Get the resource - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - - // Certify VF - Pair<Component, RestResponse> changeComponentState = AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + changeComponentState.getRight().getErrorCode(), changeComponentState.getRight().getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Add VF instance to service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resource, service, UserRoleEnum.DESIGNER, true); - - // Get the VF instance - getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance VfInstance = service.getComponentInstances().get(0); - - // Create the artifact - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstance(artifactFileName, artifactName, artifactLabel, artifactType, VfInstance, serviceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addArtifactToResourceInstanceResponse.getResponseMessage()); - return addArtifactToResourceInstanceResponse; - } - - @Test - public void updateArtifactDescriptionToResourceInstance() throws Exception { - String artifactFileName = dcaeInventoryToscaFile; - String artifactName = dcaeInventoryToscaFile; - String artifactLabel = "dcae inv tosca label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_TOSCA; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addArtifactToResourceInstanceResponse.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Get the artifact from VF instance and change his description. - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance vfInstance = service.getComponentInstances().get(0); - Map<String, ArtifactDefinition> deploymentArtifacts = vfInstance.getDeploymentArtifacts(); - ArtifactDefinition artifactDefinition = deploymentArtifacts.get("dcaeinvtoscalabel"); - artifactDefinition.setDescription("My new description"); - - // Update the artifact - RestResponse updateDeploymentArtifactToRI = ArtifactRestUtils.updateArtifactToResourceInstance(artifactDefinition, sdncDesignerDetails1, vfInstance.getUniqueId(), service.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", updateDeploymentArtifactToRI.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + updateDeploymentArtifactToRI.getErrorCode(), updateDeploymentArtifactToRI.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void deleteArtifactToResourceInstance() throws Exception { - String artifactFileName = dcaeInventoryToscaFile; - String artifactName = dcaeInventoryToscaFile; - String artifactLabel = "dcae inv tosca label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.DCAE_INVENTORY_TOSCA; - RestResponse addArtifactToResourceInstanceResponse = addArtifactToResourceInstanceAndCertify(artifactFileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addArtifactToResourceInstanceResponse.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addArtifactToResourceInstanceResponse.getErrorCode(), addArtifactToResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Get the artifact from VF instance and change his description. - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance vfInstance = service.getComponentInstances().get(0); - Map<String, ArtifactDefinition> deploymentArtifacts = vfInstance.getDeploymentArtifacts(); - ArtifactDefinition artifactDefinition = deploymentArtifacts.get("dcaeinvtoscalabel"); - - // Delete the artifact - RestResponse deleteInformationalArtifactFromResource = ArtifactRestUtils.deleteArtifactFromResourceInstance(artifactDefinition, sdncDesignerDetails1, vfInstance.getUniqueId(), service.getUniqueId()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + deleteInformationalArtifactFromResource.getErrorCode(), deleteInformationalArtifactFromResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addHeatArtifactToResource() throws Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - } - - @Test - public void addHeatAndHeatNetArtifactsToResource() throws Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - - // Add HEAT - logger.debug("listFileName: {}", listFileName); - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Add HEAT_NET - String payloadNet = FileUtils.loadPayloadFile(listFileName, heatNetSuccessFile, true); - ArtifactReqDetails heatNetArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_NET.getType()); - heatNetArtifactDetails.setPayload(payloadNet); - heatNetArtifactDetails.setArtifactLabel(HEAT_NET_LABEL); - - RestResponse addInformationalArtifactToResource1 = ArtifactRestUtils.uploadArtifactToPlaceholderOnResource(heatNetArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId(), HEAT_NET_LABEL); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource1.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource1.getErrorCode(), addInformationalArtifactToResource1.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(vfResourceDetails, sdncDesignerDetails1); - Resource resourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - - ArtifactDefinition artifactDefinition = deploymentArtifacts.get(HEAT_LABEL); - assertNotNull(artifactDefinition); - String heatEsId = artifactDefinition.getEsId(); - assertNotNull(heatEsId); - - ArtifactDefinition artifactDefinitionNet = deploymentArtifacts.get(HEAT_NET_LABEL); - assertNotNull(artifactDefinitionNet); - String heatNetEsId = artifactDefinitionNet.getEsId(); - assertNotNull(heatNetEsId); - assertFalse(heatEsId.equalsIgnoreCase(heatNetEsId)); - } - - @Test - public void addDeleteAddHeatArtifactToResource() throws Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - RestResponse deleteInformationalArtifactFromResource = ArtifactRestUtils.deleteInformationalArtifactFromResource(vfResourceDetails.getUniqueId(), heatArtifactDetails, sdncDesignerDetails1); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + deleteInformationalArtifactFromResource.getErrorCode(), deleteInformationalArtifactFromResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - } - - @Test - public void addYangXmlArtifactToResource() throws Exception { - - String fileName = yangFile; - String artifactName = "asc_heat 0 2.XML"; - String artifactLabel = "Label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.YANG_XML; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addOtherTypeDeploymentArtifactToResource() throws Exception { - - String fileName = otherFile; - String artifactName = "other.txt"; - String artifactLabel = "Label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.OTHER; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addYangXmlArtifactSameName() throws Exception { - - String fileName = yangFile; - String artifactName = "asc_heat_0_2.XML"; - String artifactLabel = "Label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.YANG_XML; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // Changing label but not name - artifactLabel = "Label1"; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is not 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == 400); - BaseValidationUtils.checkErrorResponse(addInformationalArtifactToResource, ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS, new String[] { "Resource", vfResourceDetails.getName(), artifactName }); - - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addInvalidYangXmlFormat() throws Exception { - - String fileName = invalidYangFile; - String artifactName = "asc_heat_0_2.XML"; - String artifactLabel = "Label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.YANG_XML; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is not 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == 400); - BaseValidationUtils.checkErrorResponse(addInformationalArtifactToResource, ActionStatus.INVALID_XML, new String[] { "YANG_XML" }); - - } - - @Test - public void addSeveralYangXmlArtifacts() throws Exception { - - // Adding 4 artifacts - String fileName = yangFile; - String artifactName = "asc_heat_0_2.XML"; - String artifactLabel = "Label"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.YANG_XML; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // Changing label and name - artifactLabel = "Label1"; - artifactName = "asc_heat_0_3.XML"; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Changing label and name - artifactLabel = "Label2"; - artifactName = "asc_heat_0_4.XML"; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - - // Changing label and name - artifactLabel = "Label3"; - artifactName = "asc_heat_0_5.XML"; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 4); - } - - @Test(dataProvider = "getDepArtByType") - public void updateHeatArtifactToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - heatTypeArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // update - heatTypeArtifactDetails.setArtifactName("UPDATE.yaml"); - heatTypeArtifactDetails.setPayloadData(null); - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", updateInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + updateInformationalArtifactToResource.getErrorCode(), updateInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - } - - @Test(dataProvider = "getDepArtByType") - public void updateHeatArtifactTimeOutToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - Resource resource = getResourceByResDetails(vfResourceDetails, sdncDesignerDetails1); - int actualTimeout = resource.getDeploymentArtifacts().get(heatTypeArtifactDetails.getArtifactLabel().toLowerCase()).getTimeout(); - assertTrue("verify " + heatTypeArtifactDetails.getArtifactLabel().toLowerCase() + " artifact timout, expected " + heatTypeArtifactDetails.getTimeout() + ", but was " + actualTimeout, heatTypeArtifactDetails.getTimeout() == actualTimeout); - - // update - heatTypeArtifactDetails.setTimeout(35); - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", updateInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + updateInformationalArtifactToResource.getErrorCode(), updateInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - resource = getResourceByResDetails(vfResourceDetails, sdncDesignerDetails1); - actualTimeout = resource.getDeploymentArtifacts().get(heatTypeArtifactDetails.getArtifactLabel().toLowerCase()).getTimeout(); - assertTrue("verify " + heatTypeArtifactDetails.getArtifactLabel().toLowerCase() + " artifact timout, expected " + heatTypeArtifactDetails.getTimeout() + ", but was " + actualTimeout, heatTypeArtifactDetails.getTimeout() == actualTimeout); - } - - @Test(dataProvider = "getDepArtByType") - public void updateHeatArtifactDescriptionToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - Resource resource = getResourceByResDetails(vfResourceDetails, sdncDesignerDetails1); - String actualDescription = resource.getDeploymentArtifacts().get(heatTypeArtifactDetails.getArtifactLabel().toLowerCase()).getDescription(); - assertTrue("verify " + heatTypeArtifactDetails.getArtifactLabel().toLowerCase() + " artifact Description, expected " + heatTypeArtifactDetails.getDescription() + ", but was " + actualDescription, heatTypeArtifactDetails.getDescription().equals(actualDescription)); - - // update - heatTypeArtifactDetails.setDescription("the best description was ever"); - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", updateInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + updateInformationalArtifactToResource.getErrorCode(), updateInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - resource = getResourceByResDetails(vfResourceDetails, sdncDesignerDetails1); - actualDescription = resource.getDeploymentArtifacts().get(heatTypeArtifactDetails.getArtifactLabel().toLowerCase()).getDescription(); - assertTrue("verify " + heatTypeArtifactDetails.getArtifactLabel().toLowerCase() + " artifact Description, expected " + heatTypeArtifactDetails.getDescription() + ", but was " + actualDescription, heatTypeArtifactDetails.getDescription().equals(actualDescription)); - } - - private Resource getResourceByResDetails(ResourceReqDetails resDetails, User userDetails) throws IOException { - RestResponse response = ResourceRestUtils.getResource(resDetails, userDetails); - assertTrue("response code on get resource not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + response.getErrorCode(), response.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - return resource; - } - - // ---------------------------------Service - // success-------------------------------- - @Test() - public void addAllTypesDepArtifactToService() throws Exception { - ArtifactReqDetails otherArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.OTHER.getType()); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(otherArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - ArtifactReqDetails yangXmlArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.YANG_XML.getType()); - - addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(yangXmlArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - } - - @Test(enabled = false) - public void addMuranoPkgArtifactToService() throws Exception, Exception { - - String fileName = muranoFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.MURANO_PKG.getType()); - heatArtifactDetails.setPayload(payload); - heatArtifactDetails.setArtifactName("asc_heat 0 2.zip"); - heatArtifactDetails.setArtifactLabel("Label"); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - } - - @Test(dataProvider = "getServiceDepArtByType") - public void addHeatArtifactToServiceAndCertify(String artType) throws Exception, Exception { - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(artType); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // certified service - RestResponse changeServiceState = LifecycleRestUtils.certifyService(serviceDetails); - int status = changeServiceState.getErrorCode(); - assertEquals("certify service request returned status:" + status, BaseRestUtils.STATUS_CODE_SUCCESS, status); - - Service resourceJavaObject = ResponseParser.convertServiceResponseToJavaObject(changeServiceState.getResponse()); - Map<String, ArtifactDefinition> artifactsMap = resourceJavaObject.getDeploymentArtifacts(); - boolean flag = false; - if (artifactsMap != null) { - for (Entry<String, ArtifactDefinition> art : artifactsMap.entrySet()) { - if (art.getValue().getArtifactName().equals(heatArtifactDetails.getArtifactName())) { - assertTrue("expected artifact type is " + ArtifactGroupTypeEnum.DEPLOYMENT.getType() + " but was " + art.getValue().getArtifactGroupType(), art.getValue().getArtifactGroupType().equals(ArtifactGroupTypeEnum.DEPLOYMENT)); - flag = true; - break; - } - } - assertTrue("expected artifact not found", flag == true); - } - - } - - @Test(enabled = false, dataProvider = "getServiceDepArtByType") - public void updateHeatArtifactToService(String artType) throws Exception, Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(artType); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // update - heatArtifactDetails.setPayloadData(payload); - RestResponse updateInformationalArtifactToService = ArtifactRestUtils.updateInformationalArtifactOfServiceByMethod(heatArtifactDetails, serviceDetails.getUniqueId(), sdncDesignerDetails1, "POST"); - logger.debug("updateInformationalArtifactToService response: {}", updateInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + updateInformationalArtifactToService.getErrorCode(), updateInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - } - - // --------------------------------------Resource Negative - // Tests------------------------------------- - - // TODO Andrey the method of DEPLOYMENT artifact is update and not add - @Test(dataProvider = "getServiceDepArtByType") - public void addTheSameAdditionalHeatArtifactToResource(String artType) throws Exception, Exception { - - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(artType); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // add the same artifact one more time - artifactDetails.setArtifactLabel("the second artifact"); - addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", vfResourceDetails.getName(), artifactDetails.getArtifactName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - @Test - public void addHeatArtifactTwiceSameNameToResource() throws Exception, Exception { - - String filename1 = heatSuccessFile; - // String filename2 = heatSuccessMiniFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, filename1, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Add HEAT_NET - String payloadNet = FileUtils.loadPayloadFile(listFileName, heatNetSuccessFile, true); - ArtifactReqDetails heatNetArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_NET.getType()); - heatNetArtifactDetails.setPayload(payloadNet); - heatNetArtifactDetails.setArtifactLabel(HEAT_NET_LABEL); - heatNetArtifactDetails.setArtifactName(heatArtifactDetails.getArtifactName()); - - RestResponse addInformationalArtifactToResource1 = ArtifactRestUtils.uploadArtifactToPlaceholderOnResource(heatNetArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId(), HEAT_NET_LABEL); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource1.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource1.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", vfResourceDetails.getName(), heatNetArtifactDetails.getArtifactName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS.name(), variables, addInformationalArtifactToResource1.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatArtifactTwiceToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String filename1 = heatSuccessFile; - String filename2 = heatSuccessMiniFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, filename1, true); - heatTypeArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // add the second artifact - payload = FileUtils.loadPayloadFile(listFileName, heatSuccessMiniFile, true); - heatTypeArtifactDetails.setPayload(payload); - heatTypeArtifactDetails.setArtifactName(filename2); - heatTypeArtifactDetails.setArtifactLabel("the second artifact"); - - addInformationalArtifactToResource = ArtifactRestUtils.explicitAddInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", vfResourceDetails.getName(), heatTypeArtifactDetails.getArtifactType(), heatTypeArtifactDetails.getArtifactType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatArtifactInvalidHeatFormatToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = heatInvalidFormat; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - heatTypeArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_DEPLOYMENT_ARTIFACT_HEAT.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList(heatTypeArtifactDetails.getArtifactType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_DEPLOYMENT_ARTIFACT_HEAT.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatArtifactInvalidYamlFormatToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = yamlInvalidFormat; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - heatTypeArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_YAML.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList(heatTypeArtifactDetails.getArtifactType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_YAML.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatArtifactInvalidFileExtensionToResource(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = yangFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - heatTypeArtifactDetails.setPayload(payload); - heatTypeArtifactDetails.setArtifactName(fileName); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList(heatTypeArtifactDetails.getArtifactType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatArtifactToResourceCertifyAndAddAdditionalHeatArtifact(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - heatTypeArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // certified resource - RestResponse changeResourceState = LifecycleRestUtils.certifyResource(vfResourceDetails); - int status = changeResourceState.getErrorCode(); - assertEquals("certify resource request returned status:" + status, BaseRestUtils.STATUS_CODE_SUCCESS, status); - - // add second HEAT artifact to the certified resource - changeResourceState = LifecycleRestUtils.changeResourceState(vfResourceDetails, sdncDesignerDetails1, LifeCycleStatesEnum.CHECKOUT); - assertTrue("expected code response on change resource state to CHECKOUT BaseRestUtils.STATUS_CODE_SUCCESS, but was " + changeResourceState.getErrorCode(), changeResourceState.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // ArtifactReqDetails heatArtifactDetails1 = - // ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatTypeArtifactDetails.setPayload(payload); - heatTypeArtifactDetails.setArtifactName(fileName); - heatTypeArtifactDetails.setArtifactLabel("the second artifact"); - - addInformationalArtifactToResource = ArtifactRestUtils.explicitAddInformationalArtifactToResource(heatTypeArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", vfResourceDetails.getName(), heatTypeArtifactDetails.getArtifactType(), heatTypeArtifactDetails.getArtifactType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name(), variables, addInformationalArtifactToResource.getResponse()); - - } - - // -----------------Service Negative - // Tests-------------------------------------------------------- - - // Absolute - @Test(enabled = false) - public void addHeatArtifactTwiceToService() throws Exception, Exception { - - String fileName1 = heatSuccessFile; - String fileName2 = heatSuccessMiniFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName1, true); - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.OTHER.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToService.getErrorCode(), addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // add the second artifact - payload = FileUtils.loadPayloadFile(listFileName, fileName2, true); - - ArtifactReqDetails heatArtifactDetails1 = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.OTHER.getType()); - heatArtifactDetails1.setPayload(payload); - heatArtifactDetails1.setArtifactName(fileName2); - heatArtifactDetails1.setArtifactLabel("the second artifact"); - - addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails1, sdncDesignerDetails1, serviceDetails.getUniqueId()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToService.getErrorCode()); - - List<String> variables = Arrays.asList("Service", serviceDetails.getName(), ArtifactTypeEnum.OTHER.getType(), ArtifactTypeEnum.OTHER.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS.name(), variables, addInformationalArtifactToService.getResponse()); - - } - - // TODO Andrey Obsolete - @Test(enabled = false) - public void addHeatArtifactInvalidHeatFormatToService() throws Exception, Exception { - - String fileName = heatInvalidFormat; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {}", addInformationalArtifactToService.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_DEPLOYMENT_ARTIFACT_HEAT.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToService.getErrorCode()); - - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_DEPLOYMENT_ARTIFACT_HEAT.name(), variables, addInformationalArtifactToService.getResponse()); - - } - - @Test(enabled = false) - public void addHeatArtifactInvalidYamlFormatToService() throws Exception, Exception { - - String fileName = yamlInvalidFormat; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {} ", addInformationalArtifactToService.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_YAML.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToService.getErrorCode()); - - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_YAML.name(), variables, addInformationalArtifactToService.getResponse()); - - } - - @Test - public void addHeatArtifactInvalidFileExtensionToService() throws Exception, Exception { - - String fileName = muranoFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.YANG_XML.getType()); - heatArtifactDetails.setPayload(payload); - heatArtifactDetails.setArtifactName(fileName); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - logger.debug("addInformationalArtifactToService response: {} ", addInformationalArtifactToService.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToService.getErrorCode()); - - List<String> variables = Arrays.asList(ArtifactTypeEnum.YANG_XML.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name(), variables, addInformationalArtifactToService.getResponse()); - - } - - @Test(dataProvider = "getDepArtByType") - public void addHeatEnvArtifactToResourceNotSupportedType(ArtifactReqDetails heatTypeArtifactDetails) throws Exception, Exception { - - String fileName = heatEnvfile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_ENV.getType()); - heatArtifactDetails.setPayload(payload); - heatArtifactDetails.setArtifactName("asc_heat 0 2.env"); - heatArtifactDetails.setArtifactLabel(heatTypeArtifactDetails.getArtifactLabel()); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToResource.getErrorCode()); - - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT_ENV.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name(), variables, addInformationalArtifactToResource.getResponse()); - } - - // TODO Andrey - @Test - public void addHeatArtifactToServiceNotSupportDeploymentArt() throws Exception, Exception { - - String fileName = heatSuccessFile; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, fileName, true); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(payload); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(heatArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), addInformationalArtifactToService.getErrorCode()); - - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name(), variables, addInformationalArtifactToService.getResponse()); - - } - - protected RestResponse addArtifactToResourceInstance(String artifactFileName, String artifactName, String artifactLabel, ArtifactTypeEnum artifactType, ComponentInstance componentInstance, ServiceReqDetails serviceDetails) throws Exception { - ArtifactReqDetails dcaeArtifactDetails = buildArtifactReqDetailsObject(testResourcesInstancesPath, artifactFileName, artifactName, artifactLabel, artifactType); - RestResponse addArtifactToResourceInstance = ArtifactRestUtils.addArtifactToResourceInstance(dcaeArtifactDetails, sdncDesignerDetails1, componentInstance.getUniqueId(), serviceDetails.getUniqueId()); - return addArtifactToResourceInstance; - } - - protected RestResponse addDeploymentArtifactToResource(String artifactFileName, String artifactName, String artifactLabel, ArtifactTypeEnum artifactType) throws Exception { - ArtifactReqDetails heatArtifactDetails = buildArtifactReqDetailsObject(testResourcesPath, artifactFileName, artifactName, artifactLabel, artifactType); - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, vfResourceDetails.getUniqueId()); - return addInformationalArtifactToResource; - } - - protected RestResponse addDeploymentArtifactToResource(String artifactFileName, String artifactName, String artifactLabel, ArtifactTypeEnum artifactType, ResourceReqDetails resource) throws Exception { - ArtifactReqDetails heatArtifactDetails = buildArtifactReqDetailsObject(testResourcesPath, artifactFileName, artifactName, artifactLabel, artifactType); - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, resource.getUniqueId()); - return addInformationalArtifactToResource; - } - - // US672293 - Support new artifact type : BEVF_LICENSE , VENDOR_LICENSE - @Test - public void addNewArtifactsToVFResource() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - artifactName = "artifact2.xml"; - artifactLabel = "Label2"; - artifactType = ArtifactTypeEnum.VF_LICENSE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact6.xml"; - artifactLabel = "Label6"; - artifactType = ArtifactTypeEnum.APPC_CONFIG; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - fileName = jsonFile; - artifactName = "artifact7.json"; - artifactLabel = "Label7"; - artifactType = ArtifactTypeEnum.APPC_CONFIG; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 2); - - //MIB artifacts: SNMP_POLL, SNMP_TRAP - fileName = jsonFile; - artifactName = "artifact8.json"; - artifactLabel = "Label8"; - artifactType = ArtifactTypeEnum.SNMP_POLL; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - fileName = jsonFile; - artifactName = "artifact9.json"; - artifactLabel = "Label9"; - artifactType = ArtifactTypeEnum.SNMP_TRAP; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - //MIB artifacts: SNMP_POLL, SNMP_TRAP - fileName = jsonFile; - artifactName = "artifact8.json"; - artifactLabel = "Label8"; - artifactType = ArtifactTypeEnum.SNMP_POLL; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - fileName = jsonFile; - artifactName = "artifact9.json"; - artifactLabel = "Label9"; - artifactType = ArtifactTypeEnum.SNMP_TRAP; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToVFCResource() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact2.xml"; - artifactLabel = "Label2"; - artifactType = ArtifactTypeEnum.VF_LICENSE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifac5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToVfc() throws Exception { - String fileName = yangFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VF_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToCp() throws Exception { - String fileName = yangFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VF_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(cpResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(cpResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToVl() throws Exception { - String fileName = yangFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VF_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vlResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vlResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addVfInstanceWithNewArtifactsToService() throws Exception { - String fileName = yangFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VF_LICENSE; - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - // Certify VF - Pair<Component, RestResponse> changeComponentState = AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + changeComponentState.getRight().getErrorCode(), changeComponentState.getRight().getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // Add VF instance to service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resource, service, UserRoleEnum.DESIGNER, true); - // get service and verify VF instance contain the Artifacts :VF_LICENSE - // and VENDOR_LICENSE - getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance VfInstance = service.getComponentInstances().get(0); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.VENDOR_LICENSE, 1); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.VF_LICENSE, 1); - } - - @Test - public void addNotSupportedArtifactsTypeToService01() throws Exception, Exception { - // Artifact type : VF_LICENSE - ArtifactReqDetails deploymentArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.VF_LICENSE.getType()); - RestResponse addDeploymentArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(deploymentArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code eturned :" + addDeploymentArtifactToService.getErrorCode(), addDeploymentArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add("VF_LICENSE"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name(), variables, addDeploymentArtifactToService.getResponse()); - } - - @Test - public void addNotSupportedArtifactsTypeToService02() throws Exception, Exception { - // Artifact type : VENDOR_LICENSE - ArtifactReqDetails deploymentArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.VENDOR_LICENSE.getType()); - RestResponse addDeploymentArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(deploymentArtifactDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code eturned :" + addDeploymentArtifactToService.getErrorCode(), addDeploymentArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add("VENDOR_LICENSE"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name(), variables, addDeploymentArtifactToService.getResponse()); - } - - @Test - public void addInvalidFileForArtifactTypeVendorLicenseToResource() throws Exception { - String fileName = yangFile; - String NonXmlFile = heatSuccessFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VF_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - // Artifact type VENDOR_LICENSE must be XML file - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - addDeploymentArtifactToResource = addDeploymentArtifactToResource(NonXmlFile, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code 400 returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add("VENDOR_LICENSE"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_XML.name(), variables, addDeploymentArtifactToResource.getResponse()); - // get resource and verify that file not exist within - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - } - - @Test - public void addInvalidFileForArtifactTypeVfLicenseToResource() throws Exception { - String fileName = yangFile; - String NonXmlFile = heatSuccessFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - // Artifact type VF_LICENSE must be XML file - artifactName = "artifact3.xml"; - artifactLabel = "Label3"; - artifactType = ArtifactTypeEnum.VF_LICENSE; - addDeploymentArtifactToResource = addDeploymentArtifactToResource(NonXmlFile, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code 400 returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add("VF_LICENSE"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_XML.name(), variables, addDeploymentArtifactToResource.getResponse()); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - } - - @Test - public void addVendorLicenseArtifactAlreadyExistsInResource() throws Exception { - String fileName = yangFile; - String artifactName = "artifact2.xml"; - String artifactLabel = "Label2"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VENDOR_LICENSE; - RestResponse addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - // Add same file again to resource - addDeploymentArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addDeploymentArtifactToResource.getResponseMessage()); - assertTrue("response code is not 400, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(artifactLabel.toLowerCase()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_EXIST.name(), variables, addDeploymentArtifactToResource.getResponse()); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - // US672294 - - @Test() - public void addVnfCatalogArtifactsToService() throws Exception, Exception { - - ArtifactReqDetails artDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.VNF_CATALOG.getType()); - RestResponse resp = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + resp.getErrorCode(), resp.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // get service and verify the Artifacts :VNF_CATALOG - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(service, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.VNF_CATALOG, 1); - } - - @Test() - public void addModelInventoryProfileArtifactsToService() throws Exception, Exception { - - ArtifactReqDetails artDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.MODEL_INVENTORY_PROFILE.getType()); - RestResponse resp = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + resp.getErrorCode(), resp.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // get service and verify the Artifacts :VNF_CATALOG - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(service, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_INVENTORY_PROFILE, 1); - } - - @Test() - public void addModelQuerySpecArtifactsToService() throws Exception, Exception { - - ArtifactReqDetails artDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.MODEL_QUERY_SPEC.getType()); - RestResponse resp = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + resp.getErrorCode(), resp.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // get service and verify the Artifacts :VNF_CATALOG - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(service, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_QUERY_SPEC, 1); - } - - @Test - public void addVfInstanceWithNewArtifactsToService02() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - fileName = yangFile; - artifactName = "artifact2.xml"; - artifactLabel = "Label2"; - artifactType = ArtifactTypeEnum.APPC_CONFIG; - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifac5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - // Certify VF - Pair<Component, RestResponse> changeComponentState = AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + changeComponentState.getRight().getErrorCode(), changeComponentState.getRight().getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Add VF instance to service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resource, service, UserRoleEnum.DESIGNER, true); - - // get service and verify VF instance contain the Artifacts :VF_LICENSE - // and VENDOR_LICENSE - getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ComponentInstance VfInstance = service.getComponentInstances().get(0); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.VNF_CATALOG, 1); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_INVENTORY_PROFILE, 1); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_QUERY_SPEC, 1); - ArtifactValidationUtils.validateArtifactsNumberInComponentInstance(VfInstance, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.APPC_CONFIG, 1); - } - - @Test - public void addAppcConfigArtifactToVfc() throws Exception { - String fileName = jsonFile; - String artifactName = "artifact7.json"; - String artifactLabel = "Label7"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.APPC_CONFIG; - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(artifactName); - variables.add("[VF]"); - variables.add("VFC (Virtual Function Component)"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISMATCH_BETWEEN_ARTIFACT_TYPE_AND_COMPONENT_TYPE.name(), variables, addInformationalArtifactToResource.getResponse()); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - } - - @Test - public void addAppcConfigArtifactToCp() throws Exception { - String fileName = jsonFile; - String artifactName = "artifact7.json"; - String artifactLabel = "Label7"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.APPC_CONFIG; - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(artifactName); - variables.add("[VF]"); - variables.add("CP (Connection Point)"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISMATCH_BETWEEN_ARTIFACT_TYPE_AND_COMPONENT_TYPE.name(), variables, addInformationalArtifactToResource.getResponse()); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - } - - @Test - public void addAppcConfigArtifactToVl() throws Exception { - String fileName = jsonFile; - String artifactName = "artifact7.json"; - String artifactLabel = "Label7"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.APPC_CONFIG; - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(artifactName); - variables.add("[VF]"); - variables.add("VL (Virtual Link)"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISMATCH_BETWEEN_ARTIFACT_TYPE_AND_COMPONENT_TYPE.name(), variables, addInformationalArtifactToResource.getResponse()); - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - } - - @Test() - public void addAppcConfigArtifactsToService() throws Exception, Exception { - ArtifactReqDetails artDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.APPC_CONFIG.getType()); - RestResponse addDeploymentArtifactToResource = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code 400, returned :" + addDeploymentArtifactToResource.getErrorCode(), addDeploymentArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(ArtifactTypeEnum.APPC_CONFIG.toString()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name(), variables, addDeploymentArtifactToResource.getResponse()); - } - - @Test - public void addAppcConfigInvalidJsonToVFResourceFailed() throws Exception { - - String fileName = invalidJsonFile; - String artifactName = "invalidJson.json"; - String artifactLabel = "Label7"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.APPC_CONFIG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is 400, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - - ArrayList<String> variables = new ArrayList<>(); - variables.add(ArtifactTypeEnum.APPC_CONFIG.toString()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_JSON.name(), variables, addInformationalArtifactToResource.getResponse()); - - RestResponse getResource = ResourceRestUtils.getResource(vfResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 0); - - } - - @Test - public void addNewArtifactsToCp02() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(cpResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(cpResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifac5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, cpResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(cpResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToVl02() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vlResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vlResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifac5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vlResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vlResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactsToVfc02() throws Exception { - - String fileName = yangFile; - String artifactName = "artifact1.xml"; - String artifactLabel = "Label1"; - ArtifactTypeEnum artifactType = ArtifactTypeEnum.VNF_CATALOG; - - RestResponse addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifact4.xml"; - artifactLabel = "Label4"; - artifactType = ArtifactTypeEnum.MODEL_INVENTORY_PROFILE; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - - artifactName = "artifac5.xml"; - artifactLabel = "Label5"; - artifactType = ArtifactTypeEnum.MODEL_QUERY_SPEC; - - addInformationalArtifactToResource = addDeploymentArtifactToResource(fileName, artifactName, artifactLabel, artifactType, vfcResourceDetails); - logger.debug("addInformationalArtifactToResource response: {}", addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addInformationalArtifactToResource.getErrorCode(), addInformationalArtifactToResource.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - getResource = ResourceRestUtils.getResource(vfcResourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(resource, ArtifactGroupTypeEnum.DEPLOYMENT, artifactType, 1); - } - - @Test - public void addNewArtifactAlreadyExistsInService() throws Exception { - ArtifactReqDetails artDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.MODEL_QUERY_SPEC.getType()); - RestResponse addDeploymentArtifactoService = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + addDeploymentArtifactoService.getErrorCode(), addDeploymentArtifactoService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - // get service and verify the Artifacts :VNF_CATALOG - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(service, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_QUERY_SPEC, 1); - // Add same file again to resource - addDeploymentArtifactoService = ArtifactRestUtils.addInformationalArtifactToService(artDetails, sdncDesignerDetails1, serviceDetails.getUniqueId()); - assertTrue("response code is 400, returned :" + addDeploymentArtifactoService.getErrorCode(), addDeploymentArtifactoService.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - ArrayList<String> variables = new ArrayList<>(); - variables.add(artDetails.getArtifactLabel().toLowerCase()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.ARTIFACT_EXIST.name(), variables, addDeploymentArtifactoService.getResponse()); - // get service and verify the Artifacts :VNF_CATALOG is still exist and - // has one occurrences - getServiceResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails1); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - ArtifactValidationUtils.validateArtifactsNumberInComponent(service, ArtifactGroupTypeEnum.DEPLOYMENT, ArtifactTypeEnum.MODEL_QUERY_SPEC, 1); - } - - private ArtifactReqDetails buildArtifactReqDetailsObject(String filesPath, String artifactFileName, String artifactName, String artifactLabel, ArtifactTypeEnum artifactType) throws IOException, Exception { - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(filesPath); - logger.debug("listFileName: {}", listFileName); - - String payload = FileUtils.loadPayloadFile(listFileName, artifactFileName, true); - - ArtifactReqDetails dcaeArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(artifactType.getType()); - dcaeArtifactDetails.setPayload(payload); - dcaeArtifactDetails.setArtifactName(artifactName); - dcaeArtifactDetails.setArtifactLabel(artifactLabel); - return dcaeArtifactDetails; - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/DownloadComponentArt.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/DownloadComponentArt.java deleted file mode 100644 index 65c0bba6a0..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/DownloadComponentArt.java +++ /dev/null @@ -1,661 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import java.io.IOException; -import java.io.InputStream; -import java.io.UnsupportedEncodingException; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.HttpResponseException; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpDelete; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.BasicResponseHandler; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.codehaus.jackson.map.ObjectMapper; -import org.json.simple.JSONObject; -import org.json.simple.parser.JSONParser; -import org.json.simple.parser.ParseException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Decoder; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.Convertor; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ServiceValidationUtils; -import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.util.GeneralUtility; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; - -import fj.data.Either; - -public class DownloadComponentArt extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(DownloadComponentArt.class.getName()); - protected static final String UPLOAD_ARTIFACT_PAYLOAD = "UHVUVFktVXNlci1LZXktRmlsZS0yOiBzc2gtcnNhDQpFbmNyeXB0aW9uOiBhZXMyNTYtY2JjDQpDb21tZW5wOA0K"; - protected static final String UPLOAD_ARTIFACT_NAME = "TLV_prv.ppk"; - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - - - protected Gson gson = new Gson(); - protected JSONParser jsonParser = new JSONParser(); - - - protected String serviceVersion; - protected ResourceReqDetails resourceDetails; - protected User sdncUserDetails; - protected ServiceReqDetails serviceDetails; - - - @BeforeMethod - public void init() throws Exception{ - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - Resource resourceObj = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - Service serviceObj = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - - - resourceDetails = new ResourceReqDetails(resourceObj); - serviceDetails = new ServiceReqDetails(serviceObj); - } - - @Rule - public static TestName name = new TestName(); - - public DownloadComponentArt() { - super(name, DownloadComponentArt.class.getName()); - - } - - - - // External API - Download artifact for resource - @Test - public void downloadArtifactFromResourceViaExternalAPI() throws Exception { - Resource resourceDetailsVF; - Either<Resource, RestResponse> createdResource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, UserRoleEnum.DESIGNER, true); - resourceDetailsVF = createdResource.left().value(); - ArtifactDefinition heatArtifact = AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVF, UserRoleEnum.DESIGNER, true, true).left().value(); - resourceDetails = new ResourceReqDetails(resourceDetailsVF); - - String resourceUUID = resourceDetailsVF.getUUID(); - String artifactUUID = heatArtifact.getArtifactUUID(); - - System.out.println("Resource UUID: " + resourceUUID); - System.out.println("Artifact UUID: " + artifactUUID); - - RestResponse restResponse = ArtifactRestUtils.getResourceDeploymentArtifactExternalAPI(resourceUUID, artifactUUID, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "Resource"); - - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 200; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - - String response = restResponse.getResponse(); - - String payloadData = "aGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzDQoNCmRlc2NyaXB0aW9uOiBTaW1wbGUgdGVtcGxhdGUgdG8gZGVwbG95IGEgc3RhY2sgd2l0aCB0d28gdmlydHVhbCBtYWNoaW5lIGluc3RhbmNlcw0KDQpwYXJhbWV0ZXJzOg0KICBpbWFnZV9uYW1lXzE6DQogICAgdHlwZTogc3RyaW5nDQogICAgbGFiZWw6IEltYWdlIE5hbWUNCiAgICBkZXNjcmlwdGlvbjogU0NPSU1BR0UgU3BlY2lmeSBhbiBpbWFnZSBuYW1lIGZvciBpbnN0YW5jZTENCiAgICBkZWZhdWx0OiBjaXJyb3MtMC4zLjEteDg2XzY0DQogIGltYWdlX25hbWVfMjoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogSW1hZ2UgTmFtZQ0KICAgIGRlc2NyaXB0aW9uOiBTQ09JTUFHRSBTcGVjaWZ5IGFuIGltYWdlIG5hbWUgZm9yIGluc3RhbmNlMg0KICAgIGRlZmF1bHQ6IGNpcnJvcy0wLjMuMS14ODZfNjQNCiAgbmV0d29ya19pZDoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogTmV0d29yayBJRA0KICAgIGRlc2NyaXB0aW9uOiBTQ09ORVRXT1JLIE5ldHdvcmsgdG8gYmUgdXNlZCBmb3IgdGhlIGNvbXB1dGUgaW5zdGFuY2UNCiAgICBoaWRkZW46IHRydWUNCiAgICBjb25zdHJhaW50czoNCiAgICAgIC0gbGVuZ3RoOiB7IG1pbjogNiwgbWF4OiA4IH0NCiAgICAgICAgZGVzY3JpcHRpb246IFBhc3N3b3JkIGxlbmd0aCBtdXN0IGJlIGJldHdlZW4gNiBhbmQgOCBjaGFyYWN0ZXJzLg0KICAgICAgLSByYW5nZTogeyBtaW46IDYsIG1heDogOCB9DQogICAgICAgIGRlc2NyaXB0aW9uOiBSYW5nZSBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3ZhbHVlczoNCiAgICAgICAgLSBtMS5zbWFsbA0KICAgICAgICAtIG0xLm1lZGl1bQ0KICAgICAgICAtIG0xLmxhcmdlDQogICAgICAgIGRlc2NyaXB0aW9uOiBBbGxvd2VkIHZhbHVlcyBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbYS16QS1aMC05XSsiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IGNvbnNpc3Qgb2YgY2hhcmFjdGVycyBhbmQgbnVtYmVycyBvbmx5Lg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbQS1aXStbYS16QS1aMC05XSoiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IHN0YXJ0IHdpdGggYW4gdXBwZXJjYXNlIGNoYXJhY3Rlci4NCiAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcg0KICAgICAgICBkZXNjcmlwdGlvbjogQ3VzdG9tIGRlc2NyaXB0aW9uDQoNCnJlc291cmNlczoNCiAgbXlfaW5zdGFuY2UxOg0KICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXINCiAgICBwcm9wZXJ0aWVzOg0KICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBpbWFnZV9uYW1lXzEgfQ0KICAgICAgZmxhdm9yOiBtMS5zbWFsbA0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9DQogIG15X2luc3RhbmNlMjoNCiAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyDQogICAgcHJvcGVydGllczoNCiAgICAgIGltYWdlOiB7IGdldF9wYXJhbTogaW1hZ2VfbmFtZV8yIH0NCiAgICAgIGZsYXZvcjogbTEudGlueQ0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9"; - String decodedPaypload = Decoder.decode(payloadData); - - Assert.assertEquals(response, decodedPaypload, "Response deployment artifact not correct."); - - String auditAction = "DownloadArtifact"; - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setResourceName(resourceDetails.getName()); - expectedResourceAuditJavaObject.setResourceType("Resource"); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - - expectedResourceAuditJavaObject.setCONSUMER_ID("ci"); - String resource_url = String.format("/sdc/v1/catalog/resources/%s/artifacts/%s", resourceUUID, artifactUUID); - expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); - - AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); - } - - - // External API - Download artifact for resource - negative test - @Test - public void downloadArtifactFromResourceViaExternalAPINegativeTest() throws Exception { - Resource resourceDetailsVF; - Either<Resource, RestResponse> createdResource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, UserRoleEnum.DESIGNER, true); - resourceDetailsVF = createdResource.left().value(); - ArtifactDefinition heatArtifact = AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVF, UserRoleEnum.DESIGNER, true, true).left().value(); - resourceDetails = new ResourceReqDetails(resourceDetailsVF); - - String resourceUUID = resourceDetailsVF.getUUID(); - String artifactUUID = heatArtifact.getArtifactUUID(); - - System.out.println("Resource UUID: " + resourceUUID); - System.out.println("Artifact UUID: " + artifactUUID); - - RestResponse restResponse = ArtifactRestUtils.getResourceDeploymentArtifactExternalAPI(resourceUUID, "dfsgfdsg324", ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "Resource"); - - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 200; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - } - - - - - - // External API - Download artifact for service - negative test - @Test - public void downloadArtifactFromServiceViaExternalAPI() throws Exception { - - Service resourceDetailsService; - Either<Service, RestResponse> createdResource = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true); - resourceDetailsService = createdResource.left().value(); - - ArtifactDefinition heatArtifact = AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, resourceDetailsService, UserRoleEnum.DESIGNER, true, true).left().value(); - - String resourceUUID = resourceDetailsService.getUUID(); - String artifactUUID = heatArtifact.getArtifactUUID(); - - System.out.println("Resource UUID: " + resourceUUID); - System.out.println("Artifact UUID: " + artifactUUID); - - RestResponse restResponse = ArtifactRestUtils.getResourceDeploymentArtifactExternalAPI(resourceUUID, artifactUUID, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "Service"); - - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 200; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - - String response = restResponse.getResponse(); - - String payloadData = "aGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzDQoNCmRlc2NyaXB0aW9uOiBTaW1wbGUgdGVtcGxhdGUgdG8gZGVwbG95IGEgc3RhY2sgd2l0aCB0d28gdmlydHVhbCBtYWNoaW5lIGluc3RhbmNlcw0KDQpwYXJhbWV0ZXJzOg0KICBpbWFnZV9uYW1lXzE6DQogICAgdHlwZTogc3RyaW5nDQogICAgbGFiZWw6IEltYWdlIE5hbWUNCiAgICBkZXNjcmlwdGlvbjogU0NPSU1BR0UgU3BlY2lmeSBhbiBpbWFnZSBuYW1lIGZvciBpbnN0YW5jZTENCiAgICBkZWZhdWx0OiBjaXJyb3MtMC4zLjEteDg2XzY0DQogIGltYWdlX25hbWVfMjoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogSW1hZ2UgTmFtZQ0KICAgIGRlc2NyaXB0aW9uOiBTQ09JTUFHRSBTcGVjaWZ5IGFuIGltYWdlIG5hbWUgZm9yIGluc3RhbmNlMg0KICAgIGRlZmF1bHQ6IGNpcnJvcy0wLjMuMS14ODZfNjQNCiAgbmV0d29ya19pZDoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogTmV0d29yayBJRA0KICAgIGRlc2NyaXB0aW9uOiBTQ09ORVRXT1JLIE5ldHdvcmsgdG8gYmUgdXNlZCBmb3IgdGhlIGNvbXB1dGUgaW5zdGFuY2UNCiAgICBoaWRkZW46IHRydWUNCiAgICBjb25zdHJhaW50czoNCiAgICAgIC0gbGVuZ3RoOiB7IG1pbjogNiwgbWF4OiA4IH0NCiAgICAgICAgZGVzY3JpcHRpb246IFBhc3N3b3JkIGxlbmd0aCBtdXN0IGJlIGJldHdlZW4gNiBhbmQgOCBjaGFyYWN0ZXJzLg0KICAgICAgLSByYW5nZTogeyBtaW46IDYsIG1heDogOCB9DQogICAgICAgIGRlc2NyaXB0aW9uOiBSYW5nZSBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3ZhbHVlczoNCiAgICAgICAgLSBtMS5zbWFsbA0KICAgICAgICAtIG0xLm1lZGl1bQ0KICAgICAgICAtIG0xLmxhcmdlDQogICAgICAgIGRlc2NyaXB0aW9uOiBBbGxvd2VkIHZhbHVlcyBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbYS16QS1aMC05XSsiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IGNvbnNpc3Qgb2YgY2hhcmFjdGVycyBhbmQgbnVtYmVycyBvbmx5Lg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbQS1aXStbYS16QS1aMC05XSoiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IHN0YXJ0IHdpdGggYW4gdXBwZXJjYXNlIGNoYXJhY3Rlci4NCiAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcg0KICAgICAgICBkZXNjcmlwdGlvbjogQ3VzdG9tIGRlc2NyaXB0aW9uDQoNCnJlc291cmNlczoNCiAgbXlfaW5zdGFuY2UxOg0KICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXINCiAgICBwcm9wZXJ0aWVzOg0KICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBpbWFnZV9uYW1lXzEgfQ0KICAgICAgZmxhdm9yOiBtMS5zbWFsbA0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9DQogIG15X2luc3RhbmNlMjoNCiAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyDQogICAgcHJvcGVydGllczoNCiAgICAgIGltYWdlOiB7IGdldF9wYXJhbTogaW1hZ2VfbmFtZV8yIH0NCiAgICAgIGZsYXZvcjogbTEudGlueQ0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9"; - String decodedPaypload = Decoder.decode(payloadData); - - Assert.assertEquals(response, decodedPaypload, "Response deployment artifact not correct."); - - String auditAction = "DownloadArtifact"; - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setResourceName(resourceDetailsService.getName()); - expectedResourceAuditJavaObject.setResourceType("Service"); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - - expectedResourceAuditJavaObject.setCONSUMER_ID("ci"); - String resource_url = String.format("/sdc/v1/catalog/services/%s/artifacts/%s", resourceUUID, artifactUUID); - expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); - - AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); - } - - - - - - - // External API - Download ComponentInstance artifact of service - negative test - @Test - public void downloadArtifactOfComponentInstanceFromServiceViaExternalAPI() throws Exception { - - Either<Resource, RestResponse> resourceDetailsVF_01e = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, UserRoleEnum.DESIGNER, true); - Component resourceDetailsVF_01 = resourceDetailsVF_01e.left().value(); - ArtifactDefinition heatArtifact = AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVF_01, UserRoleEnum.DESIGNER, true, true).left().value(); - - resourceDetailsVF_01 = AtomicOperationUtils.changeComponentState(resourceDetailsVF_01, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - Service resourceDetailsService; - Either<Service, RestResponse> createdResource = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true); - resourceDetailsService = createdResource.left().value(); - - - ComponentInstance resourceDetailsVF1ins_01 = AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVF_01, resourceDetailsService, UserRoleEnum.DESIGNER, true).left().value(); - - - System.out.println("-----"); - - - String resourceUUID = resourceDetailsService.getUUID(); - String componentNormalizedName = resourceDetailsVF1ins_01.getNormalizedName(); - String artifactUUID = heatArtifact.getArtifactUUID(); - - System.out.println("Resource UUID: " + resourceUUID); - System.out.println("Component NormalizedName: " + componentNormalizedName); - System.out.println("Artifact UUID: " + artifactUUID); - - RestResponse restResponse = ArtifactRestUtils.getComponentInstanceDeploymentArtifactExternalAPI(resourceUUID, componentNormalizedName, artifactUUID, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "Service"); -// - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 200; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - - String response = restResponse.getResponse(); - - String payloadData = "aGVhdF90ZW1wbGF0ZV92ZXJzaW9uOiAyMDEzLTA1LTIzDQoNCmRlc2NyaXB0aW9uOiBTaW1wbGUgdGVtcGxhdGUgdG8gZGVwbG95IGEgc3RhY2sgd2l0aCB0d28gdmlydHVhbCBtYWNoaW5lIGluc3RhbmNlcw0KDQpwYXJhbWV0ZXJzOg0KICBpbWFnZV9uYW1lXzE6DQogICAgdHlwZTogc3RyaW5nDQogICAgbGFiZWw6IEltYWdlIE5hbWUNCiAgICBkZXNjcmlwdGlvbjogU0NPSU1BR0UgU3BlY2lmeSBhbiBpbWFnZSBuYW1lIGZvciBpbnN0YW5jZTENCiAgICBkZWZhdWx0OiBjaXJyb3MtMC4zLjEteDg2XzY0DQogIGltYWdlX25hbWVfMjoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogSW1hZ2UgTmFtZQ0KICAgIGRlc2NyaXB0aW9uOiBTQ09JTUFHRSBTcGVjaWZ5IGFuIGltYWdlIG5hbWUgZm9yIGluc3RhbmNlMg0KICAgIGRlZmF1bHQ6IGNpcnJvcy0wLjMuMS14ODZfNjQNCiAgbmV0d29ya19pZDoNCiAgICB0eXBlOiBzdHJpbmcNCiAgICBsYWJlbDogTmV0d29yayBJRA0KICAgIGRlc2NyaXB0aW9uOiBTQ09ORVRXT1JLIE5ldHdvcmsgdG8gYmUgdXNlZCBmb3IgdGhlIGNvbXB1dGUgaW5zdGFuY2UNCiAgICBoaWRkZW46IHRydWUNCiAgICBjb25zdHJhaW50czoNCiAgICAgIC0gbGVuZ3RoOiB7IG1pbjogNiwgbWF4OiA4IH0NCiAgICAgICAgZGVzY3JpcHRpb246IFBhc3N3b3JkIGxlbmd0aCBtdXN0IGJlIGJldHdlZW4gNiBhbmQgOCBjaGFyYWN0ZXJzLg0KICAgICAgLSByYW5nZTogeyBtaW46IDYsIG1heDogOCB9DQogICAgICAgIGRlc2NyaXB0aW9uOiBSYW5nZSBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3ZhbHVlczoNCiAgICAgICAgLSBtMS5zbWFsbA0KICAgICAgICAtIG0xLm1lZGl1bQ0KICAgICAgICAtIG0xLmxhcmdlDQogICAgICAgIGRlc2NyaXB0aW9uOiBBbGxvd2VkIHZhbHVlcyBkZXNjcmlwdGlvbg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbYS16QS1aMC05XSsiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IGNvbnNpc3Qgb2YgY2hhcmFjdGVycyBhbmQgbnVtYmVycyBvbmx5Lg0KICAgICAgLSBhbGxvd2VkX3BhdHRlcm46ICJbQS1aXStbYS16QS1aMC05XSoiDQogICAgICAgIGRlc2NyaXB0aW9uOiBQYXNzd29yZCBtdXN0IHN0YXJ0IHdpdGggYW4gdXBwZXJjYXNlIGNoYXJhY3Rlci4NCiAgICAgIC0gY3VzdG9tX2NvbnN0cmFpbnQ6IG5vdmEua2V5cGFpcg0KICAgICAgICBkZXNjcmlwdGlvbjogQ3VzdG9tIGRlc2NyaXB0aW9uDQoNCnJlc291cmNlczoNCiAgbXlfaW5zdGFuY2UxOg0KICAgIHR5cGU6IE9TOjpOb3ZhOjpTZXJ2ZXINCiAgICBwcm9wZXJ0aWVzOg0KICAgICAgaW1hZ2U6IHsgZ2V0X3BhcmFtOiBpbWFnZV9uYW1lXzEgfQ0KICAgICAgZmxhdm9yOiBtMS5zbWFsbA0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9DQogIG15X2luc3RhbmNlMjoNCiAgICB0eXBlOiBPUzo6Tm92YTo6U2VydmVyDQogICAgcHJvcGVydGllczoNCiAgICAgIGltYWdlOiB7IGdldF9wYXJhbTogaW1hZ2VfbmFtZV8yIH0NCiAgICAgIGZsYXZvcjogbTEudGlueQ0KICAgICAgbmV0d29ya3M6DQogICAgICAgIC0gbmV0d29yayA6IHsgZ2V0X3BhcmFtIDogbmV0d29ya19pZCB9"; - String decodedPaypload = Decoder.decode(payloadData); - - Assert.assertEquals(response, decodedPaypload, "Response deployment artifact not correct."); - - String auditAction = "DownloadArtifact"; - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setResourceName(resourceDetailsVF1ins_01.getName()); - expectedResourceAuditJavaObject.setResourceType("Service"); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - - expectedResourceAuditJavaObject.setCONSUMER_ID("ci"); - String resource_url = String.format("/sdc/v1/catalog/services/%s/resourceInstances/%s/artifacts/%s", resourceUUID, componentNormalizedName, artifactUUID); - expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); - - AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); - } - - - - - - - - - - @Test - public void downloadArtifactFromResourceTest() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - String jsonBody = createUploadArtifactBodyJson(); - - String resourceId = resourceDetails.getUniqueId(); - String url = String.format(Urls.ADD_ARTIFACT_TO_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId); - HttpPost httppost = createPostAddArtifactRequeast(jsonBody, url, true); - HttpResponse response = httpclient.execute(httppost); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("failed to add artifact", 200, status); - - ArtifactDefinition origArtifact = getArtifactDataFromJson(jsonBody); - addArtifactDataFromResponse(response, origArtifact); - String artifactId = origArtifact.getUniqueId(); - - url = String.format(Urls.UI_DOWNLOAD_RESOURCE_ARTIFACT, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, artifactId); - HttpGet httpGet = createGetRequest(url); - response = httpclient.execute(httpGet); - status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("failed to download artifact", 200, status); - - InputStream inputStream = response.getEntity().getContent(); - ArtifactUiDownloadData artifactUiDownloadData = getArtifactUiDownloadData(IOUtils.toString(inputStream)); - AssertJUnit.assertEquals("Downloaded payload is different from uploaded one", UPLOAD_ARTIFACT_PAYLOAD, artifactUiDownloadData.getBase64Contents()); - AssertJUnit.assertEquals("Downloaded artifact name is different from uploaded one", UPLOAD_ARTIFACT_NAME, artifactUiDownloadData.getArtifactName()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor.constructFieldsForAuditValidation(resourceDetails, resourceDetails.getVersion(), sdncUserDetails); - String auditAction = "ArtifactDownload"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setArtifactData(AuditValidationUtils.buildArtifactDataAudit(origArtifact)); - expectedResourceAuditJavaObject.setCurrArtifactUuid(origArtifact.getUniqueId()); - expectedResourceAuditJavaObject.setPrevArtifactUuid(""); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } finally { - httpclient.close(); - } - - } - - @Test - public void downloadArtifactFromServiceTest() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - - try { - - String jsonStr = createUploadArtifactBodyJson(); - - String url = String.format(Urls.ADD_ARTIFACT_TO_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), serviceDetails.getUniqueId()); - HttpPost httpPost = createPostAddArtifactRequeast(jsonStr, url, true); - CloseableHttpResponse result = httpclient.execute(httpPost); - int status = result.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("failed to add artifact", 200, status); - - ArtifactDefinition origArtifact = getArtifactDataFromJson(jsonStr); - addArtifactDataFromResponse(result, origArtifact); - String artifactId = origArtifact.getUniqueId(); - - url = String.format(Urls.UI_DOWNLOAD_SERVICE_ARTIFACT, config.getCatalogBeHost(), config.getCatalogBePort(), serviceDetails.getUniqueId(), artifactId); - HttpGet httpGet = createGetRequest(url); - CloseableHttpResponse response2 = httpclient.execute(httpGet); - status = response2.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("failed to download artifact", 200, status); - InputStream inputStream = response2.getEntity().getContent(); - ArtifactUiDownloadData artifactUiDownloadData = getArtifactUiDownloadData(IOUtils.toString(inputStream)); - AssertJUnit.assertEquals("Downloaded payload is different from uploaded one", UPLOAD_ARTIFACT_PAYLOAD, artifactUiDownloadData.getBase64Contents()); - AssertJUnit.assertEquals("Downloaded artifact name is different from uploaded one", UPLOAD_ARTIFACT_NAME, artifactUiDownloadData.getArtifactName()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = AuditValidationUtils.constructFieldsForAuditValidation(serviceDetails, serviceDetails.getVersion(), sdncUserDetails); - String auditAction = "ArtifactDownload"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setArtifactData(AuditValidationUtils.buildArtifactDataAudit(origArtifact)); - expectedResourceAuditJavaObject.setCurrArtifactUuid(origArtifact.getUniqueId()); - expectedResourceAuditJavaObject.setPrevArtifactUuid(""); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } finally { -// RestResponse response = ServiceRestUtils.deleteService(serviceDetails, serviceVersion, sdncUserDetails ); -// checkDeleteResponse(response); - httpclient.close(); - } - } - - @Test - public void downloadArtifactFromResourceNotFound() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - - String resourceId = resourceDetails.getUniqueId(); - String artifactIdNotFound = "11111"; - - ArtifactDefinition origArtifact = new ArtifactDefinition(); - origArtifact.setUniqueId(artifactIdNotFound); - - String url = String.format(Urls.UI_DOWNLOAD_RESOURCE_ARTIFACT, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, artifactIdNotFound); - HttpGet httpGet = createGetRequest(url); - CloseableHttpResponse response = httpclient.execute(httpGet); - int status = response.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("expected 404 not found", 404, status); - - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor.constructFieldsForAuditValidation(resourceDetails, resourceDetails.getVersion(), sdncUserDetails); - String auditAction = "ArtifactDownload"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc("")); - expectedResourceAuditJavaObject.setArtifactData(""); - expectedResourceAuditJavaObject.setCurrArtifactUuid(origArtifact.getUniqueId()); - expectedResourceAuditJavaObject.setPrevArtifactUuid(""); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - expectedResourceAuditJavaObject.setPrevArtifactUuid(null); - } finally { - httpclient.close(); - } - - } - - @Test - public void downloadArtifactFromServiceNotFound() throws Exception { - - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - - String artifactIdNotFound = "11111"; - ArtifactDefinition origArtifact = new ArtifactDefinition(); - origArtifact.setUniqueId(artifactIdNotFound); - - String url = String.format(Urls.UI_DOWNLOAD_SERVICE_ARTIFACT, config.getCatalogBeHost(), config.getCatalogBePort(), serviceDetails.getUniqueId(), artifactIdNotFound); - HttpGet httpGet = createGetRequest(url); - CloseableHttpResponse response2 = httpclient.execute(httpGet); - int status = response2.getStatusLine().getStatusCode(); - AssertJUnit.assertEquals("expected 404 not found", 404, status); - - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, serviceDetails.getVersion(), sdncUserDetails); - String auditAction = "ArtifactDownload"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc("")); - expectedResourceAuditJavaObject.setArtifactData(""); - expectedResourceAuditJavaObject.setCurrArtifactUuid(origArtifact.getUniqueId()); - expectedResourceAuditJavaObject.setPrevArtifactUuid(""); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } finally { - httpclient.close(); - } - - } - - @Test - public void addArtifactToResourceTest() throws Exception { - - ArtifactReqDetails defaultArtifact = ElementFactory.getDefaultArtifact(); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(defaultArtifact, sdncUserDetails, resourceDetails.getUniqueId()); - int status = response.getErrorCode(); - AssertJUnit.assertEquals("add informational artifact request returned status: " + response.getErrorCode(), 200, status); - - RestResponse resourceResp = ResourceRestUtils.getResource(resourceDetails.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(resourceResp.getResponse()); - AssertJUnit.assertNotNull(resource); - - Map<String, ArtifactDefinition> artifacts = resource.getArtifacts(); - boolean isExist = false; - for (Map.Entry<String, ArtifactDefinition> entry : artifacts.entrySet()) { - if (entry.getKey().equals(defaultArtifact.getArtifactLabel())) { - isExist = true; - - } - } - AssertJUnit.assertTrue(isExist); - } - - - protected String createUploadArtifactBodyJson() { - Map<String, Object> jsonBody = new HashMap<String, Object>(); - jsonBody.put("artifactName", UPLOAD_ARTIFACT_NAME); - jsonBody.put("artifactDisplayName", "configure"); - jsonBody.put("artifactType", "SHELL"); - jsonBody.put("mandatory", "false"); - jsonBody.put("description", "ff"); - jsonBody.put("payloadData", UPLOAD_ARTIFACT_PAYLOAD); - jsonBody.put("artifactLabel", "configure"); - return gson.toJson(jsonBody); - } - - protected ArtifactDefinition getArtifactDataFromJson(String json) { - Gson gson = new Gson(); - JsonObject jsonElement = new JsonObject(); - jsonElement = gson.fromJson(json, jsonElement.getClass()); - ArtifactDefinition artifact = new ArtifactDefinition(); - String payload = null; - JsonElement artifactPayload = jsonElement.get(Constants.ARTIFACT_PAYLOAD_DATA); - if (artifactPayload != null && !artifactPayload.isJsonNull()) { - payload = artifactPayload.getAsString(); - } - jsonElement.remove(Constants.ARTIFACT_PAYLOAD_DATA); - artifact = gson.fromJson(jsonElement, ArtifactDefinition.class); - artifact.setPayloadData(payload); - - /*atifact.setArtifactName(UPLOAD_ARTIFACT_NAME); -artifact.setArtifactDisplayName("configure"); -artifact.setArtifactType("SHELL"); -artifact.setMandatory(false); -artifact.setDescription("ff"); -artifact.setPayloadData(UPLOAD_ARTIFACT_PAYLOAD); -artifact.setArtifactLabel("configure");*/ - return artifact; - } - - protected HttpGet createGetRequest(String url) { - HttpGet httpGet = new HttpGet(url); - httpGet.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httpGet.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httpGet.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - return httpGet; - } - - protected String getArtifactUid(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected String getArtifactEsId(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String esId = (String) responseMap.get("EsId"); - return esId; - } - - protected ArtifactDefinition addArtifactDataFromResponse(HttpResponse response, ArtifactDefinition artifact) throws HttpResponseException, IOException, ParseException { - //String responseString = new BasicResponseHandler().handleResponse(response); - HttpEntity entity = response.getEntity(); - String responseString = EntityUtils.toString(entity); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - artifact.setEsId((String)responseMap.get("esId")); - artifact.setUniqueId((String) responseMap.get("uniqueId")); - artifact.setArtifactGroupType(ArtifactGroupTypeEnum.findType((String) responseMap.get("artifactGroupType"))); - artifact.setTimeout(((Long) responseMap.get("timeout")).intValue()); - return artifact; - } - - protected String getLifecycleArtifactUid(CloseableHttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - responseMap = (JSONObject) responseMap.get("implementation"); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected HttpDelete createDeleteArtifactRequest(String url) { - HttpDelete httpDelete = new HttpDelete(url); - httpDelete.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - httpDelete.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - return httpDelete; - } - - protected HttpPost createPostAddArtifactRequeast(String jsonBody, String url, boolean addMd5Header) throws UnsupportedEncodingException { - HttpPost httppost = new HttpPost(url); - httppost.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httppost.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httppost.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - if (addMd5Header) { - httppost.addHeader(HttpHeaderEnum.Content_MD5.getValue(), GeneralUtility.calculateMD5Base64EncodedByString(jsonBody)); - } - StringEntity input = new StringEntity(jsonBody); - input.setContentType("application/json"); - httppost.setEntity(input); - log.debug("Executing request {}" , httppost.getRequestLine()); - return httppost; - } - - protected String createLoadArtifactBody() { - Map<String, Object> json = new HashMap<String, Object>(); - json.put("artifactName", "install_apache2.sh"); - json.put("artifactType", "SHELL"); - json.put("description", "ddd"); - json.put("payloadData", "UEsDBAoAAAAIAAeLb0bDQz"); - json.put("artifactLabel", "name123"); - - String jsonStr = gson.toJson(json); - return jsonStr; - } - - protected void checkDeleteResponse(RestResponse response) { - BaseRestUtils.checkStatusCode(response, "delete request failed", false, 204, 404); - } - - protected ArtifactUiDownloadData getArtifactUiDownloadData(String artifactUiDownloadDataStr) throws Exception { - - ObjectMapper mapper = new ObjectMapper(); - try { - ArtifactUiDownloadData artifactUiDownloadData = mapper.readValue(artifactUiDownloadDataStr, ArtifactUiDownloadData.class); - return artifactUiDownloadData; - } catch (Exception e) { - e.printStackTrace(); - } - return null; - } - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/HeatEnvArtifact.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/HeatEnvArtifact.java deleted file mode 100644 index 2ca09b36f3..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/HeatEnvArtifact.java +++ /dev/null @@ -1,331 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.util.List; -import java.util.Map; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.HeatParameterDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.heat.HeatParameterType; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; -import org.yaml.snakeyaml.Yaml; - -import com.google.gson.Gson; - -public class HeatEnvArtifact extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public HeatEnvArtifact() { - super(name, HeatEnvArtifact.class.getName()); - } - - @Test(enabled = true) - public void heatEnvOnResourceFormatTest() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csarHeatEnv.csar"); - assertNotNull(createdResource); - - RestResponse certifyState = LifecycleRestUtils.changeComponentState(createdResource, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(certifyState); - - Resource certifiedResource = ResponseParser.parseToObjectUsingMapper(certifyState.getResponse(), Resource.class); - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - - // 2 create service - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // 3 create vf instance in service - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(certifiedResource); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - - ComponentInstance vfi = componentInstances.get(0); - Map<String, ArtifactDefinition> deploymentArtifacts = vfi.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - assertEquals(4, deploymentArtifacts.size()); - ArtifactDefinition heatEnv = deploymentArtifacts.get("heat0env"); - assertNotNull(heatEnv); - - Map<String, Object> yaml = downloadComponentInstanceYamlFile(service.getUniqueId(), vfi.getUniqueId(), sdncModifierDetails, heatEnv.getUniqueId()); - assertNotNull(yaml); - Map<String, Object> paramters = (Map<String, Object>) yaml.get("parameters"); - assertNotNull(paramters); - assertEquals(8, paramters.size()); - assertEquals(null, paramters.get("param8")); - List<HeatParameterDefinition> heatParameters = heatEnv.getListHeatParameters(); - heatParameters.forEach(p -> { - assertEquals(p.getCurrentValue(), paramters.get(p.getName())); - }); - } - - @Test(enabled = true) - public void noHeatEnvOnResourceFormatTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csarHeatNoEnv.csar"); - assertNotNull(createdResource); - - RestResponse certifyState = LifecycleRestUtils.changeComponentState(createdResource, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(certifyState); - - Resource certifiedResource = ResponseParser.parseToObjectUsingMapper(certifyState.getResponse(), Resource.class); - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - - // 2 create service - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // 3 create vf instance in service - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(certifiedResource); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - - ComponentInstance vfi = componentInstances.get(0); - Map<String, ArtifactDefinition> deploymentArtifacts = vfi.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - assertEquals(4, deploymentArtifacts.size()); - ArtifactDefinition heatEnv = deploymentArtifacts.get("heat0env"); - assertNotNull(heatEnv); - - Map<String, Object> yaml = downloadComponentInstanceYamlFile(service.getUniqueId(), vfi.getUniqueId(), sdncModifierDetails, heatEnv.getUniqueId()); - assertNotNull(yaml); - Map<String, Object> paramters = (Map<String, Object>) yaml.get("parameters"); - assertNotNull(paramters); - assertEquals(8, paramters.size()); - assertEquals(null, paramters.get("param1")); - assertEquals(null, paramters.get("param2")); - assertEquals(null, paramters.get("param4")); - assertEquals(null, paramters.get("param5")); - assertEquals(null, paramters.get("param7")); - assertEquals(null, paramters.get("param8")); - List<HeatParameterDefinition> heatParameters = heatEnv.getListHeatParameters(); - heatParameters.forEach(p -> { - assertEquals(p.getCurrentValue(), paramters.get(p.getName())); - }); - - } - - @DataProvider(name = "vfModuleCsar") - public static Object[][] csarNames() { - return new Object[][] { { "VSPPackage" }, { "csar_1" }, { "csarHeatEnv.csar" } }; - } - - @Test(dataProvider = "vfModuleCsar") - public void heatEnvOnVfDownloadNoChangesTest(String vfName) throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - System.out.println("Run for vf " + vfName); - Resource createdResource = createVfFromCSAR(sdncModifierDetails, vfName); - assertNotNull(createdResource); - Map<String, ArtifactDefinition> deploymentArtifacts = createdResource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - - for (ArtifactDefinition artifact : deploymentArtifacts.values()) { - if (artifact.getArtifactType().equals("HEAT")) { - - ArtifactDefinition heatArtifact = artifact; - assertNotNull(heatArtifact); - - ArtifactDefinition heatEnvArtifact = deploymentArtifacts.get(artifact.getArtifactLabel() + "env"); - assertNotNull(heatEnvArtifact); - - String heatEnvId = heatEnvArtifact.getUniqueId(); - downloadHeatEnvAndValidate(sdncModifierDetails, createdResource, heatArtifact, heatEnvId); - } - } - System.out.println("Finished for vf " + vfName); - - } - - private void downloadHeatEnvAndValidate(User sdncModifierDetails, Resource createdResource, ArtifactDefinition heatArtifact, String heatEnvId) throws Exception { - RestResponse downloadResult = ArtifactRestUtils.downloadResourceArtifactInternalApi(createdResource.getUniqueId(), sdncModifierDetails, heatEnvId); - BaseRestUtils.checkSuccess(downloadResult); - - ArtifactUiDownloadData artifactUiDownloadData = ResponseParser.parseToObject(downloadResult.getResponse(), ArtifactUiDownloadData.class); - byte[] fromUiDownload = artifactUiDownloadData.getBase64Contents().getBytes(); - byte[] decodeBase64 = Base64.decodeBase64(fromUiDownload); - Yaml yaml = new Yaml(); - - InputStream inputStream = new ByteArrayInputStream(decodeBase64); - - Map<String, Object> load = (Map<String, Object>) yaml.load(inputStream); - Map<String, Object> paramters = (Map<String, Object>) load.get("parameters"); - assertNotNull(paramters); - - List<HeatParameterDefinition> heatParameters = heatArtifact.getListHeatParameters(); - assertNotNull(heatParameters); - assertEquals("Validate heat parameters size", heatParameters.size(), paramters.size()); - Gson gson = new Gson(); - heatParameters.forEach(hpInResource -> { - Object valueInFile = paramters.get(hpInResource.getName()); - Object valueInResource; - if (hpInResource.getCurrentValue() == null) { - valueInResource = hpInResource.getDefaultValue(); - } else { - valueInResource = hpInResource.getCurrentValue(); - } - if (valueInResource == null) { - assertEquals("Validate null value for parameter " + hpInResource.getName(), valueInResource, valueInFile); - } else { - HeatParameterType type = HeatParameterType.isValidType(hpInResource.getType()); - // if (type != null && (HeatParameterType.JSON == type || HeatParameterType.COMMA_DELIMITED_LIST == type)){ - // String jsonValue = gson.toJson(valueInFile).toString(); - // - // assertEquals("Validate value as json string for parameter " +hpInResource.getName() ,valueInResource, jsonValue); - // }else{ - assertEquals("Validate value for parameter " + hpInResource.getName(), valueInResource, valueInFile.toString()); - // } - } - }); - } - - @Test(enabled = true) - public void heatEnvOnVfFailedTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csar_1"); - assertNotNull(createdResource); - Map<String, ArtifactDefinition> deploymentArtifacts = createdResource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - String heatEnvId = "wrongId"; - RestResponse downloadResult = ArtifactRestUtils.downloadResourceArtifactInternalApi(createdResource.getUniqueId(), sdncModifierDetails, heatEnvId); - - assertEquals("Validate error code", 404, downloadResult.getErrorCode().intValue()); - - // BaseRestUtils.checkErrorResponse(downloadResult, ActionStatus.ARTIFACT_NOT_FOUND); - - } - - @Test(dataProvider = "vfModuleCsar") - public void heatEnvOnVfDownloadChangeParamTest(String vfName) throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, vfName); - assertNotNull(createdResource); - Map<String, ArtifactDefinition> deploymentArtifacts = createdResource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - - ArtifactDefinition heatArt = deploymentArtifacts.get("heat0"); - assertNotNull(heatArt); - - List<HeatParameterDefinition> heatParameters = heatArt.getListHeatParameters(); - assertNotNull(heatParameters); - HeatParameterDefinition paramForChange = null; - for (HeatParameterDefinition hp : heatParameters) { - if (hp.getType().equals("string")) { - paramForChange = hp; - break; - } - } - assertNotNull(paramForChange); - paramForChange.setCurrentValue("newValueForTest"); - RestResponse updateResult = ArtifactRestUtils.updateDeploymentArtifactToResource(heatArt, sdncModifierDetails, createdResource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResult); - - RestResponse getResourceResult = ResourceRestUtils.getResource(createdResource.getUniqueId()); - BaseRestUtils.checkSuccess(getResourceResult); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(getResourceResult.getResponse()); - assertNotNull(resource); - deploymentArtifacts = resource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - - heatArt = deploymentArtifacts.get("heat0"); - assertNotNull(heatArt); - ArtifactDefinition heatEnvArt = deploymentArtifacts.get("heat0env"); - assertNotNull(heatEnvArt); - - downloadHeatEnvAndValidate(sdncModifierDetails, createdResource, heatArt, heatEnvArt.getUniqueId()); - - } - - // **************************************** - private Map<String, Object> downloadComponentInstanceYamlFile(String serviceUniqueId, String resourceInstanceId, User user, String artifactUniqeId) throws Exception { - RestResponse heatEnvDownloadResponse = ArtifactRestUtils.downloadResourceInstanceArtifact(serviceUniqueId, resourceInstanceId, user, artifactUniqeId); - BaseRestUtils.checkSuccess(heatEnvDownloadResponse); - - ArtifactUiDownloadData artifactUiDownloadData = ResponseParser.parseToObject(heatEnvDownloadResponse.getResponse(), ArtifactUiDownloadData.class); - byte[] fromUiDownload = artifactUiDownloadData.getBase64Contents().getBytes(); - byte[] decodeBase64 = Base64.decodeBase64(fromUiDownload); - Yaml yaml = new Yaml(); - - InputStream inputStream = new ByteArrayInputStream(decodeBase64); - - Map<String, Object> load = (Map<String, Object>) yaml.load(inputStream); - - return load; - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/PlaceHolderValidations.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/PlaceHolderValidations.java deleted file mode 100644 index 63d0221d32..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/PlaceHolderValidations.java +++ /dev/null @@ -1,696 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -//import static org.junit.Assert.assertTrue; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import org.javatuples.Pair; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.cassandra.CassandraUtils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.FileUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.datastax.driver.core.Row; - -import fj.data.Either; - -public class PlaceHolderValidations extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(PlaceHolderValidations.class.getName()); - private static final String heatExtension = "yaml"; - // private static final String yangXmlExtension = "xml"; - // private static final String muranoPkgExtension = "zip"; - private final String folderName = "addHeatArtifactToServiceAndSertify"; - private Resource resource; - private final int timeOut = 60; - private ArtifactReqDetails updateArtifactReqDetails = null; - protected User sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected User sdncDesignerDetails2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - protected ResourceReqDetails resourceDetails1; - protected ResourceReqDetails resourceVF; - protected ResourceReqDetails resourceCP; - protected ResourceReqDetails resourceVL; - - protected ArtifactReqDetails heatArtifactDetails; - protected ArtifactReqDetails heatVolArtifactDetails; - protected ArtifactReqDetails heatNetArtifactDetails; - - public PlaceHolderValidations() { - super(name, PlaceHolderValidations.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - - @BeforeMethod - public void init() throws IOException, Exception { - - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatNetArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_NET.getType()); - heatVolArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_VOL.getType()); - Resource resourceObject = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - resourceDetails1 = new ResourceReqDetails(resourceObject); - resourceObject = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true) - .left().value(); - resourceVF = new ResourceReqDetails(resourceObject); - resourceObject = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.CP, UserRoleEnum.DESIGNER, true) - .left().value(); - resourceCP = new ResourceReqDetails(resourceObject); - resourceObject = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VL, UserRoleEnum.DESIGNER, true) - .left().value(); - resourceVL = new ResourceReqDetails(resourceObject); - } - - @Test - public void validateDeploymentPlaceHoldersByConfig() throws IOException { - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - Resource resourceObject = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceObject.getDeploymentArtifacts(); - assertNotNull("deploymentArtifacts list is null", deploymentArtifacts); - List<String> listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String resDepArtType : listOfResDepArtTypesFromConfig) { - assertNotNull("placeholder of " + resDepArtType + " type doesn't exist", - deploymentArtifacts.get(resDepArtType)); - } - } - - private void validateToscaArtifactsBeforeAndAfterSFT(ResourceReqDetails resourceDetails) - throws IOException, Exception { - RestResponse componentResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails1); - Component component = ResponseParser.convertResourceResponseToJavaObject(componentResponse.getResponse()); - Map<String, ArtifactDefinition> toscaArtifacts = component.getToscaArtifacts(); - for (ArtifactDefinition artifact : toscaArtifacts.values()) { - assertNull(artifact.getEsId()); - } - - componentResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails1, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - component = ResponseParser.convertResourceResponseToJavaObject(componentResponse.getResponse()); - toscaArtifacts = component.getToscaArtifacts(); - - for (ArtifactDefinition artifact : toscaArtifacts.values()) { - assertEquals(artifact.getEsId(), artifact.getUniqueId()); - List<Pair<String, String>> fields = new ArrayList(); - fields.add(new Pair<String, String>("id", artifact.getEsId())); - List<Row> fetchFromTable = CassandraUtils.fetchFromTableQuery("sdcartifact", "resources", fields); - assertTrue(1 == fetchFromTable.size()); - } - } - - @Test - public void validateToscaArtifactsBeforeAndAfterSFT() throws IOException, Exception { - // TODO ADD VF and Service - validateToscaArtifactsBeforeAndAfterSFT(resourceDetails1); - validateToscaArtifactsBeforeAndAfterSFT(resourceCP); - validateToscaArtifactsBeforeAndAfterSFT(resourceVL); - } - - @Test - public void validateToscaPlaceHoldersByConfig() throws IOException, Exception { - List<Component> components = new ArrayList<>(); - RestResponse componentGetResponse = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - components.add(ResponseParser.convertResourceResponseToJavaObject(componentGetResponse.getResponse())); - - componentGetResponse = ResourceRestUtils.getResource(resourceCP, sdncDesignerDetails1); - components.add(ResponseParser.convertResourceResponseToJavaObject(componentGetResponse.getResponse())); - - componentGetResponse = ResourceRestUtils.getResource(resourceVF, sdncDesignerDetails1); - components.add(ResponseParser.convertResourceResponseToJavaObject(componentGetResponse.getResponse())); - - componentGetResponse = ResourceRestUtils.getResource(resourceVL, sdncDesignerDetails1); - components.add(ResponseParser.convertResourceResponseToJavaObject(componentGetResponse.getResponse())); - - Service service = AtomicOperationUtils - .createServiceByCategory(ServiceCategoriesEnum.MOBILITY, UserRoleEnum.DESIGNER, true).left().value(); - componentGetResponse = ServiceRestUtils.getService(service.getUniqueId(), - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - components.add(ResponseParser.parseToObjectUsingMapper(componentGetResponse.getResponse(), Service.class)); - - for (Component component : components) { - Map<String, ArtifactDefinition> toscaArtifacts = component.getToscaArtifacts(); - assertNotNull("toscaArtifacts list is null", toscaArtifacts); - List<String> listOfToscaArtTypesFromConfig = Utils.getListOfToscaArtLabels(true); - assertNotNull("tosca artifact types list is null", listOfToscaArtTypesFromConfig); - for (String toscaArtType : listOfToscaArtTypesFromConfig) { - assertNotNull("placeholder of " + toscaArtType + " type doesn't exist", - toscaArtifacts.get(toscaArtType)); - } - } - - } - - // test check configuration of "displayName" field for "heat" type - // deployment artifact - @Test - public void validateDeploymentPlaceHoldersDescriptionOfHeatByConfig() throws IOException { - - Map<String, Object> mapOfDepResArtTypesObjects = getMapOfDepResArtTypesObjects(); - assertNotNull("deployment artifact types list is null", mapOfDepResArtTypesObjects); - Object object = mapOfDepResArtTypesObjects.get("heat"); - if (object instanceof Map<?, ?>) { - Map<String, Object> map = (Map<String, Object>) object; - assertTrue(map.get("displayName").equals("Base HEAT Template")); - } else { - assertTrue("return object does not instance of map", false); - } - } - - @Test - public void addDepResArtEachType() throws Exception { - - String artType; - - addDeploymentArtifactByTypeToResource(resourceDetails1, heatArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatVolArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatNetArtifactDetails); - RestResponse response = ResourceRestUtils.getResource(resourceDetails1.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - List<String> listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String iter : listOfResDepArtTypesFromConfig) { - artType = iter; - verifyDepArtPlaceHoldersByType(artType); - } - } - - @Test - public void checkHeatParametersExistingForEachType() throws Exception { - - String artType; - - addDeploymentArtifactByTypeToResource(resourceDetails1, heatArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatVolArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatNetArtifactDetails); - RestResponse response = ResourceRestUtils.getResource(resourceDetails1.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - List<String> listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String iter : listOfResDepArtTypesFromConfig) { - artType = iter; - verifyDepArtPlaceHoldersByType(artType); - verifyHeatParametersExistance(artType, false); - } - } - - @Test - public void checkHeatParametersExistingForSpecificType() throws Exception { - - String artType; - - addDeploymentArtifactByTypeToResource(resourceDetails1, heatVolArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatNetArtifactDetails); - RestResponse response = ResourceRestUtils.getResource(resourceDetails1.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - List<String> listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String iter : listOfResDepArtTypesFromConfig) { - artType = iter; - if (heatArtifactDetails.getArtifactLabel().equals(iter)) { - verifyHeatParametersExistance(artType, true); - } else { - verifyHeatParametersExistance(artType, false); - } - } - } - - @Test - public void addAndDeleteDepResArtEachType() throws Exception { - - String artType; - - addDeploymentArtifactByTypeToResource(resourceDetails1, heatArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatVolArtifactDetails); - addDeploymentArtifactByTypeToResource(resourceDetails1, heatNetArtifactDetails); - RestResponse response = ResourceRestUtils.getResource(resourceDetails1.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - List<String> listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String iter : listOfResDepArtTypesFromConfig) { - artType = iter; - verifyDepArtPlaceHoldersByType(artType); - } - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, - sdncDesignerDetails1, LifeCycleStatesEnum.CHECKIN); - assertTrue("expected response code in CHECKIN 200", restResponseResource.getErrorCode() == 200); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, sdncDesignerDetails1, - LifeCycleStatesEnum.CHECKOUT); - assertTrue("expected response code in CHECKOUT 200", restResponseResource.getErrorCode() == 200); - - // delete all deployment artifacts - deleteDeploymentArtifactByTypeToResource(resourceDetails1, heatArtifactDetails); - deleteDeploymentArtifactByTypeToResource(resourceDetails1, heatVolArtifactDetails); - deleteDeploymentArtifactByTypeToResource(resourceDetails1, heatNetArtifactDetails); - response = ResourceRestUtils.getResource(resourceDetails1.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - listOfResDepArtTypesFromConfig = Utils.getListOfDepResArtLabels(true); - assertNotNull("deployment artifact types list is null", listOfResDepArtTypesFromConfig); - for (String iter : listOfResDepArtTypesFromConfig) { - artType = iter; - verifyDepArtPlaceHoldersByType(artType); - } - } - - @Test - public void addRemoveAddAgainArtifact() throws Exception { - - // get MAP before upload artifact - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - - ArtifactDefinition artifactDefinition = deploymentArtifacts.get("heat"); - - // validate place holder exist - assertNotNull(artifactDefinition); - - // add artifact - updateArtifactReqDetails = getUpdateArtifactDetails(ArtifactTypeEnum.HEAT.getType()); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - updateArtifactReqDetails, sdncDesignerDetails1, resourceDetails1.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - ArtifactDefinition artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef1 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - - // remove artifact - RestResponse deleteArtifactFromResource = ArtifactRestUtils.deleteInformationalArtifactFromResource( - resourceDetails1.getUniqueId(), updateArtifactReqDetails, sdncDesignerDetails1); - logger.debug( - "addInformationalArtifactToResource response: " + deleteArtifactFromResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + deleteArtifactFromResource.getErrorCode(), - deleteArtifactFromResource.getErrorCode() == 200); - - RestResponse getResourceResp = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - - artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(deleteArtifactFromResource.getResponse()); - assertTrue(artifactDefinitionResponseJavaObject.getArtifactName().isEmpty()); - assertTrue(artifactDefinitionResponseJavaObject.getDescription().isEmpty()); - assertTrue(artifactDefinitionResponseJavaObject.getArtifactChecksum().isEmpty()); - assertTrue(artifactDefinitionResponseJavaObject.getEsId().isEmpty()); - assertTrue(artifactDefinitionResponseJavaObject.getArtifactUUID().isEmpty()); - assertNull(artifactDefinitionResponseJavaObject.getHeatParameters()); - - // add artifact again with different user - addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails1, resourceDetails1.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef2 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - - assertFalse("check artifact checksum", artDef1.getArtifactChecksum().equals(artDef2.getArtifactChecksum())); - assertTrue("check artifact EsId", artDef1.getEsId().equals(artDef2.getEsId())); - assertFalse("check artifact UUID", artDef1.getArtifactUUID().equals(artDef2.getArtifactUUID())); - assertTrue("check UserIdCreator", artDef1.getUserIdCreator().equals(artDef2.getUserIdCreator())); - assertTrue("check UserIdLastUpdater", artDef1.getUserIdLastUpdater().equals(artDef2.getUserIdLastUpdater())); - } - - @Test - public void addUpdateArtifactByType() throws Exception { - - // get MAP before upload artifact - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - - ArtifactDefinition artifactDefinition = deploymentArtifacts.get("heat"); - - // validate place holder exist - assertNotNull(artifactDefinition); - - // add artifact - updateArtifactReqDetails = getUpdateArtifactDetails(ArtifactTypeEnum.HEAT.getType()); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - updateArtifactReqDetails, sdncDesignerDetails1, resourceDetails1.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - ArtifactDefinition artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef1 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, - sdncDesignerDetails1, LifeCycleStatesEnum.CHECKIN); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, sdncDesignerDetails2, - LifeCycleStatesEnum.CHECKOUT); - - // update with different user artifact - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setUniqueId(artifactDefinition.getUniqueId()); - heatArtifactDetails.setArtifactName("2.yaml"); - heatArtifactDetails.setArtifactLabel(artifactDefinition.getArtifactLabel()); - - addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails2, resourceDetails1.getUniqueId(), "heat"); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef2 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - verifyArtDefFields(artDef1, artDef2); - - } - - @Test - public void addUpdateDeleteArtifact() throws Exception { - - // get MAP before upload artifact - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails1, sdncDesignerDetails1); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - - ArtifactDefinition artifactDefinition = deploymentArtifacts.get("heat"); - - // validate place holder exist - assertNotNull(artifactDefinition); - - updateArtifactReqDetails = getUpdateArtifactDetails(ArtifactTypeEnum.HEAT.getType()); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - updateArtifactReqDetails, sdncDesignerDetails1, resourceDetails1.getUniqueId()); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - ArtifactDefinition artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef1 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, - sdncDesignerDetails1, LifeCycleStatesEnum.CHECKIN); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails1, sdncDesignerDetails2, - LifeCycleStatesEnum.CHECKOUT); - - // update with different user artifact - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setArtifactName("2.yaml"); - - addInformationalArtifactToResource = ArtifactRestUtils.updateInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails2, resourceDetails1.getUniqueId(), "heat"); - logger.debug("addInformationalArtifactToResource response: " - + addInformationalArtifactToResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 200); - - artifactDefinitionResponseJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addInformationalArtifactToResource.getResponse()); - ArtifactDefinition artDef2 = fillArtDefFromResponse(artifactDefinitionResponseJavaObject); - - verifyArtDefFields(artDef1, artDef2); - - RestResponse delteArtifactFromResource = ArtifactRestUtils.deleteInformationalArtifactFromResource( - resourceDetails1.getUniqueId(), heatArtifactDetails, sdncDesignerDetails2); - logger.debug("addInformationalArtifactToResource response: {} ",delteArtifactFromResource.getResponseMessage()); - assertTrue("response code is not 200, returned :" + delteArtifactFromResource.getErrorCode(), - delteArtifactFromResource.getErrorCode() == 200); - - } - - @Test - public void addHeatVolArtInvalidExtension() throws Exception { - - heatVolArtifactDetails.setArtifactName("heatVol.txt"); - RestResponse response = getResponseOnAddDeploymentArtifactByTypeToResource(resourceDetails1, - heatVolArtifactDetails); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name()); - assertEquals("Check response code after upload artifact", errorInfo.getCode(), response.getErrorCode()); - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT_VOL.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name(), variables, - response.getResponse()); - } - - @Test - public void addHeatNetArtInvalidExtension() throws Exception { - - heatNetArtifactDetails.setArtifactName("yaml"); - RestResponse response = getResponseOnAddDeploymentArtifactByTypeToResource(resourceDetails1, - heatNetArtifactDetails); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name()); - assertEquals("Check response code after upload artifact", errorInfo.getCode(), response.getErrorCode()); - List<String> variables = Arrays.asList(ArtifactTypeEnum.HEAT_NET.getType()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.WRONG_ARTIFACT_FILE_EXTENSION.name(), variables, - response.getResponse()); - } - - @Test - public void checkServiceSecurityTemplateInformationalArtifactsCreation() throws IOException, Exception { - - Either<Service, RestResponse> createServiceResponse = AtomicOperationUtils - .createServiceByCategory(ServiceCategoriesEnum.MOBILITY, UserRoleEnum.DESIGNER, true); - Map<String, ArtifactDefinition> artifacts = null; - ArtifactDefinition securitytemplate = null; - if (createServiceResponse.isLeft()) { - Component component = createServiceResponse.left().value(); - artifacts = component.getArtifacts(); - securitytemplate = artifacts.get("servicesecuritytemplate"); - assertNotNull(securitytemplate); - assertEquals("Service Security Template", securitytemplate.getArtifactDisplayName()); - } else { - logger.debug("checkSecurityTemplateInformationalArtifactsCreation service creation response: " - + createServiceResponse.right().value().getResponseMessage()); - } - } - - @Test - public void checkResourceSecurityTemplateInformationalArtifactsCreation() throws IOException, Exception { - - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.CONTAINER_APPLICATION, ResourceCategoryEnum.APPLICATION_L4_BORDER, - UserRoleEnum.DESIGNER, true).left().value(); - Map<String, ArtifactDefinition> artifacts = resource.getArtifacts(); - ArtifactDefinition securitytemplate = artifacts.get("resourcesecuritytemplate"); - assertNotNull(securitytemplate); - assertEquals("Resource Security Template", securitytemplate.getArtifactDisplayName()); - } - - // Benny - @Test - public void serviceSecurityTemplateInformationalArtifact() throws IOException, Exception { - String artifactPlaceHolder = "servicesecuritytemplate"; - Service service = AtomicOperationUtils - .createServiceByCategory(ServiceCategoriesEnum.MOBILITY, UserRoleEnum.DESIGNER, true).left().value(); - Map<String, ArtifactDefinition> artifacts = service.getArtifacts(); - ArtifactDefinition securitytemplate = artifacts.get(artifactPlaceHolder); - assertNotNull(securitytemplate); - assertEquals("Service Security Template", securitytemplate.getArtifactDisplayName()); - assertEquals("OTHER", securitytemplate.getArtifactType()); - assertEquals(artifactPlaceHolder, securitytemplate.getArtifactLabel()); - // Get service - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId(), - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, getService.getErrorCode().intValue()); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - artifacts = service.getArtifacts(); - securitytemplate = artifacts.get(artifactPlaceHolder); - assertNotNull(securitytemplate); - assertEquals("Service Security Template", securitytemplate.getArtifactDisplayName()); - assertEquals("OTHER", securitytemplate.getArtifactType()); - assertEquals(artifactPlaceHolder, securitytemplate.getArtifactLabel()); - } - - @Test - public void resourceSecurityTemplateInformationalArtifacts() throws IOException, Exception { - String artifactPlaceHolder = "resourcesecuritytemplate"; - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.CONTAINER_APPLICATION, ResourceCategoryEnum.APPLICATION_L4_BORDER, - UserRoleEnum.DESIGNER, true).left().value(); - Map<String, ArtifactDefinition> artifacts = resource.getArtifacts(); - ArtifactDefinition securitytemplate = artifacts.get("resourcesecuritytemplate"); - assertNotNull(securitytemplate); - assertEquals("Resource Security Template", securitytemplate.getArtifactDisplayName()); - assertEquals("OTHER", securitytemplate.getArtifactType()); - assertEquals(artifactPlaceHolder, securitytemplate.getArtifactLabel()); - // Get resource - RestResponse getresource = ResourceRestUtils.getResource(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - resource.getUniqueId()); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, getresource.getErrorCode().intValue()); - resource = ResponseParser.parseToObjectUsingMapper(getresource.getResponse(), Resource.class); - artifacts = resource.getArtifacts(); - securitytemplate = artifacts.get(artifactPlaceHolder); - assertNotNull(securitytemplate); - assertEquals("Resource Security Template", securitytemplate.getArtifactDisplayName()); - assertEquals("OTHER", securitytemplate.getArtifactType()); - assertEquals(artifactPlaceHolder, securitytemplate.getArtifactLabel()); - } - - // ================================================ - - @SuppressWarnings("unchecked") - private Map<String, Object> getMapOfDepResArtTypesObjects() throws FileNotFoundException { - - return (Map<String, Object>) Utils.parseYamlConfig("deploymentResourceArtifacts"); - - } - - private void addDeploymentArtifactByTypeToResource(ResourceReqDetails resourceReqDetails, - ArtifactReqDetails artReqDetails) throws IOException, Exception { - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(artReqDetails, - sdncDesignerDetails1, resourceReqDetails.getUniqueId()); - assertTrue("add" + artReqDetails.getArtifactLabel() + " artifact to resource request returned status:" - + response.getErrorCode(), response.getErrorCode() == 200); - } - - private RestResponse getResponseOnAddDeploymentArtifactByTypeToResource(ResourceReqDetails resourceReqDetails, - ArtifactReqDetails artReqDetails) throws IOException, Exception { - - return ArtifactRestUtils.addInformationalArtifactToResource(artReqDetails, sdncDesignerDetails1, - resourceReqDetails.getUniqueId()); - } - - private void deleteDeploymentArtifactByTypeToResource(ResourceReqDetails resourceReqDetails, - ArtifactReqDetails artReqDetails) throws IOException, Exception { - - RestResponse response = ArtifactRestUtils.deleteInformationalArtifactFromResource( - resourceReqDetails.getUniqueId(), artReqDetails, sdncDesignerDetails1); - assertTrue("delete" + artReqDetails.getArtifactLabel() + " artifact to resource request returned status:" - + response.getErrorCode(), response.getErrorCode() == 200); - } - - private void verifyDepArtPlaceHoldersByType(String artType) { - - Map<String, ArtifactDefinition> deploymentArtifacts = resource.getDeploymentArtifacts(); - assertNotNull("deployment artifact data is null", deploymentArtifacts.get(artType)); - assertNotNull("deployment artifact data is null", deploymentArtifacts.get(artType).getEsId()); - assertNotNull("deployment artifact data is null", deploymentArtifacts.get(artType).getDescription()); - assertTrue( - "deployment artifact timeout does not equal to default value " + timeOut + " expected " + timeOut - + ", actual - " + deploymentArtifacts.get(artType).getTimeout(), - deploymentArtifacts.get(artType).getTimeout() == timeOut); - assertTrue("deployment artifact label value ", - deploymentArtifacts.get(artType).getArtifactLabel().equals(artType)); - } - - private void verifyHeatParametersExistance(String artType, Boolean isNull) { - Map<String, ArtifactDefinition> deploymentArtifacts = resource.getDeploymentArtifacts(); - if (isNull) { - assertNull("heatParameters list for type " + artType + " is not null", - deploymentArtifacts.get(artType).getHeatParameters()); - } else { - assertNotNull("heatParameters list for type " + artType + " is null", - deploymentArtifacts.get(artType).getHeatParameters()); - } - } - - private void verifyArtDefFields(ArtifactDefinition artDef1, ArtifactDefinition artDef2) { - - assertFalse("check artifact checksum", artDef1.getArtifactChecksum().equals(artDef2.getArtifactChecksum())); - assertFalse("check artifact EsId", artDef1.getEsId().equals(artDef2.getEsId())); - assertFalse("check artifact UUID", artDef1.getArtifactUUID().equals(artDef2.getArtifactUUID())); - assertTrue("check UserIdCreator", artDef1.getUserIdCreator().equals(artDef2.getUserIdCreator())); - assertFalse("check UserIdLastUpdater", artDef1.getUserIdLastUpdater().equals(artDef2.getUserIdLastUpdater())); - - } - - private ArtifactDefinition fillArtDefFromResponse(ArtifactDefinition artifactDefinitionResponseJavaObject) { - ArtifactDefinition artDef = new ArtifactDefinition(); - artDef.setArtifactChecksum(artifactDefinitionResponseJavaObject.getArtifactChecksum()); - artDef.setEsId(artifactDefinitionResponseJavaObject.getEsId()); - artDef.setArtifactUUID(artifactDefinitionResponseJavaObject.getArtifactUUID()); - artDef.setUserIdCreator(artifactDefinitionResponseJavaObject.getUserIdCreator()); - artDef.setUserIdLastUpdater(artifactDefinitionResponseJavaObject.getUserIdLastUpdater()); - return artDef; - } - - private ArtifactReqDetails getUpdateArtifactDetails(String artType) throws IOException, Exception { - String ext = heatExtension; - String sourceDir = config.getResourceConfigDir(); - String testResourcesPath = sourceDir + File.separator + folderName; - List<String> listFileName = FileUtils.getFileListFromBaseDirectoryByTestName(testResourcesPath); - logger.debug("listFileName: {}",listFileName.toString()); - - String payload = FileUtils.loadPayloadFile(listFileName, ext, true); - ArtifactReqDetails updateArtifactReqDetails = ElementFactory.getDefaultDeploymentArtifactForType(artType); - updateArtifactReqDetails.setPayload(payload); - updateArtifactReqDetails.setArtifactName("1.yaml"); - return updateArtifactReqDetails; - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateArtResponse.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateArtResponse.java deleted file mode 100644 index 4c50932709..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateArtResponse.java +++ /dev/null @@ -1,631 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.HeatParameterDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Decoder; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; -import org.yaml.snakeyaml.Yaml; - -public class ValidateArtResponse extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - protected String serviceVersion; - - public ValidateArtResponse() { - super(name, ArtifactServletTest.class.getName()); - - } - - protected final String pathToFile = "heatArtifactParameters"; - protected final String heatWithValidParams = "heatWithValidParams.yaml"; - protected final String heatWithParamsMissingDefault = "heatWithParamsMissingDefault.yaml"; - protected final String heatWithParamsMissingDesc = "heatWithParamsMissingDesc.yaml"; - protected final String heatWithParamsMissingType = "heatWithParamsMissingType.yaml"; - protected final String importNoDerivedFromFile = "myComputeDerivedFromNotExists.yml"; - protected final String decodedPayload = "decodedPayload"; - protected final String encodedPayload = "encodedPayload"; - - protected Resource resourceDetailsObj; - protected ResourceReqDetails resourceDetails; - protected User sdncDesignerDetails; - - @BeforeMethod - public void init() throws Exception { - - resourceDetailsObj = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - resourceDetails = new ResourceReqDetails(resourceDetailsObj); - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - } - - @Test - public void compareParamtersVsYaml() throws Exception { - - // select file to upload - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithValidParams); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - protected void assertnull(String string, boolean equals) { - // TODO Auto-generated method stub - - } - - public Map<String, String> extractSingleParameter(Map<String, String> curr) { - Map<String, String> innerMap = new HashMap<String, String>(); - if (curr.containsKey("description")) { - innerMap.put("description", curr.get("description")); - } - - if (curr.containsKey("defaultValue")) { - innerMap.put("default", curr.get("defaultValue")); - } else { - // System.out.println("kuku"); - } - innerMap.put("type", curr.get("type")); - return innerMap; - } - - public Map<String, Map> createMapFromYaml(String payload) { - ArrayList<String> parametersList = new ArrayList<String>(); - - Yaml yaml = new Yaml(); - - Map<String, Map> result = (Map<String, Map>) yaml.load(payload); - Map<String, Map> paramters = (Map<String, Map>) result.get("parameters"); - - for (Map.Entry<String, Map> entry : paramters.entrySet()) { - Map<String, String> origInnerMap = (Map<String, String>) entry.getValue(); - - if (origInnerMap.containsKey("label")) { - origInnerMap.remove("label"); - paramters.remove(entry); - paramters.put(entry.getKey(), origInnerMap); - } - } - return paramters; - } - - public Map<String, Map<String, String>> jsonToMap(RestResponse addInformationalArtifactToResource, - String section2extract, String createKeyMapBy) { - Map<String, Object> JsonToMap = new HashMap<String, Object>(); - JsonToMap = (Map<String, Object>) ResponseParser.parseToObject(addInformationalArtifactToResource.getResponse(), - JsonToMap.getClass()); - - List<Map<String, String>> listOfParamters = (List<Map<String, String>>) JsonToMap.get(section2extract); - Map<String, Map<String, String>> mapOfActualParameters = new HashMap<String, Map<String, String>>(); - - for (Map<String, String> curr : listOfParamters) { - Map<String, String> innerMap = extractSingleParameter(curr); - - mapOfActualParameters.put(curr.get(createKeyMapBy), innerMap); - } - return mapOfActualParameters; - } - - public Map<String, String> selectFileToUpload(String pathToFile, String fileName) throws IOException { - String sourceDir = config.getResourceConfigDir(); - String testResourcesPath = sourceDir + File.separator + pathToFile; - String file = fileName; - Map<String, String> filePayload = new HashMap<String, String>(); - String payload = Decoder.readFileToString(testResourcesPath + File.separator + file); - filePayload.put(decodedPayload, payload); - filePayload.put(encodedPayload, Decoder.encode(payload.getBytes())); - - return filePayload; - } - - @Test - public void missingDescParam() throws Exception { - - // select file to upload - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithParamsMissingDesc); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void missingDefaultParam() throws Exception { - - // select file to upload - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithParamsMissingDefault); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void missingTypeParam() throws Exception { - - // select file to upload - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithParamsMissingType); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // System.out.println(addInformationalArtifactToResource); - AssertJUnit.assertTrue( - "response code is not 400, returned :" + addInformationalArtifactToResource.getErrorCode(), - addInformationalArtifactToResource.getErrorCode() == 400); - - } - - @Test - public void updateValueParam() throws Exception { - - String updateValueParam = "changed"; - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithValidParams); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - // System.out.println(resourceGetResponse.getResponse().toString()); - String atifactUniqueId = ResponseParser - .getValueFromJsonResponse(addInformationalArtifactToResource.getResponse(), "uniqueId"); - - ArtifactReqDetails artifacJavaObject = ResponseParser - .convertArtifactReqDetailsToJavaObject(addInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters2 = artifacJavaObject.getHeatParameters(); - - for (HeatParameterDefinition heatParameterDefinition : heatParameters2) { - heatParameterDefinition.setCurrentValue(updateValueParam); - } - artifacJavaObject.setHeatParameters(heatParameters2); - artifacJavaObject.setPayloadData(null); - - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateDeploymentArtifactToResource( - artifacJavaObject, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // verify change in update response - - ArtifactDefinition ArtifactDefinitionRespJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(updateInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters = ArtifactDefinitionRespJavaObject.getListHeatParameters(); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // verify change in getResource - - resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - deploymentArtifacts.get(heatArtifactDetails.getArtifactName()); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void updateValueParamMissingDefault() throws Exception { - - String updateValueParam = "changed"; - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithParamsMissingDefault); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - // System.out.println(resourceGetResponse.getResponse().toString()); - String atifactUniqueId = ResponseParser - .getValueFromJsonResponse(addInformationalArtifactToResource.getResponse(), "uniqueId"); - - ArtifactReqDetails artifacJavaObject = ResponseParser - .convertArtifactReqDetailsToJavaObject(addInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters2 = artifacJavaObject.getHeatParameters(); - - for (HeatParameterDefinition heatParameterDefinition : heatParameters2) { - heatParameterDefinition.setCurrentValue(updateValueParam); - } - artifacJavaObject.setHeatParameters(heatParameters2); - artifacJavaObject.setPayloadData(null); - - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateDeploymentArtifactToResource( - artifacJavaObject, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // verify change in update response - - ArtifactDefinition ArtifactDefinitionRespJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(updateInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters = ArtifactDefinitionRespJavaObject.getListHeatParameters(); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // verify change in getResource - - resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - deploymentArtifacts.get(heatArtifactDetails.getArtifactName()); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void updateValueParamNull() throws Exception { - - String updateValueParam = null; - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithValidParams); - - // upload HEAT file and save JSON response - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - // System.out.println(resourceGetResponse.getResponse().toString()); - String atifactUniqueId = ResponseParser - .getValueFromJsonResponse(addInformationalArtifactToResource.getResponse(), "uniqueId"); - - ArtifactReqDetails artifacJavaObject = ResponseParser - .convertArtifactReqDetailsToJavaObject(addInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters2 = artifacJavaObject.getHeatParameters(); - - for (HeatParameterDefinition heatParameterDefinition : heatParameters2) { - heatParameterDefinition.setCurrentValue(updateValueParam); - } - artifacJavaObject.setHeatParameters(heatParameters2); - artifacJavaObject.setPayloadData(null); - - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateDeploymentArtifactToResource( - artifacJavaObject, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // verify change in update response - ArtifactDefinition ArtifactDefinitionRespJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(updateInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters = ArtifactDefinitionRespJavaObject.getListHeatParameters(); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - // String verify = updateValueParam; - if (heatParameterDefinition.getDefaultValue() != null) { - AssertJUnit.assertTrue( - heatParameterDefinition.getDefaultValue().equals(heatParameterDefinition.getCurrentValue())); - } else { - AssertJUnit.assertNull("verification failed", heatParameterDefinition.getCurrentValue()); - } - } - - // verify change in getResource - resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - deploymentArtifacts.get(heatArtifactDetails.getArtifactName()); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - // String verify = updateValueParam; - if (heatParameterDefinition.getDefaultValue() != null) { - AssertJUnit.assertTrue( - heatParameterDefinition.getDefaultValue().equals(heatParameterDefinition.getCurrentValue())); - } else { - AssertJUnit.assertNull("verification failed", heatParameterDefinition.getCurrentValue()); - } - } - - // create MAP from received JSON - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void updateValueParamEmpty() throws Exception { - - String updateValueParam = ""; - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithValidParams); - - // upload HEAT file and save JSON response - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - // System.out.println(resourceGetResponse.getResponse().toString()); - String atifactUniqueId = ResponseParser - .getValueFromJsonResponse(addInformationalArtifactToResource.getResponse(), "uniqueId"); - - ArtifactReqDetails artifacJavaObject = ResponseParser - .convertArtifactReqDetailsToJavaObject(addInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters2 = artifacJavaObject.getHeatParameters(); - - for (HeatParameterDefinition heatParameterDefinition : heatParameters2) { - heatParameterDefinition.setCurrentValue(updateValueParam); - } - artifacJavaObject.setHeatParameters(heatParameters2); - artifacJavaObject.setPayloadData(null); - - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateDeploymentArtifactToResource( - artifacJavaObject, sdncDesignerDetails, resourceDetails.getUniqueId()); - - // verify change in update response - - ArtifactDefinition ArtifactDefinitionRespJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(updateInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters = ArtifactDefinitionRespJavaObject.getListHeatParameters(); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // verify change in getResource - - resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, ArtifactDefinition> deploymentArtifacts = resourceRespJavaObject.getDeploymentArtifacts(); - deploymentArtifacts.get(heatArtifactDetails.getArtifactName()); - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - String verify = updateValueParam; - AssertJUnit.assertTrue("verification failed", verify.equals(heatParameterDefinition.getCurrentValue())); - } - - // create MAP from received JSON - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - - @Test - public void onlyValueParamPermited() throws Exception { - - Map<String, String> filePayload = selectFileToUpload(pathToFile, heatWithValidParams); - - // upload HEAT file and save JSON response - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatArtifactDetails.setPayload(filePayload.get(encodedPayload)); - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails, resourceDetails.getUniqueId()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - // System.out.println(resourceGetResponse.getResponse().toString()); - String atifactUniqueId = ResponseParser - .getValueFromJsonResponse(addInformationalArtifactToResource.getResponse(), "uniqueId"); - - ArtifactReqDetails artifacJavaObject = ResponseParser - .convertArtifactReqDetailsToJavaObject(addInformationalArtifactToResource.getResponse()); - List<HeatParameterDefinition> heatParameters2 = artifacJavaObject.getHeatParameters(); - - for (HeatParameterDefinition heatParameterDefinition : heatParameters2) { - heatParameterDefinition.setDefaultValue("changed"); - heatParameterDefinition.setName("changed"); - heatParameterDefinition.setDescription("changed"); - heatParameterDefinition.setType("changed"); - heatParameterDefinition.setCurrentValue("changed"); - } - artifacJavaObject.setHeatParameters(heatParameters2); - artifacJavaObject.setPayloadData(null); - - RestResponse updateInformationalArtifactToResource = ArtifactRestUtils.updateDeploymentArtifactToResource( - artifacJavaObject, sdncDesignerDetails, resourceDetails.getUniqueId()); - - resourceGetResponse = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails); - - // create MAP from received JSON - - String section2extract = "heatParameters"; - String createKeyMapBy = "name"; - Map<String, Map<String, String>> mapOfActualParameters = jsonToMap(addInformationalArtifactToResource, - section2extract, createKeyMapBy); - - // Prepare map to validate JS - - Map<String, Map> paramters = createMapFromYaml(filePayload.get(decodedPayload)); - - // compare MAPs - - ResourceValidationUtils.compareElements(mapOfActualParameters, paramters); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateHeatArtFieldsTypes.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateHeatArtFieldsTypes.java deleted file mode 100644 index a00fceba49..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/artifacts/ValidateHeatArtFieldsTypes.java +++ /dev/null @@ -1,176 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.artifacts; - -import java.util.Arrays; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.HeatParameterDefinition; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.RespJsonKeysEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ArtifactValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - -public class ValidateHeatArtFieldsTypes extends ComponentBaseTest { - - protected User sdncDesignerDetails; - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - - private static final String heatExtension = "yaml"; - private static final String yangXmlExtension = "xml"; - private static final String muranoPkgExtension = "zip"; - private final String folderName = "yamlFieldsValidation"; - - private final String uuidString = RespJsonKeysEnum.UUID.getRespJsonKeyName().toString(); - - public ValidateHeatArtFieldsTypes() { - super(name, ValidateHeatArtFieldsTypes.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - - @Test - public void validateHeatArtFiledTypes() throws Exception { - - // get relevant resource and service - - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - resourceDetails = ElementFactory.getDefaultResource(); - - RestResponse response = ResourceRestUtils.createResource(resourceDetails, sdncDesignerDetails); - AssertJUnit.assertTrue("create request returned status:" + response.getErrorCode(), - response.getErrorCode() == 201); - - // add artifact to resource1 - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - List<String> listOfArtifactFromFolder = ArtifactValidationUtils.getListOfArtifactFromFolder(folderName); - for (int i = 0; i < listOfArtifactFromFolder.size(); i++) { - heatArtifactDetails = ArtifactValidationUtils.replaceDefaultArtWithArtFromList(heatArtifactDetails, - heatExtension, folderName, i); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, - resourceDetails.getUniqueId()); - - if (heatArtifactDetails.getArtifactName().contains("bool")) { - if (heatArtifactDetails.getArtifactName().contains("negative")) { - // validate negative response - List<String> variables = Arrays.asList("HEAT", "boolean", "city_name"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_HEAT_PARAMETER_VALUE.name(), - variables, response.getResponse()); - } - if (heatArtifactDetails.getArtifactName().contains("positive")) { - AssertJUnit.assertTrue( - "add HEAT artifact to resource request returned status:" + response.getErrorCode() - + " fileName: " + heatArtifactDetails.getArtifactName(), - response.getErrorCode() == 200); - ArtifactDefinition artifactDefinitionJavaObject = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(response.getResponse()); - List<HeatParameterDefinition> heatParameters = artifactDefinitionJavaObject.getListHeatParameters(); - String currentValue = null; - for (HeatParameterDefinition heatParameterDefinition : heatParameters) { - if (heatParameterDefinition.getName().equals("city_name")) { - currentValue = heatParameterDefinition.getCurrentValue(); - } - } - if (heatArtifactDetails.getArtifactName().contains("true")) { - AssertJUnit.assertTrue(currentValue.equals("true")); - } - if (heatArtifactDetails.getArtifactName().contains("false")) { - AssertJUnit.assertTrue(currentValue.equals("false")); - } - RestResponse deleteInformationalArtifactFromResource = ArtifactRestUtils - .deleteInformationalArtifactFromResource(resourceDetails.getUniqueId(), heatArtifactDetails, - sdncDesignerDetails); - AssertJUnit.assertTrue( - "delete HEAT artifact from resource request returned status:" - + deleteInformationalArtifactFromResource.getErrorCode(), - deleteInformationalArtifactFromResource.getErrorCode() == 200); - } - - } else if (heatArtifactDetails.getArtifactName().contains("number")) { - if (heatArtifactDetails.getArtifactName().contains("negative")) { - // validate negative response - List<String> variables = Arrays.asList("HEAT", "number", "city_name"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_HEAT_PARAMETER_VALUE.name(), - variables, response.getResponse()); - } - if (heatArtifactDetails.getArtifactName().contains("positive")) { - AssertJUnit.assertTrue( - "add HEAT artifact to resource request returned status:" + response.getErrorCode() - + " fileName: " + heatArtifactDetails.getArtifactName(), - response.getErrorCode() == 200); - } - - } else if (heatArtifactDetails.getArtifactName().contains("string")) { - if (heatArtifactDetails.getArtifactName().contains("negative")) { - // validate negative response - List<String> variables = Arrays.asList("HEAT", "string", "city_name"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_HEAT_PARAMETER_VALUE.name(), - variables, response.getResponse()); - } - if (heatArtifactDetails.getArtifactName().contains("positive")) { - AssertJUnit.assertTrue( - "add HEAT artifact to resource request returned status:" + response.getErrorCode() - + " fileName: " + heatArtifactDetails.getArtifactName(), - response.getErrorCode() == 200); - } - - } - - else if (heatArtifactDetails.getArtifactName().contains("unsupported")) { - - // validate negative response - List<String> variables = Arrays.asList("HEAT", "number123"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_HEAT_PARAMETER_TYPE.name(), - variables, response.getResponse()); - - } - - else { - AssertJUnit.assertTrue( - "add HEAT artifact to resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - } - } - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/attribute/ComponentInstanceAttributeTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/attribute/ComponentInstanceAttributeTest.java deleted file mode 100644 index b1d04ba88d..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/attribute/ComponentInstanceAttributeTest.java +++ /dev/null @@ -1,94 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.attribute; - -import static org.junit.Assert.assertEquals; -import static org.openecomp.sdc.common.datastructure.FunctionalInterfaces.swallowException; - -import java.io.File; -import java.util.function.Function; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; - -public class ComponentInstanceAttributeTest extends ComponentBaseTest { - - public static Gson gson = new GsonBuilder().setPrettyPrinting().create(); - - @Rule - public static TestName name = new TestName(); - - public ComponentInstanceAttributeTest() { - super(name, ComponentInstanceAttributeTest.class.getName()); - } - - @Test - public void testUpdateAttributeOnResourceInstance() { - // Prepare VF with vfc instance with Attributes - String testResourcesPath = config.getResourceConfigDir() + File.separator + "importToscaResourceByCreateUrl"; - final Resource vfcWithAttributes = AtomicOperationUtils - .importResource(testResourcesPath, "CPWithAttributes.yml").left().value(); - swallowException(() -> AtomicOperationUtils.changeComponentState(vfcWithAttributes, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CHECKIN, false)); - Resource vf = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, false) - .left().value(); - ComponentInstance vfcInstance = AtomicOperationUtils - .addComponentInstanceToComponentContainer(vfcWithAttributes, vf).left().value(); - - // util method to get the specific attribute from the vf - Function<Resource, ComponentInstanceProperty> attributeGetter = resourceVf -> resourceVf - .getComponentInstancesAttributes().values().iterator().next().stream() - .filter(att -> att.getName().equals("private_address")).findAny().get(); - // update attribute on vfc instance - final Resource vfWithInsatncePreUpdate = swallowException( - () -> (Resource) AtomicOperationUtils.getCompoenntObject(vf, UserRoleEnum.DESIGNER)); - ComponentInstanceProperty attributeOfRI = attributeGetter.apply(vfWithInsatncePreUpdate); - final String newAttValue = "NewValue"; - attributeOfRI.setValue(newAttValue); - String body = gson.toJson(attributeOfRI); - String url = String.format(Urls.UPDATE_ATTRIBUTE_ON_RESOURCE_INSTANCE, config.getCatalogBeHost(), - config.getCatalogBePort(), ComponentTypeEnum.findParamByType(ComponentTypeEnum.RESOURCE), - vf.getUniqueId(), vfcInstance.getUniqueId()); - swallowException(() -> BaseRestUtils.sendPost(url, body, UserRoleEnum.DESIGNER.getUserId(), - BaseRestUtils.acceptHeaderData)); - // Retrieve updated vf and verify attribute was updated - final Resource vfWithInsatncePostUpdate = swallowException( - () -> (Resource) AtomicOperationUtils.getCompoenntObject(vf, UserRoleEnum.DESIGNER)); - ComponentInstanceProperty updatedAttribute = attributeGetter.apply(vfWithInsatncePostUpdate); - assertEquals(updatedAttribute.getValue(), newAttValue); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CatalogDataApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CatalogDataApiTest.java deleted file mode 100644 index 11c80d4a61..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CatalogDataApiTest.java +++ /dev/null @@ -1,301 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.OriginTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterClass; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class CatalogDataApiTest extends ComponentBaseTest { - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - protected boolean isInitialized = false; - - @Rule - public static TestName name = new TestName(); - protected User user; - protected RestResponse res1; - protected RestResponse res2; - protected RestResponse svc1; - protected ResourceReqDetails resourceDetails1; - protected ResourceReqDetails resourceDetails2; - protected ServiceReqDetails svcDetails1; - - public CatalogDataApiTest() { - super(name, CatalogDataApiTest.class.getName()); - } - - @BeforeMethod - public void setUp() throws Exception { - if (isInitialized) - return; - user = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - resourceDetails1 = buildResourceDetails(user, "TestResource1"); - resourceDetails1.setResourceType(ResourceTypeEnum.VFCMT.name()); - resourceDetails2 = buildResourceDetails(user, "TestResource2"); - svcDetails1 = buildServiceDetails("TestService1"); - - // VFCMT - res1 = createResource(user, resourceDetails1); - AssertJUnit.assertEquals("create resorce failed", 201, res1.getErrorCode().intValue()); - resourceDetails1.setUniqueId(ResponseParser.getUniqueIdFromResponse(res1)); - - resourceDetails2.setVersion(ResponseParser.getVersionFromResponse(res1)); - - // VFC - res2 = createResource(user, resourceDetails2); - AssertJUnit.assertEquals("create resorce failed", 201, res2.getErrorCode().intValue()); - resourceDetails2.setUniqueId(ResponseParser.getUniqueIdFromResponse(res2)); - resourceDetails2.setVersion(ResponseParser.getVersionFromResponse(res2)); - - // SERVICE - svc1 = createService(user, svcDetails1); - AssertJUnit.assertEquals("create resorce failed", 201, svc1.getErrorCode().intValue()); - svcDetails1.setUniqueId(ResponseParser.convertServiceResponseToJavaObject(svc1.getResponse()).getUniqueId()); - svcDetails1.setVersion(ResponseParser.convertServiceResponseToJavaObject(svc1.getResponse()).getVersion()); - isInitialized = true; - } - - @AfterClass - public void tearDown() throws Exception { - deleteResource(resourceDetails1.getUniqueId(), user.getUserId()); - deleteResource(resourceDetails2.getUniqueId(), user.getUserId()); - deleteService(svcDetails1.getUniqueId(), user); - } - - // Keep 1 - @Test - public void getCatalogData() throws Exception { - - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails1, user, "0.1", - LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("check in operation failed", 200, checkInResponse.getErrorCode().intValue()); - - RestResponse res = CatalogRestUtils.getCatalog(user.getUserId()); - String json = res.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - JSONArray resources = (JSONArray) jsonResp.get("resources"); - JSONArray services = (JSONArray) jsonResp.get("services"); - - // Verify all the expected resources received. - AssertJUnit.assertTrue("check resource1 is in response", - isComponentInArray(resourceDetails1.getUniqueId(), resources)); - AssertJUnit.assertTrue("check resource2 is in response", - isComponentInArray(resourceDetails2.getUniqueId(), resources)); - AssertJUnit.assertTrue("check service1 is in response", - isComponentInArray(svcDetails1.getUniqueId(), services)); - - } - - @Test - public void getCatalogDataNoVFCMT() throws Exception { - - List<String> excludeTyps = Arrays.asList(OriginTypeEnum.VFCMT.name()); - RestResponse res = CatalogRestUtils.getCatalog(user.getUserId(), excludeTyps); - String json = res.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - JSONArray resources = (JSONArray) jsonResp.get("resources"); - JSONArray services = (JSONArray) jsonResp.get("services"); - - // Verify all the expected resources received except of resource1 which is VFCMT - AssertJUnit.assertFalse("check resource1 is in response", - isComponentInArray(resourceDetails1.getUniqueId(), resources)); - AssertJUnit.assertTrue("check resource2 is in response", - isComponentInArray(resourceDetails2.getUniqueId(), resources)); - AssertJUnit.assertTrue("check service1 is in response", - isComponentInArray(svcDetails1.getUniqueId(), services)); - - } - - @Test - public void getCatalogDataNoVFCandVFCMT() throws Exception { - - List<String> excludeTyps = Arrays.asList(OriginTypeEnum.VFCMT.name(), OriginTypeEnum.VFC.name()); - RestResponse res = CatalogRestUtils.getCatalog(user.getUserId(), excludeTyps); - String json = res.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - JSONArray resources = (JSONArray) jsonResp.get("resources"); - JSONArray services = (JSONArray) jsonResp.get("services"); - - // Verify all the expected resources received except of VFCMT & VFC - AssertJUnit.assertFalse("check resource1 is in response", - isComponentInArray(resourceDetails1.getUniqueId(), resources)); - AssertJUnit.assertFalse("check resource2 is in response", - isComponentInArray(resourceDetails2.getUniqueId(), resources)); - AssertJUnit.assertTrue("check service1 is in response", - isComponentInArray(svcDetails1.getUniqueId(), services)); - - } - - @Test - public void getCatalogDataNoServiceAndVFC() throws Exception { - - List<String> excludeTyps = Arrays.asList(OriginTypeEnum.SERVICE.name(), OriginTypeEnum.VFC.name()); - RestResponse res = CatalogRestUtils.getCatalog(user.getUserId(), excludeTyps); - String json = res.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - JSONArray resources = (JSONArray) jsonResp.get("resources"); - JSONArray services = (JSONArray) jsonResp.get("services"); - - // Verify all the expected resources received except of VFC & SERVICE - AssertJUnit.assertTrue("check resource1 is in response", - isComponentInArray(resourceDetails1.getUniqueId(), resources)); - AssertJUnit.assertFalse("check resource2 is in response", - isComponentInArray(resourceDetails2.getUniqueId(), resources)); - AssertJUnit.assertFalse("check service1 is in response", - isComponentInArray(svcDetails1.getUniqueId(), services)); - - } - - protected void deleteResource(String resourceUniqueId, String httpCspUserId) throws Exception { - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceUniqueId, httpCspUserId); - - } - - protected RestResponse createResource(User user, ResourceReqDetails resourceDetails) throws Exception { - deleteResource(resourceDetails.getName(), user.getUserId()); - return ResourceRestUtils.createResource(resourceDetails, user); - } - - protected ResourceReqDetails buildResourceDetails(User user, String resourceName) { - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.0"; - String contactId = user.getUserId(); - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, null, - derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_DATABASE.getCategory(), - ResourceCategoryEnum.GENERIC_DATABASE.getSubCategory()); - return resourceDetails; - } - - protected boolean isComponentInArray(String id, JSONArray component) { - for (int i = 0; i < component.size(); i++) { - JSONObject jobject = (JSONObject) component.get(i); - if (jobject.get("uniqueId").toString().equals(id.toLowerCase())) { - return true; - } - } - return false; - } - - protected RestResponse createService(User user, ServiceReqDetails svcDetails) throws Exception { - - deleteService(svcDetails1.getUniqueId(), user); - Config config = Utils.getConfig(); - - Map<String, String> headersMap = getHeadersMap(user); - - Gson gson = new Gson(); - String body = gson.toJson(svcDetails); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort()); - RestResponse res = http.httpSendPost(url, body, headersMap); - // System.out.println("Create service was finished with response: - // "+res.getErrorCode()); - return res; - } - - protected Map<String, String> getHeadersMap(User user) { - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put("USER_ID", user.getUserId()); - return headersMap; - } - - protected ServiceReqDetails buildServiceDetails(String serviceName) { - String description = "description"; - ArrayList<String> serviceTags = new ArrayList<String>(); - serviceTags.add("tag1"); - serviceTags.add(serviceName); - String category = ServiceCategoriesEnum.MOBILITY.getValue(); - String vendorName = "Oracle"; - String vendorRelease = "0.1"; - String contactId = "al1976"; - String icon = "myIcon"; - - ServiceReqDetails svcdetails = new ServiceReqDetails(serviceName, category, serviceTags, description, - contactId, icon); - return svcdetails; - } - - public RestResponse deleteService(String serviceId, User user) throws Exception { - RestResponse deleteServiceResponse = ResourceRestUtils.deleteResource(serviceId, user.getUserId()); - return deleteServiceResponse; - } - - public class NewObject { - private String _name; - - public String getName() { - return _name; - } - - public void setName(String name) { - this._name = name; - } - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesBaseTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesBaseTest.java deleted file mode 100644 index d68f3f5582..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesBaseTest.java +++ /dev/null @@ -1,49 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; - -public abstract class CategoriesBaseTest extends ComponentBaseTest { - - public CategoriesBaseTest(TestName testName, String className) { - super(testName, className); - } - - protected static final String AUDIT_SERVICE_TYPE = "Service"; - protected static final String AUDIT_RESOURCE_TYPE = "Resource"; - protected static final String AUDIT_PRODUCT_TYPE = "Product"; - protected static final String GET_CATEGORY_HIERARCHY = "GetCategoryHierarchy"; - protected static User sdncAdminUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - protected static User sdncAdminUserDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - protected static User sdncDesignerUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected static User sdncTesterUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - protected static User sdncGovernorUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - protected static User sdncOpsUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - protected static User sdncProductManagerUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - protected static User sdncProductStrategistUserDetails = ElementFactory - .getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1); - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesTests.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesTests.java deleted file mode 100644 index ade662a20c..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/CategoriesTests.java +++ /dev/null @@ -1,2301 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.PRODUCT_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.RESOURCE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.SERVICE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_ALREADY_EXISTS; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_CREATED; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_MISSING_INFORMATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.commons.lang3.text.WordUtils; -import org.apache.http.entity.mime.MultipartEntityBuilder; -import org.apache.http.entity.mime.content.FileBody; -import org.json.JSONArray; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.be.model.category.SubCategoryDefinition; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedCategoryAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.CategoryValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class CategoriesTests extends CategoriesBaseTest { - - private static final String GET_CATEGORY_HIERARCHY = "GetCategoryHierarchy"; - protected static final String ADD_CATEGORY = "AddCategory"; - protected static final String DELETE_CATEGORY = "DeleteCategory"; - - public CategoriesTests() { - super(name, CategoriesTests.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - private CategoryDefinition categoryDefinition; - private List<CategoryDefinition> categoryList; - private List<SubCategoryDefinition> subCategoryList; - private Map<String, List<String>> subCategoriesToDeleteMap; - - @BeforeMethod - public void init() throws Exception { - subCategoriesToDeleteMap = new HashMap<String, List<String>>(); - DbUtils.deleteFromEsDbByPattern("_all"); - - categoryDefinition = new CategoryDefinition(); - categoryDefinition.setName("Abcd"); - categoryList = defineCategories(); - subCategoryList = defineSubCategories(categoryList.size()); - } - - // pass - @Test - public void createServiceCategorySuccessFlow() throws Exception { - // Add New category - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - // get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); // also - // set - // catalog - // uniqeId - - } - - // pass - @Test - public void createResourceCategorySuccessFlow() throws Exception { - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get Category - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - // pass - @Test - public void createProductCategorySuccessFlow() throws Exception { - // Add Category by Product-strategist - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - - // Get Category - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void CategoryNameValidation_FirstWordStartWithAlphaNumeric_01() throws Exception { // category - // for - // service - categoryDefinition.setName("Category14AadE &&&---+++.'''###=:@@@____"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category14AadE &-+.'#=:@_"); - categoryDefinition.setNormalizedName("category14aade &-+.'#=:@_"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_FirstWordStartWithAlphaNumeric_02() throws Exception { // category - // for - // resource - categoryDefinition.setName("Category14AadE &&&---+++.'''###=:@@@____"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category14AadE &-+.'#=:@_"); - categoryDefinition.setNormalizedName("category14aade &-+.'#=:@_"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void categoryNameValidation_FirstWordStartWithAlphaNumeric_03() throws Exception { // category - // for - // resource - categoryDefinition.setName("Category14AadE &&&---+++.'''###=:@@@____"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category14AadE &-+.'#=:@_"); - categoryDefinition.setNormalizedName("category14aade &-+.'#=:@_"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - // pass - @Test - public void createServiceCategoryByNonAdminUser() throws Exception { - // Add New category - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncProductStrategistUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_RESTRICTED_OPERATION, - createCategotyRest.getErrorCode().intValue()); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncProductStrategistUserDetails, - ActionStatus.RESTRICTED_OPERATION, STATUS_CODE_RESTRICTED_OPERATION, AUDIT_SERVICE_TYPE); - } - - // pass - @Test - public void createResourceCategoryByNonAdminUser() throws Exception { - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncProductStrategistUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_RESTRICTED_OPERATION, - createCategotyRest.getErrorCode().intValue()); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncProductStrategistUserDetails, - ActionStatus.RESTRICTED_OPERATION, STATUS_CODE_RESTRICTED_OPERATION, AUDIT_RESOURCE_TYPE); - } - - // pass - @Test - public void createProductCategoryByNonProductStrategistUser() throws Exception { - // Add New product category not by Product-Strategist - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_RESTRICTED_OPERATION, - createCategotyRest.getErrorCode().intValue()); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.RESTRICTED_OPERATION, STATUS_CODE_RESTRICTED_OPERATION, AUDIT_PRODUCT_TYPE); - - } - - // pass - @Test - public void addCategoryByNonExistingUser() throws Exception { - User sdncAdminUserDetailsNonExisting = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncAdminUserDetailsNonExisting.setUserId("bt555h"); - // Add New category - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncAdminUserDetailsNonExisting, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_RESTRICTED_OPERATION, - createCategotyRest.getErrorCode().intValue()); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier("(" + sdncAdminUserDetailsNonExisting.getUserId() + ")"); - expectedCatrgoryAuditJavaObject.setCategoryName(categoryDefinition.getName()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(""); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_SERVICE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_RESTRICTED_OPERATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_CATEGORY); - } - - @Test - public void addServiceCategoryAllowedcharacters_01() throws Exception { - categoryDefinition.setName("1234AbcdE&"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde&"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_02() throws Exception { - categoryDefinition.setName("1234AbcdE-"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde-"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_03() throws Exception { - categoryDefinition.setName("1234AbcdE+"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde+"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_04() throws Exception { - categoryDefinition.setName("1234AbcdE."); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde."); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_05() throws Exception { - categoryDefinition.setName("1234AbcdE'"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde'"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_06() throws Exception { - categoryDefinition.setName("1234AbcdE="); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde="); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_07() throws Exception { - categoryDefinition.setName("1234AbcdE:"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde:"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_08() throws Exception { - categoryDefinition.setName("1234AbcdE@"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde@"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_09() throws Exception { - categoryDefinition.setName("1234AbcdE_"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde_"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_10() throws Exception { - categoryDefinition.setName("1234AbcdE#"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde#"); // normalization - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_11() throws Exception { - categoryDefinition.setName("1234AbcdE d"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde d"); // normalization - categoryDefinition.setName("1234AbcdE D"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void addServiceCategoryAllowedcharacters_12() throws Exception { - categoryDefinition.setName("1234AbcdE &_=+.-'#:@ d"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("1234abcde &_=+.-'#:@ d"); // normalization - categoryDefinition.setName("1234AbcdE &_=+.-'#:@ D"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveSpaceFromBeginning() throws Exception { - categoryDefinition.setName(" Category01"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("category01"); // normalization - categoryDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveSpaceFromEnd() throws Exception { - categoryDefinition.setName("Category01 "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("category01"); // normalization - categoryDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraSpace() throws Exception { - categoryDefinition.setName("Category 02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("category 02"); // normalization - categoryDefinition.setName("Category 02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraAmpersand() throws Exception { - categoryDefinition.setName("Category&& &02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("category& &02"); // normalization - categoryDefinition.setName("Category& &02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraDash() throws Exception { - categoryDefinition.setName("CategorY-- --02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("CategorY- -02"); - categoryDefinition.setNormalizedName("category- -02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraPlus() throws Exception { - categoryDefinition.setName("CateGory++++ +02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("CateGory+ +02"); - categoryDefinition.setNormalizedName("category+ +02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraPeriod() throws Exception { - categoryDefinition.setName("Category.... .02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category. .02"); - categoryDefinition.setNormalizedName("category. .02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraApostrophe() throws Exception { - categoryDefinition.setName("CaTegory''' '02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("CaTegory' '02"); - categoryDefinition.setNormalizedName("category' '02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraHashtag() throws Exception { - categoryDefinition.setName("Category### #02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category# #02"); - categoryDefinition.setNormalizedName("category# #02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtrEequal() throws Exception { - categoryDefinition.setName("Category=== =02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category= =02"); - categoryDefinition.setNormalizedName("category= =02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtrColon() throws Exception { - categoryDefinition.setName("Category::: :02"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category: :02"); - categoryDefinition.setNormalizedName("category: :02"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtrAt() throws Exception { - categoryDefinition.setName("Category@@@ @a2"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category@ @a2"); - categoryDefinition.setNormalizedName("category@ @a2"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_RemoveExtraUnderscore() throws Exception { - categoryDefinition.setName("Category___ _22"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Category_ _22"); - categoryDefinition.setNormalizedName("category_ _22"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_FirstWordStartWithNumber() throws Exception { - categoryDefinition.setName("1Category one"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("1Category One"); - categoryDefinition.setNormalizedName("1category one"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_FirstWordStartWithNonAlphaNumeric() throws Exception { // The - // first - // word - // must - // start - // with - // an - // alpha-numeric - // character - // [a-Z - // A..Z, - // 0..9] - char invalidChars[] = { '&', '-', '+', '.', '\'', '#', '=', ':', '@', '_' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - categoryDefinition.setName(invalidChars[i] + "AbcD123"); - categoryDefinition.setNormalizedName((invalidChars[i] + "AbcD123").toLowerCase()); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, - sdncAdminUserDetails1, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails1, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - - } - } - - @Test - public void addServiceCategoryAlreadyExist_uniqueness() throws Exception { // Verify - // category - // name - // duplication - // ("uniqueness") - // as - // non-case-sensitive, - // so - // we - // don’t - // create - // duplicate - // names - // with - // upper/lower - // case - // inconsistency. - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); // also - // set - // catalog - // uniqeId - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - // Create same category name again - DbUtils.deleteFromEsDbByPattern("_all"); - CategoryDefinition categoryDataDefinition2 = new CategoryDefinition(); - categoryDataDefinition2.setName(categoryDefinition.getName()); - RestResponse addDuplicateCategoryRest = CategoryRestUtils.createCategory(categoryDataDefinition2, - sdncAdminUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_ALREADY_EXISTS, - addDuplicateCategoryRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDataDefinition2, sdncAdminUserDetails, - ActionStatus.COMPONENT_CATEGORY_ALREADY_EXISTS, STATUS_CODE_ALREADY_EXISTS, AUDIT_SERVICE_TYPE, - "Service", categoryDefinition.getName()); - // Get Category and verify that category was created is not deleted - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_01() throws Exception { - categoryDefinition.setName("At and T"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("At & T"); - categoryDefinition.setNormalizedName("at & t"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_02() throws Exception { - categoryDefinition.setName("At and t"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("At & T"); - categoryDefinition.setNormalizedName("at & t"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_03() throws Exception { - categoryDefinition.setName("Atand T"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("atand t"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_04() throws Exception { - categoryDefinition.setName("At andT"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("at andt"); - categoryDefinition.setName("At AndT"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_05() throws Exception { - categoryDefinition.setName(" and AttT"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("and attt"); - categoryDefinition.setName("And AttT"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_06() throws Exception { - categoryDefinition.setName("AttT and "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("attt and"); - categoryDefinition.setName("AttT And"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - // Bug - @Test - public void categoryNameValidation_ReplaceAndWithAmpersand_07() throws Exception { - categoryDefinition.setName(" and a"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("and a"); - categoryDefinition.setName("And a"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationMaxLength() throws Exception { - categoryDefinition.setName("AsdfghjQ234567890@#.&:+-_"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("asdfghjq234567890@#.&:+-_"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - - } - - @Test - public void categoryNameValidationMaxLengthAfterNormalization() throws Exception { - categoryDefinition.setName(" A jQ234 @@@___ +++ At and T and and "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("A JQ234 @_ + At & T & And"); - categoryDefinition.setNormalizedName("a jq234 @_ + at & t & and"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - - } - - @Test - public void categoryNameValidationExceedMaxLengthAfterNormalization() throws Exception { - categoryDefinition.setName(" AbdfghBCVa jQ234 @@___ +++ At and T "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("abdfghbcva jq234 @_ + at&t"); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - } - - @Test - public void categoryNameValidationMinLengthAfterNormalization() throws Exception { // MinLengthAfterNormalization - // = - // 4 - // characters - categoryDefinition.setName(" At and T "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("At & T"); - categoryDefinition.setNormalizedName("at & t"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationLessThanMinLengthAfterNormalization() throws Exception { - categoryDefinition.setName(" A&&&&&&&&&&&&&&&&&T "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName("a&t"); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - } - - @Test - public void categoryNameValidationIsNull() throws Exception { - categoryDefinition.setName(null); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - } - - @Test - public void categoryNameValidationIsEmpty() throws Exception { - categoryDefinition.setName(""); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName(""); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - } - - @Test - public void categoryNameValidationInvalidCharacters() throws Exception { - char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', - '|', '\\', ',' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - // DbUtils.cleanAllAudits(); - categoryDefinition.setName("AbcD123" + invalidChars[i]); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setNormalizedName(""); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditFailure(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE, - "Service", "category"); - } - } - - @Test - public void categoryNameValidationSameNameDifferentResourceType() throws Exception { // same - // Catalog - // Name - // for - // service/resource/product - // is - // allowed - String name = ("Abcd"); - CategoryDefinition categoryDataDefinition1 = new CategoryDefinition(); - CategoryDefinition categoryDataDefinition2 = new CategoryDefinition(); - CategoryDefinition categoryDataDefinition3 = new CategoryDefinition(); - categoryDataDefinition1.setName(name); - categoryDataDefinition2.setName(name); - categoryDataDefinition3.setName(name); - // CREATE CATEGORY FOR SERVICE - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDataDefinition1, - sdncAdminUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDataDefinition1.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDataDefinition1); - // get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDataDefinition1); // also - // set - // catalog - // uniqeId - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDataDefinition1, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - // CREATE CATEGORY FOR RESOURCE_COMPONENT_TYPE - DbUtils.deleteFromEsDbByPattern("_all"); - createCategotyRest = CategoryRestUtils.createCategory(categoryDataDefinition2, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDataDefinition2.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDataDefinition2); - // Get Category - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDataDefinition2); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDataDefinition2, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - // CREATE CATEGORY FOR PRODUCT - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse addCategotyRest = CategoryRestUtils.createCategory(categoryDataDefinition3, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - addCategotyRest.getErrorCode().intValue()); - categoryDataDefinition3.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateCategoryResponse(addCategotyRest, categoryDataDefinition3); - - // Get Category - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDataDefinition3); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void categoryNameValidationFirstLetterOfKeyWordsCapitalized() throws Exception { // First - // letter - // of - // key - // words - // are - // capitalized - categoryDefinition.setName("beNNy shaY michEl"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("BeNNy ShaY MichEl"); - categoryDefinition.setNormalizedName("benny shay michel"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_01() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" bank OF america "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Bank of America"); - categoryDefinition.setNormalizedName("bank of america"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_02() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName("THE america bank "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("THE America Bank"); - categoryDefinition.setNormalizedName("the america bank"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_03() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" A bank OF america "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("A Bank of America"); - categoryDefinition.setNormalizedName("a bank of america"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_04() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" bank america is A big ban "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Bank America Is a Big Ban"); - categoryDefinition.setNormalizedName("bank america is a big ban"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_05() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" aN apple comPany inC "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("AN Apple ComPany InC"); - categoryDefinition.setNormalizedName("an apple company inc"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_06() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" eat AN apple ANAN"); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Eat an Apple ANAN"); - categoryDefinition.setNormalizedName("eat an apple anan"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_07() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" united states OF americA "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("United States of AmericA"); - categoryDefinition.setNormalizedName("united states of america"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - // need to re-check - @Test - public void categoryNameValidationConjunctions_08() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" oF united states OF amer "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("OF United States of Amer"); - categoryDefinition.setNormalizedName("of united states of amer"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_09() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" to Apple TO at&T TOO "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("To Apple to At&T TOO"); - categoryDefinition.setNormalizedName("to apple to at&t too"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_10() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" eat apple AS you liiikeas "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Eat Apple as You Liiikeas"); - categoryDefinition.setNormalizedName("eat apple as you liiikeas"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_11() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" as you may want "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("As You May Want"); - categoryDefinition.setNormalizedName("as you may want"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void categoryNameValidationConjunctions_12() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" the bank OF america "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("The Bank of America"); - categoryDefinition.setNormalizedName("the bank of america"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - // need to recheck - @Test - public void categoryNameValidationConjunctions_13() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" To tel-toto "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("To Tel-toto"); - categoryDefinition.setNormalizedName("to tel-toto"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - // recheck - @Test - public void categoryNameValidationConjunctions_14() throws Exception { // Normalize - // the - // category - // name - // conjunctions - // ('of', - // 'to', - // 'for', - // 'as', - // 'a', - // 'an' - // , - // 'the') - // are - // lower - // case. - categoryDefinition.setName(" tel-aviv To la "); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_CREATED, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Tel-aviv to La"); - categoryDefinition.setNormalizedName("tel-aviv to la"); - CategoryValidationUtils.validateCreateCategoryResponse(createCategotyRest, categoryDefinition); - // Get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - AuditValidationUtils.categoryAuditSuccess(ADD_CATEGORY, categoryDefinition, sdncAdminUserDetails, - STATUS_CODE_CREATED, AUDIT_SERVICE_TYPE); - } - - @Test - public void createServiceCategoryHttpCspUserIdIsEmpty() throws Exception { - User sdncAdminUserDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncAdminUserDetails1.setUserId(""); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Abcd"); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(categoryDefinition.getName()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(""); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_SERVICE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_CATEGORY); - } - - @Test - public void createServiceCategorHttpCspUserIdIsNull() throws Exception { - User sdncAdminUserDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncAdminUserDetails1.setUserId(null); - RestResponse createCategotyRest = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails1, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createCategotyRest.getErrorCode().intValue()); - categoryDefinition.setName("Abcd"); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(categoryDefinition.getName()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(""); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_SERVICE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_CATEGORY); - } - - @Test - public void createSrvcCategoryHttpCspUserIdHeaderIsMissing() throws Exception { - RestResponse createConsumerRest = CategoryRestUtils - .createServiceCategoryHttpCspAtuUidIsMissing(categoryDefinition, sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createConsumerRest.getErrorCode().intValue()); - categoryDefinition.setName("Abcd"); - // get service category and validate that category was not added - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyCategoryNotExistsInGetResponse(getAllCategoriesRest, categoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(categoryDefinition.getName()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(""); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_SERVICE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_CATEGORY); - } - - @Test - public void getServiceCategoryHierarchySuccessFlow() throws Exception { - - int numOfCategories = 3; - List<CategoryDefinition> categories = new ArrayList<CategoryDefinition>(); - RestResponse restResponse; - CategoryDefinition category; - String categoryName = categoryDefinition.getName(); - for (int i = 0; i < numOfCategories; i++) { - categoryDefinition.setName(categoryName + i); - restResponse = CategoryRestUtils.createCategory(categoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - category = ResponseParser.parseToObject(restResponse.getResponse(), CategoryDefinition.class); - categories.add(category); - } - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - - AuditValidationUtils.GetCategoryHierarchyAuditSuccess(GET_CATEGORY_HIERARCHY, AUDIT_SERVICE_TYPE, - sdncAdminUserDetails, STATUS_CODE_SUCCESS); - for (CategoryDefinition categoryCurr : categories) { - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryCurr); - } - } - - ///////////////////////////////// US570520 ///////////////////////////////// - private List<CategoryDefinition> defineCategories() throws Exception { - String firstCategory = "FirstCategory"; - String secondCategory = "secondCategory"; - String thirdCategory = "ThirdCategory"; - String forthCategory = "forthCategory"; - CategoryDefinition category1 = new CategoryDefinition(categoryDefinition); - category1.setName(firstCategory); - CategoryDefinition category2 = new CategoryDefinition(categoryDefinition); - category2.setName(secondCategory); - CategoryDefinition category3 = new CategoryDefinition(categoryDefinition); - category3.setName(thirdCategory); - CategoryDefinition category4 = new CategoryDefinition(categoryDefinition); - category4.setName(forthCategory); - ArrayList<CategoryDefinition> categoryList = new ArrayList<CategoryDefinition>(); - categoryList.add(category1); - categoryList.add(category2); - categoryList.add(category3); - categoryList.add(category4); - return categoryList; - } - - @Test - public void getAllResourceCategoriesHirarchy() throws Exception { - createAndValidateCategoriesExist(RESOURCE_COMPONENT_TYPE, categoryList); - - for (int i = 0; i < categoryList.size(); i++) { - List<String> subCategorieUniqueIdList = new ArrayList<String>(); - for (int j = 0; j < subCategoryList.size(); j++) { - RestResponse createSubCategory = CategoryRestUtils.createSubCategory(subCategoryList.get(j), - categoryList.get(i), sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - if (createSubCategory.getErrorCode().intValue() == STATUS_CODE_CREATED) { - String subCategoryUniqeId = ResponseParser.getUniqueIdFromResponse(createSubCategory); - subCategorieUniqueIdList.add(subCategoryUniqeId); - subCategoriesToDeleteMap.put(categoryList.get(i).getUniqueId(), subCategorieUniqueIdList); - } - } - } - - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - - for (int i = 0; i < categoryList.size(); i++) { - for (int j = 0; j < subCategoryList.size(); j++) { - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - categoryList.get(i).getUniqueId(), subCategoryList.get(j)); - } - } - - checkAuditSuccess(RESOURCE_COMPONENT_TYPE); - } - - private List<SubCategoryDefinition> defineSubCategories(int catListSize) { - List<SubCategoryDefinition> subCatList = new ArrayList<SubCategoryDefinition>(); - for (int j = 1; j <= catListSize; j++) { - SubCategoryDefinition subCategory = new SubCategoryDefinition(); - subCategory.setName("SubCategory" + String.valueOf(j)); - subCatList.add(subCategory); - } - return subCatList; - } - - private void createAndValidateCategoriesExist(String comp, List<CategoryDefinition> categoryList) throws Exception { - createCategories(comp, categoryList); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, comp); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - verifyCategoriesExist(categoryList, getAllCategoriesRest); - } - - private void verifyCategoriesExist(List<CategoryDefinition> categoryList, RestResponse getAllCategoriesRest) { - for (int i = 0; i < categoryList.size(); i++) { - categoryList.get(i).setName(WordUtils.capitalize(categoryList.get(i).getName())); - CategoryValidationUtils.verifyCategoryExistInGetResponse(getAllCategoriesRest, categoryList.get(i)); - } - } - - private void createCategories(String comp, List<CategoryDefinition> categoryList) throws Exception { - for (int i = 0; i < categoryList.size(); i++) { - CategoryRestUtils.createCategory(categoryList.get(i), sdncAdminUserDetails, comp); - } - } - - @Test - public void getAllServiceCategoriesHirarchy() throws Exception { - // deleteCategories(categoryList, SERVICE_COMPONENT_TYPE); - createAndValidateCategoriesExist(SERVICE_COMPONENT_TYPE, categoryList); - checkAuditSuccess(SERVICE_COMPONENT_TYPE); - // deleteCategories(categoryList, SERVICE_COMPONENT_TYPE); - } - - @Test - public void getAllResourceCategories_noAttUserHeader() throws Exception { - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(new User(), RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", 403, getAllCategoriesRest.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), new ArrayList<String>(), - getAllCategoriesRest.getResponse()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(GET_CATEGORY_HIERARCHY); - expectedCatrgoryAuditJavaObject.setModifierName(""); - expectedCatrgoryAuditJavaObject.setModifierUid(""); - expectedCatrgoryAuditJavaObject.setDetails(RESOURCE_COMPONENT_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateGetCategoryHirarchy(expectedCatrgoryAuditJavaObject, GET_CATEGORY_HIERARCHY); - } - - @Test - public void getAllResourceCategories_userNotProvisioned() throws Exception { - User notProvisionedUser = new User(); - notProvisionedUser.setUserId("aa0001"); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(notProvisionedUser, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", 409, getAllCategoriesRest.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - getAllCategoriesRest.getResponse()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(GET_CATEGORY_HIERARCHY); - expectedCatrgoryAuditJavaObject.setModifierName(""); - expectedCatrgoryAuditJavaObject.setModifierUid(notProvisionedUser.getUserId()); - expectedCatrgoryAuditJavaObject.setDetails(RESOURCE_COMPONENT_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_RESTRICTED_OPERATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateGetCategoryHirarchy(expectedCatrgoryAuditJavaObject, GET_CATEGORY_HIERARCHY); - } - - @Test - public void getAllResourceCategories_unsupportedComponent() throws Exception { - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, "comp"); - assertEquals("Check response code after get all categories hirarchy", 400, - getAllCategoriesRest.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.UNSUPPORTED_ERROR.name(), - new ArrayList<String>(Arrays.asList("component type")), getAllCategoriesRest.getResponse()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.UNSUPPORTED_ERROR.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(GET_CATEGORY_HIERARCHY); - expectedCatrgoryAuditJavaObject.setModifierUid(sdncAdminUserDetails.getUserId()); - expectedCatrgoryAuditJavaObject.setModifierName(sdncAdminUserDetails.getFullName()); - expectedCatrgoryAuditJavaObject.setDetails("comp"); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_INVALID_CONTENT)); - expectedCatrgoryAuditJavaObject.setDesc(AuditValidationUtils.buildAuditDescription(errorInfo, - new ArrayList<String>(Arrays.asList("component type")))); - AuditValidationUtils.validateGetCategoryHirarchy(expectedCatrgoryAuditJavaObject, GET_CATEGORY_HIERARCHY); - } - - @Test(enabled = false) - public void getAllResourceCategories_emptyList() throws Exception { - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - JSONArray jArr = new JSONArray(getAllCategoriesRest.getResponse()); - assertTrue(jArr.length() == 0); - - checkAuditSuccess(RESOURCE_COMPONENT_TYPE); - } - - private void checkAuditSuccess(String componentType) throws Exception { - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(GET_CATEGORY_HIERARCHY); - expectedCatrgoryAuditJavaObject.setModifierName(sdncAdminUserDetails.getFullName()); - expectedCatrgoryAuditJavaObject.setModifierUid(sdncAdminUserDetails.getUserId()); - expectedCatrgoryAuditJavaObject.setDetails(componentType); - expectedCatrgoryAuditJavaObject.setStatus("200"); - expectedCatrgoryAuditJavaObject.setDesc("OK"); - AuditValidationUtils.validateGetCategoryHirarchy(expectedCatrgoryAuditJavaObject, GET_CATEGORY_HIERARCHY); - } - - @Test(enabled = false) - public void getAllServiceCategories_emptyList() throws Exception { - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - JSONArray jArr = new JSONArray(getAllCategoriesRest.getResponse()); - assertTrue(jArr.length() == 0); - - checkAuditSuccess(SERVICE_COMPONENT_TYPE); - } - - @Test(enabled = false) - public void getAllProductCategories_emptyList() throws Exception { - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get Category", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - JSONArray jArr = new JSONArray(getAllCategoriesRest.getResponse()); - assertTrue(jArr.length() == 0); - - checkAuditSuccess(PRODUCT_COMPONENT_TYPE); - } - - // @Test - // public void getAllResourceCategories_generalError() throws Exception - // { - // User user = new User(); - // RestResponse getAllCategoriesRest = - // CategoryRestUtils.getAllCategories(user, SERVICE_COMPONENT_TYPE); - // assertEquals("Check response code after get Category", 500, - // getAllCategoriesRest.getErrorCode().intValue()); - // Utils.checkBodyResponseOnError(ActionStatus.GENERAL_ERROR.name(), new - // ArrayList<String>(), getAllCategoriesRest.getResponse()); - // } - - ////////////////////////////////////////////////////////////////////////////// - - @Test - public void importCategories() throws Exception { - - String importResourceDir = config.getImportTypesConfigDir() + File.separator + "categoryTypesTest.zip"; - - MultipartEntityBuilder mpBuilder = MultipartEntityBuilder.create(); - mpBuilder.addPart("categoriesZip", new FileBody(new File(importResourceDir))); - - RestResponse importResult = CategoryRestUtils.importCategories(mpBuilder, sdncAdminUserDetails.getUserId()); - assertEquals("Check response code after Import", BaseRestUtils.STATUS_CODE_CREATED, - importResult.getErrorCode().intValue()); - - Map<String, Object> map = ResponseParser.parseToObjectUsingMapper(importResult.getResponse(), Map.class); - assertEquals("Check entries count", 2, map.size()); - - List<Map<String, Object>> resources = (List<Map<String, Object>>) map.get("resources"); - assertEquals("Check resource category entries count", 1, resources.size()); - - List<Map<String, Object>> services = (List<Map<String, Object>>) map.get("services"); - assertEquals("Check resource category entries count", 2, services.size()); - - RestResponse allCategories = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, "resources"); - List<CategoryDefinition> resourceCategories = ResponseParser.parseCategories(allCategories); - for (Map<String, Object> resource : resources) { - boolean exist = false; - - for (CategoryDefinition categ : resourceCategories) { - if (categ.getName().equals(resource.get("name"))) { - exist = true; - break; - } - } - assertTrue("Check existance resource category " + resource.get("name"), exist); - } - - allCategories = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, "services"); - List<CategoryDefinition> servicesCategories = ResponseParser.parseCategories(allCategories); - for (Map<String, Object> service : services) { - boolean exist = false; - - for (CategoryDefinition categ : servicesCategories) { - if (categ.getName().equals(service.get("name"))) { - exist = true; - break; - } - } - assertTrue("Check existance service category " + service.get("name"), exist); - } - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/ElementsApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/ElementsApiTest.java deleted file mode 100644 index 7f30f8ca92..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/ElementsApiTest.java +++ /dev/null @@ -1,147 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.util.HashMap; -import java.util.Map; - -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.testng.annotations.Test; - -public class ElementsApiTest extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public ElementsApiTest() { - super(name, ElementsApiTest.class.getName()); - } - - // public LCSbaseTest(TestName testName, String className) { - // super(testName, className); - // } - - // public ElementsApiTest(TestName name, String name2) { - //// super(name, name2); - // // TODO Auto-generated constructor stub - // } - - // Expected 200 Keep - @Test - public void getAllPropertyScopesSuccess() throws Exception { - RestResponse response = ResourceRestUtils.getAllPropertyScopesTowardsCatalogBe(); - String action = "Get All Property Scopes"; - int expectedCode = 200; - verifyErrorCode(response, action, expectedCode); - } - - // Expected 200 Keep - @Test - public void getAllArtifactTypes() throws Exception { - RestResponse response = ResourceRestUtils.getAllArtifactTypesTowardsCatalogBe(); - String action = "Get All Artifact Types"; - int expectedCode = 200; - verifyErrorCode(response, action, expectedCode); - } - - // Expected 200 Keep - @Test - public void getConfiguration() throws Exception { - RestResponse response = ResourceRestUtils.getConfigurationTowardsCatalogBe(); - String action = "Get All Artifact Types"; - int expectedCode = 200; - - String json = response.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - - HashMap<String, Object> artifacts = (HashMap<String, Object>) jsonResp.get("artifacts"); - Long defaultHeatTimeout = (Long) jsonResp.get("defaultHeatTimeout"); - - if (defaultHeatTimeout == null) { - response.setErrorCode(500); - verifyErrorCode(response, action, expectedCode); - return; - } - - if (artifacts == null) { - response.setErrorCode(500); - verifyErrorCode(response, action, expectedCode); - return; - } - - JSONObject deploymentResources = (JSONObject) artifacts.get("deployment"); - JSONArray otherResources = (JSONArray) artifacts.get("other"); - if (deploymentResources == null || otherResources == null) { - response.setErrorCode(500); - verifyErrorCode(response, action, expectedCode); - return; - } - - JSONArray roles = (JSONArray) jsonResp.get("roles"); - if (roles == null) { - response.setErrorCode(500); - verifyErrorCode(response, action, expectedCode); - return; - } - - } - - public void verifyErrorCode(RestResponse response, String action, int expectedCode) { - assertNotNull("check response object is not null after " + action, response); - assertNotNull("check error code exists in response after " + action, response.getErrorCode()); - assertEquals("Check response code after + action" + action, expectedCode, response.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void getAllCategoriesSuccess() throws Exception { - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), "application/json"); - RestResponse response = CatalogRestUtils.getAllCategoriesTowardsCatalogBe(); - String action = "Get All Categories"; - int expectedCode = 200; - verifyErrorCode(response, action, expectedCode); - } - - @Test(enabled = false) - public void getAllTagSuccess() throws Exception { - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), "application/json"); - RestResponse response = ResourceRestUtils.getAllTagsTowardsCatalogBe(); - String action = "Get All Categories"; - int expectedCode = 200; - verifyErrorCode(response, action, expectedCode); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/GroupingTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/GroupingTest.java deleted file mode 100644 index 7858b3259f..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/GroupingTest.java +++ /dev/null @@ -1,2003 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.PRODUCT_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.RESOURCE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.SERVICE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_ALREADY_EXISTS; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_CREATED; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_MISSING_INFORMATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_NOT_FOUND; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.be.model.category.GroupingDefinition; -import org.openecomp.sdc.be.model.category.SubCategoryDefinition; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedCategoryAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.CategoryValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.SkipException; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class GroupingTest extends CategoriesBaseTest { - - protected static final String ADD_GROUPING = "AddGrouping"; - protected static final String CATEGORY = "category"; - protected static final String SUB_CATEGORY = "sub-category"; - protected static final String GROUPING = "grouping"; - - public GroupingTest() { - super(name, GroupingTest.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - - private CategoryDefinition productCategoryDefinition; - private CategoryDefinition productCategoryDefinition2; - - private SubCategoryDefinition productSubCategoryDefinition; - private SubCategoryDefinition productSubCategoryDefinition2; - private SubCategoryDefinition productSubCategoryDefinition3; - - private GroupingDefinition productGroupingDefinition; - private GroupingDefinition productGroupingDefinition2; - private GroupingDefinition productGroupingDefinition3; - - @BeforeMethod - public void init() throws Exception { - - // Category setup - productCategoryDefinition = new CategoryDefinition(); - productCategoryDefinition.setName("Category1"); - productCategoryDefinition2 = new CategoryDefinition(); - productCategoryDefinition2.setName("Category2"); - - // Subcategory setup - productSubCategoryDefinition = new SubCategoryDefinition(); - productSubCategoryDefinition.setName("SubCategory1"); - - productSubCategoryDefinition2 = new SubCategoryDefinition(); - productSubCategoryDefinition2.setName("SubCategory2"); - - productSubCategoryDefinition3 = new SubCategoryDefinition(); - productSubCategoryDefinition3.setName("SubCategory1"); - - // Group setup - productGroupingDefinition = new GroupingDefinition(); - productGroupingDefinition.setName("Grouping1"); - - productGroupingDefinition2 = new GroupingDefinition(); - productGroupingDefinition2.setName("Grouping2"); - - productGroupingDefinition3 = new GroupingDefinition(); - productGroupingDefinition3.setName("Grouping1"); - - // Init product category - RestResponse createCategory = CategoryRestUtils.createCategory(productCategoryDefinition, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - CategoryDefinition category = ResponseParser.parseToObject(createCategory.getResponse(), - CategoryDefinition.class); - assertEquals("Check category name after creating category ", productCategoryDefinition.getName(), - category.getName()); - productCategoryDefinition = category; - - // Init product category1 - createCategory = CategoryRestUtils.createCategory(productCategoryDefinition2, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class); - assertEquals("Check category name after creating category ", productCategoryDefinition2.getName(), - category.getName()); - productCategoryDefinition2 = category; - - // Init product productSubCategoryDefinition to - // productCategoryDefinition - RestResponse createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createSubCategory.getErrorCode().intValue()); - SubCategoryDefinition subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(), - SubCategoryDefinition.class); - assertEquals("Check category name after creating category ", productSubCategoryDefinition.getName(), - subCategory.getName()); - productSubCategoryDefinition = subCategory; - productCategoryDefinition.addSubCategory(productSubCategoryDefinition); - - // Init product productSubCategoryDefinition1 to - // productCategoryDefinition - createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition2, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createSubCategory.getErrorCode().intValue()); - subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(), SubCategoryDefinition.class); - assertEquals("Check category name after creating category ", productSubCategoryDefinition2.getName(), - subCategory.getName()); - productSubCategoryDefinition2 = subCategory; - productCategoryDefinition.addSubCategory(productSubCategoryDefinition2); - - // Init product productSubCategoryDefinition3 to - // productCategoryDefinition2 - createSubCategory = CategoryRestUtils.createSubCategory(productSubCategoryDefinition3, - productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createSubCategory.getErrorCode().intValue()); - subCategory = ResponseParser.parseToObject(createSubCategory.getResponse(), SubCategoryDefinition.class); - assertEquals("Check category name after creating category ", productSubCategoryDefinition3.getName(), - subCategory.getName()); - productSubCategoryDefinition3 = subCategory; - productCategoryDefinition2.addSubCategory(productSubCategoryDefinition3); - } - - @Test - public void createProductGroupCategorySuccess() throws Exception { - createGroupingSuccess(productGroupingDefinition, productSubCategoryDefinition, productCategoryDefinition, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE, AUDIT_PRODUCT_TYPE); - } - - private void createGroupingSuccess(GroupingDefinition groupingDefinition, - SubCategoryDefinition subCategoryDefinition, CategoryDefinition categoryDefinition, - User sdncProductStrategistUserDetails, String productComponentType, String auditType) throws Exception { - - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(groupingDefinition, subCategoryDefinition, - categoryDefinition, sdncProductStrategistUserDetails, productComponentType); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("grouping1"); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - productComponentType); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, categoryDefinition.getUniqueId(), - subCategoryDefinition.getUniqueId(), groupingDefinition); - - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, categoryDefinition, subCategoryDefinition, - groupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, auditType); - } - - //// Benny - - @Test - public void createProductGroupByProductStrategist() throws Exception { - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("grouping1"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void createProductGroupAlreadyExistInSameCategorySubCategory() throws Exception { - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("grouping1"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - // Create Same Group already exist on same Category/SubCategory - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_ALREADY_EXISTS, - createGroupingRest.getErrorCode().intValue()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_GROUPING_EXISTS_FOR_SUB_CATEGORY, STATUS_CODE_ALREADY_EXISTS, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, productGroupingDefinition.getName(), productSubCategoryDefinition.getName()); - } - - @Test - public void createProductGroupUnderSameCategoryButDifferentSubCategory() throws Exception { - // Setting : Category-A, Sub-category-B , group : aBcd (display-Name : - // ABcd, normalized: abcd) ïƒ [A, B, ABcd] - // Action : Category-A, Sub-category-C, group : abcD (display-Name : - // ABcd, normalized: abcd) ïƒ [A, C, ABcd] - productGroupingDefinition.setName("ABCd"); - productGroupingDefinition2.setName("abcD"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition2, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition2.setName("ABCd"); - productGroupingDefinition2.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, - productSubCategoryDefinition2, productGroupingDefinition2, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition2.getUniqueId(), - productGroupingDefinition2); - } - - @Test - public void createProductGroupUnderSameSubCategoryButDifferentCategory() throws Exception { - // Setting : Category-A, Sub-category-B , group : aBcd (display-Name : - // ABcd, normalized: abcd) ïƒ [A, B, ABcd] - // : Category-A, Sub-category-C, group : abcD (display-Name : ABcd, - // normalized: abcd) ïƒ [A, C, ABcd] - // : Category-K, Sub-category-B, group : abcD (display-Name : ABcd, - // normalized: abcd) ïƒ [K, B, ABcd] - productGroupingDefinition.setName("ABCd"); - productGroupingDefinition2.setName("abcD"); - productGroupingDefinition3.setName("aBCd"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition2, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition2.setName("ABCd"); - productGroupingDefinition2.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, - productSubCategoryDefinition2, productGroupingDefinition2, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition3, productSubCategoryDefinition3, - productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition3.setName("ABCd"); - productGroupingDefinition3.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition3); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition2, - productSubCategoryDefinition3, productGroupingDefinition3, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition2.getUniqueId(), - productGroupingDefinition2); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition2.getUniqueId(), productSubCategoryDefinition3.getUniqueId(), - productGroupingDefinition3); - - } - - @Test - public void createProductGroupsOnSameCategorySubCategory() throws Exception { - // Setting : Category-A, Sub-category-B , group : ABcd (display-Name : - // ABcd, normalized: abcd) [A ,B, ABcd] - // Action : Category-A, Sub-category-B, group : ZXcv (display-Name : - // ZXcv, normalized: zxcv) [A, B, ZXcv] - productGroupingDefinition.setName("ABcd"); - productGroupingDefinition2.setName("ZXcv"); - productGroupingDefinition2.setNormalizedName("zxcv"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition2, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition2); - } - - @Test - public void createProductGroupUnderDifferentCategory() throws Exception { - // Setting : Category-A, Sub-category-B , group : aBcd (display-Name : - // ABcd, normalized: abcd) [A ,B, ABcd] - // Action : Category-K, Sub-category-B, group : abcD (display-Name : - // ABcd, normalized: abcd) [K, B, ABcd] - // productGroupingDefinition.setName("ABCd"); - productGroupingDefinition.setName("ABcD"); - productGroupingDefinition2.setName("abcD"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("abcd"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - DbUtils.deleteFromEsDbByPattern("_all"); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition2, productSubCategoryDefinition3, - productCategoryDefinition2, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition2.setNormalizedName("abcd"); - productGroupingDefinition2.setName("ABcD"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition2); - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition2, - productSubCategoryDefinition3, productGroupingDefinition2, sdncProductStrategistUserDetails, - STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition2.getUniqueId(), productSubCategoryDefinition3.getUniqueId(), - productGroupingDefinition2); - } - - /////////// - @Test - public void createProductGroupByNonProductStrategist() throws Exception { - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_RESTRICTED_OPERATION, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncAdminUserDetails, ActionStatus.RESTRICTED_OPERATION, - STATUS_CODE_RESTRICTED_OPERATION, AUDIT_PRODUCT_TYPE); - } - - // @Ignore("DE176245") - @Test - public void createProductGroupForNonExistingComponentType() throws Exception { - String nonSupportedComponentType = "NonExistingComponentType"; // instead - // resource/product - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - nonSupportedComponentType); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, nonSupportedComponentType); - } - - // @Ignore("DE176245") - @Test - public void createResourceGroup() throws Exception { - // Resource doesn't have group - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, AUDIT_RESOURCE_TYPE); - } - - // @Ignore("DE176245") - @Test - public void createServiceGroup() throws Exception { - // Service doesn't have group - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE); - } - - @Test - public void createProductGroupForNonExistingCategory() throws Exception { - - CategoryDefinition productCategoryDefinition100 = new CategoryDefinition(); - productCategoryDefinition100.setName("category.nonexistingCategory"); - productCategoryDefinition100.setUniqueId("category.nonexistingCategory"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition100, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_NOT_FOUND, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - productSubCategoryDefinition.setName(productSubCategoryDefinition.getUniqueId()); - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition100, - productSubCategoryDefinition, productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_CATEGORY_NOT_FOUND, STATUS_CODE_NOT_FOUND, AUDIT_PRODUCT_TYPE, - PRODUCT_COMPONENT_TYPE, CATEGORY, ""); - } - - @Test - public void createProductGroupForNonExistingSunCategory() throws Exception { - throw new SkipException( - "Skipping - failed in audit validation expected \"products\" actual result was \"product\" "); - // SubCategoryDefinition productSubCategoryDefinition100 = new - // SubCategoryDefinition(); - // productSubCategoryDefinition100.setUniqueId("category.nonexistingSubCategory"); - // RestResponse createGroupingRest = - // CategoryRestUtils.createGrouping(productGroupingDefinition, - // productSubCategoryDefinition100, productCategoryDefinition, - // sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - // assertEquals("Check response code after create Sub category", - // STATUS_CODE_NOT_FOUND, createGroupingRest.getErrorCode().intValue()); - // RestResponse getAllCategoriesRest = - // CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - // PRODUCT_COMPONENT_TYPE); - // assertEquals("Check response code after get all categories ", - // STATUS_CODE_SUCCESS, getAllCategoriesRest.getErrorCode().intValue()); - // CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - // productCategoryDefinition.getUniqueId(), - // productSubCategoryDefinition.getUniqueId(), - // productGroupingDefinition); - // //Audit validation - // productSubCategoryDefinition100.setName(productSubCategoryDefinition100.getUniqueId()); - // AuditValidationUtils.groupingAuditFailure(ADD_GROUPING , - // productCategoryDefinition, productSubCategoryDefinition100, - // productGroupingDefinition, sdncProductStrategistUserDetails, - // ActionStatus.COMPONENT_CATEGORY_NOT_FOUND, - // STATUS_CODE_NOT_FOUND,AUDIT_PRODUCT_TYPE, PRODUCT_COMPONENT_TYPE, - // SUB_CATEGORY, ""); - } - - @Test - public void ProductGroupAllowedcharacters_01() throws Exception { - productGroupingDefinition.setName("1234AbcdE-"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde-"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_02() throws Exception { - productGroupingDefinition.setName("1234AbcdE+"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde+"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_03() throws Exception { - productGroupingDefinition.setName("1234AbcdE&"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde&"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_04() throws Exception { - productGroupingDefinition.setName("1234AbcdE-"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde-"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_05() throws Exception { - productGroupingDefinition.setName("1234AbcdE+"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde+"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_06() throws Exception { - productGroupingDefinition.setName("1234AbcdE."); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde."); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_07() throws Exception { - productGroupingDefinition.setName("1234AbcdE'"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde'"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_08() throws Exception { - productGroupingDefinition.setName("1234AbcdE="); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde="); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_09() throws Exception { - productGroupingDefinition.setName("1234AbcdE:"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde:"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_10() throws Exception { - productGroupingDefinition.setName("1234AbcdE@"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde@"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_11() throws Exception { - productGroupingDefinition.setName("1234AbcdE_"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde_"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_12() throws Exception { - productGroupingDefinition.setName("1234AbcdE#"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("1234abcde#"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void ProductGroupAllowedcharacters_13() throws Exception { - productGroupingDefinition.setName("1234AbcdE d"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("1234AbcdE D"); - productGroupingDefinition.setNormalizedName("1234abcde d"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveSpaceFromBeginning() throws Exception { - productGroupingDefinition.setName(" Category01"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("category01"); - productGroupingDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveSpaceFromEnd() throws Exception { - productGroupingDefinition.setName("Category01 "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("category01"); - productGroupingDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraSpace() throws Exception { - productGroupingDefinition.setName("Category 02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("category 02"); - productGroupingDefinition.setName("Category 02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraAmpersand() throws Exception { - productGroupingDefinition.setName("Category&& &02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("category& &02"); - productGroupingDefinition.setName("Category& &02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraDash() throws Exception { - productGroupingDefinition.setName("CategorY-- --02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("category- -02"); - productGroupingDefinition.setName("CategorY- -02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraPlus() throws Exception { - productGroupingDefinition.setName("CateGory++++ +02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("CateGory+ +02"); - productGroupingDefinition.setNormalizedName("category+ +02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraPeriod() throws Exception { - productGroupingDefinition.setName("Category.... .02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category. .02"); - productGroupingDefinition.setNormalizedName("category. .02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraApostrophe() throws Exception { - productGroupingDefinition.setName("CaTegory''' '02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("CaTegory' '02"); - productGroupingDefinition.setNormalizedName("category' '02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraHashtag() throws Exception { - productGroupingDefinition.setName("Category### #02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category# #02"); - productGroupingDefinition.setNormalizedName("category# #02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtrEequal() throws Exception { - productGroupingDefinition.setName("Category=== =02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category= =02"); - productGroupingDefinition.setNormalizedName("category= =02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtrColon() throws Exception { - productGroupingDefinition.setName("Category::: :02"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category: :02"); - productGroupingDefinition.setNormalizedName("category: :02"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtrAt() throws Exception { - productGroupingDefinition.setName("Category@@@ @a2"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category@ @a2"); - productGroupingDefinition.setNormalizedName("category@ @a2"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_RemoveExtraUnderscore() throws Exception { - productGroupingDefinition.setName("Category___ _22"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Category_ _22"); - productGroupingDefinition.setNormalizedName("category_ _22"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_FirstWordStartWithNumber() throws Exception { - productGroupingDefinition.setName("1Category one"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("1Category One"); - productGroupingDefinition.setNormalizedName("1category one"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_FirstWordStartWithNonAlphaNumeric() throws Exception { // The - // first - // word - // must - // start - // with - // an - // alpha-numeric - // character - // [a-Z - // A..Z, - // 0..9] - char invalidChars[] = { '&', '-', '+', '.', '\'', '#', '=', ':', '@', '_' }; - RestResponse createGroupingRest; - RestResponse getAllCategoriesRest; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - productGroupingDefinition.setName(invalidChars[i] + "AbcD123"); - productGroupingDefinition.setNormalizedName((invalidChars[i] + "AbcD123").toLowerCase()); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - } - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_01() throws Exception { - productGroupingDefinition.setName("At and T"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("At & T"); - productGroupingDefinition.setNormalizedName("at & t"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_02() throws Exception { - productGroupingDefinition.setName("At and t"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("At & T"); - productGroupingDefinition.setNormalizedName("at & t"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_03() throws Exception { - productGroupingDefinition.setName("Atand T"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("atand t"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_04() throws Exception { - productGroupingDefinition.setName("At andT"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("at andt"); - productGroupingDefinition.setName("At AndT"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_05() throws Exception { - productGroupingDefinition.setName(" and AttT"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("and attt"); - productGroupingDefinition.setName("And AttT"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_06() throws Exception { - productGroupingDefinition.setName("AttT and "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("attt and"); - productGroupingDefinition.setName("AttT And"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidation_ReplaceAndWithAmpersand_07() throws Exception { - productGroupingDefinition.setName(" and a"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("and a"); - productGroupingDefinition.setName("And a"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationMaxLength() throws Exception { - productGroupingDefinition.setName("AsdfghjQ234567890@#.&:+-_"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("asdfghjq234567890@#.&:+-_"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationMaxLengthAfterNormalization() throws Exception { - productGroupingDefinition.setName(" A jQ234 @@@___ +++ At and T and and "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("a jq234 @_ + at & t & and"); - productGroupingDefinition.setName("A JQ234 @_ + At & T & And"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationExceedMaxLengthAfterNormalization() throws Exception { - productGroupingDefinition.setName(" AbdfghBCVa jQ234 @@___ +++ At and T "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("abdfghbcva jq234 @_ + at&t"); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, GROUPING); - } - - @Test - public void groupNameValidationMinLengthAfterNormalization() throws Exception { - productGroupingDefinition.setName(" At&&&&&&&&&&&&t "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("at&t"); - productGroupingDefinition.setName("At&t"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationLessThanMinLengthAfterNormalization() throws Exception { - productGroupingDefinition.setName(" A&&&&&&&&&&&&T "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("a&t"); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, GROUPING); - } - - @Test - public void groupNameValidationIsEmpty() throws Exception { - productGroupingDefinition.setName(""); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName(""); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, GROUPING); - } - - @Test - public void groupNameValidationInvalidCharacters() throws Exception { - RestResponse createGroupingRest; - RestResponse getAllCategoriesRest; - char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', - '|', '\\', ',' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - productGroupingDefinition.setName("AbcD123" + invalidChars[i]); - createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_INVALID_CONTENT, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName(""); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditFailure(ADD_GROUPING, productCategoryDefinition, - productSubCategoryDefinition, productGroupingDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, GROUPING); - } - } - - @Test - public void groupNameValidationConjunctions_01() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" bank OF america "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setNormalizedName("bank of america"); - productGroupingDefinition.setName("Bank of America"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_02() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName("THE america bank "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("THE America Bank"); - productGroupingDefinition.setNormalizedName("the america bank"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_03() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" A bank OF america "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("A Bank of America"); - productGroupingDefinition.setNormalizedName("a bank of america"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_04() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" bank america is A big ban "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Bank America Is a Big Ban"); - productGroupingDefinition.setNormalizedName("bank america is a big ban"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_05() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" aN apple comPany inC "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("AN Apple ComPany InC"); - productGroupingDefinition.setNormalizedName("an apple company inc"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_06() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" eat AN apple ANAN"); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Eat an Apple ANAN"); - productGroupingDefinition.setNormalizedName("eat an apple anan"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_07() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" united states OF americA "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("United States of AmericA"); - productGroupingDefinition.setNormalizedName("united states of america"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_08() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" oF united states OF amer "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("OF United States of Amer"); - productGroupingDefinition.setNormalizedName("of united states of amer"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_09() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" to Apple TO at&T TOO "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("To Apple to At&T TOO"); - productGroupingDefinition.setNormalizedName("to apple to at&t too"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_10() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" eat apple AS you liiikeas "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Eat Apple as You Liiikeas"); - productGroupingDefinition.setNormalizedName("eat apple as you liiikeas"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_11() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" as you may want "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("As You May Want"); - productGroupingDefinition.setNormalizedName("as you may want"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_12() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" the bank OF america "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("The Bank of America"); - productGroupingDefinition.setNormalizedName("the bank of america"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_13() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" To tel-toto "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("To Tel-toto"); - productGroupingDefinition.setNormalizedName("to tel-toto"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void groupNameValidationConjunctions_14() throws Exception { - // Normalize the grouping name conjunctions ('of', 'to', 'for', 'as', - // 'a', 'an' , 'the') are lower case. - productGroupingDefinition.setName(" tel-aviv To la "); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create product group", STATUS_CODE_CREATED, - createGroupingRest.getErrorCode().intValue()); - productGroupingDefinition.setName("Tel-aviv to La"); - productGroupingDefinition.setNormalizedName("tel-aviv to la"); - CategoryValidationUtils.validateCreateGroupResponse(createGroupingRest, productGroupingDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - AuditValidationUtils.groupingAuditSuccess(ADD_GROUPING, productCategoryDefinition, productSubCategoryDefinition, - productGroupingDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, AUDIT_PRODUCT_TYPE); - } - - @Test - public void createProductGroupHttpCspUserIdIsEmpty() throws Exception { - User sdncPS = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1); - sdncPS.setUserId(""); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncPS, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_GROUPING); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(productCategoryDefinition.getUniqueId()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(productSubCategoryDefinition.getUniqueId()); - expectedCatrgoryAuditJavaObject.setGroupingName(productGroupingDefinition.getName()); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_PRODUCT_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_GROUPING); - } - - @Test - public void createProductGroupHttpCspUserIdIsNull() throws Exception { - User sdncPS = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1); - sdncPS.setUserId(null); - RestResponse createGroupingRest = CategoryRestUtils.createGrouping(productGroupingDefinition, - productSubCategoryDefinition, productCategoryDefinition, sdncPS, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createGroupingRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifyGroupingNotExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition.getUniqueId(), - productGroupingDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_GROUPING); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(productCategoryDefinition.getUniqueId()); - expectedCatrgoryAuditJavaObject.setSubCategoryName(productSubCategoryDefinition.getUniqueId()); - expectedCatrgoryAuditJavaObject.setGroupingName(productGroupingDefinition.getName()); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_PRODUCT_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_GROUPING); - } - - //////////////////////////////////////////////// - /////////////////////////////////////////////// - @Test - public void getProductCategoryHierarchySuccessFlow() throws Exception { - throw new SkipException( - "Skipping - failed in audit validation expected \"products\" actual result was \"product\" "); - // int numOfGrouping = 3; - // List<GroupingDefinition> groupingList = new ArrayList<>(); - // RestResponse restResponse; - // GroupingDefinition grouping; - // String groupingName = productGroupingDefinition.getName(); - // for (int i = 0; i < numOfGrouping; i++) { - // productGroupingDefinition.setName(groupingName+i); - // restResponse = - // CategoryRestUtils.createGrouping(productGroupingDefinition, - // productSubCategoryDefinition, productCategoryDefinition, - // sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - // grouping = ResponseParser.parseToObject(restResponse.getResponse(), - // GroupingDefinition.class); - // groupingList.add(grouping); - // } - // RestResponse getAllCategoriesRest = - // CategoryRestUtils.getAllCategories(sdncProductStrategistUserDetails, - // PRODUCT_COMPONENT_TYPE); - // assertEquals("Check response code after get all categories ", - // STATUS_CODE_SUCCESS, getAllCategoriesRest.getErrorCode().intValue()); - // AuditValidationUtils.GetCategoryHierarchyAuditSuccess(GET_CATEGORY_HIERARCHY, - // AUDIT_PRODUCT_TYPE, sdncProductStrategistUserDetails, - // STATUS_CODE_SUCCESS); - // - // for (GroupingDefinition group : groupingList) { - // CategoryValidationUtils.verifyGroupingExistInGetResponse(getAllCategoriesRest, - // productCategoryDefinition.getUniqueId(), - // productSubCategoryDefinition.getUniqueId(), group); - // } - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/SubCategoriesTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/SubCategoriesTest.java deleted file mode 100644 index dd96ebfc2f..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/category/SubCategoriesTest.java +++ /dev/null @@ -1,1907 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.category; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.PRODUCT_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.RESOURCE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.SERVICE_COMPONENT_TYPE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_ALREADY_EXISTS; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_CREATED; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_MISSING_INFORMATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_NOT_FOUND; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.be.model.category.SubCategoryDefinition; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedCategoryAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.CategoryValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class SubCategoriesTest extends ComponentBaseTest { - - protected static final String ADD_SUB_CATEGORY = "AddSubCategory"; - protected static final String CATEGORY = "category"; - protected static final String SUB_CATEGORY = "sub-category"; - - protected static final String AUDIT_SERVICE_TYPE = "Service"; - protected static final String AUDIT_RESOURCE_TYPE = "Resource"; - protected static final String AUDIT_PRODUCT_TYPE = "Product"; - protected static final String GET_CATEGORY_HIERARCHY = "GetCategoryHierarchy"; - protected static User sdncAdminUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - protected static User sdncAdminUserDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - protected static User sdncDesignerUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected static User sdncTesterUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - protected static User sdncGovernorUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - protected static User sdncOpsUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - protected static User sdncProductManagerUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - protected static User sdncProductStrategistUserDetails = ElementFactory - .getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1); - - public SubCategoriesTest() { - super(name, SubCategoriesTest.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - - private CategoryDefinition resourceCategoryDefinition; - private CategoryDefinition resourceCategoryDefinition1; - private CategoryDefinition serviceCategoryDefinition; - private CategoryDefinition productCategoryDefinition; - private CategoryDefinition productCategoryDefinition1; - private CategoryDefinition resourceCategoryDefinition100; - private CategoryDefinition productCategoryDefinition200; - - private SubCategoryDefinition resourceSubCategoryDefinition; - private SubCategoryDefinition resourceSubCategoryDefinition1; - private SubCategoryDefinition serviceSubCategoryDefinition; - private SubCategoryDefinition productSubCategoryDefinition; - private SubCategoryDefinition productSubCategoryDefinition1; - - @BeforeMethod - public void init() throws Exception { - - // Category setup - resourceCategoryDefinition = new CategoryDefinition(); - resourceCategoryDefinition1 = new CategoryDefinition(); - serviceCategoryDefinition = new CategoryDefinition(); - productCategoryDefinition = new CategoryDefinition(); - productCategoryDefinition1 = new CategoryDefinition(); - resourceCategoryDefinition100 = new CategoryDefinition(); // for - // negative - // tests - productCategoryDefinition200 = new CategoryDefinition(); // for negative - // tests - - resourceCategoryDefinition.setName("Category1"); - resourceCategoryDefinition1.setName("Category2"); - serviceCategoryDefinition.setName("Category1"); - productCategoryDefinition.setName("Category2"); - productCategoryDefinition1.setName("Category3"); - resourceCategoryDefinition100.setName("Category100"); - productCategoryDefinition200.setName("Category100"); - - // Subcategory setup - resourceSubCategoryDefinition = new SubCategoryDefinition(); - resourceSubCategoryDefinition1 = new SubCategoryDefinition(); - serviceSubCategoryDefinition = new SubCategoryDefinition(); - productSubCategoryDefinition = new SubCategoryDefinition(); - productSubCategoryDefinition1 = new SubCategoryDefinition(); - - resourceSubCategoryDefinition.setName("Resource-subcat"); - // Service sub - for negative testing since it's not allowed - serviceSubCategoryDefinition.setName("Service-subcat"); - productSubCategoryDefinition.setName("Product-subcat"); - - // Init resource category - RestResponse createCategory = CategoryRestUtils.createCategory(resourceCategoryDefinition, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - CategoryDefinition category = ResponseParser.parseToObject(createCategory.getResponse(), - CategoryDefinition.class); - assertEquals("Check category name after creating category ", resourceCategoryDefinition.getName(), - category.getName()); - resourceCategoryDefinition = category; - - // Init resource category1 - createCategory = CategoryRestUtils.createCategory(resourceCategoryDefinition1, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class); - assertEquals("Check category name after creating category ", resourceCategoryDefinition1.getName(), - category.getName()); - resourceCategoryDefinition1 = category; - - // Init service category - createCategory = CategoryRestUtils.createCategory(serviceCategoryDefinition, sdncAdminUserDetails, - SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class); - assertEquals("Check category name after creating category ", serviceCategoryDefinition.getName(), - category.getName()); - serviceCategoryDefinition = category; - - // Init product category - createCategory = CategoryRestUtils.createCategory(productCategoryDefinition, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class); - assertEquals("Check category name after creating category ", productCategoryDefinition.getName(), - category.getName()); - productCategoryDefinition = category; - - // Init product category1 - createCategory = CategoryRestUtils.createCategory(productCategoryDefinition1, sdncProductStrategistUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create category", STATUS_CODE_CREATED, - createCategory.getErrorCode().intValue()); - category = ResponseParser.parseToObject(createCategory.getResponse(), CategoryDefinition.class); - assertEquals("Check category name after creating category ", productCategoryDefinition1.getName(), - category.getName()); - productCategoryDefinition1 = category; - - } - - @Test - public void createResourceSubCategorySuccess() throws Exception { - createSubCategorySuccess(resourceCategoryDefinition, resourceSubCategoryDefinition, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE, AUDIT_RESOURCE_TYPE); - } - - @Test - public void createProductSubCategorySuccess() throws Exception { - createSubCategorySuccess(productCategoryDefinition, productSubCategoryDefinition, - sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE, AUDIT_PRODUCT_TYPE); - } - - @Test - public void createProductSubCategoryTwoCategoriesCaseInsensitive() throws Exception { - String componentType = PRODUCT_COMPONENT_TYPE; - String auditType = AUDIT_PRODUCT_TYPE; - User user = sdncProductStrategistUserDetails; - // Create product sub Category2-->Product-subcat - createSubCategorySuccess(productCategoryDefinition, productSubCategoryDefinition, user, componentType, - auditType); - DbUtils.deleteFromEsDbByPattern("_all"); - - // Create product sub Category3-->PRoDUCT-SUBcat - // Should be created Category3-->Product-subcat - productSubCategoryDefinition1.setName("PRoDUCT-SUBcat"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition1, - productCategoryDefinition1, user, componentType); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(user, componentType); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - productSubCategoryDefinition1.setName(productSubCategoryDefinition.getName()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition1.getUniqueId(), productSubCategoryDefinition1); - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, productCategoryDefinition1, - productSubCategoryDefinition1, user, STATUS_CODE_CREATED, auditType); - } - - // Benny - @Test - public void createResourceSubCategoryAlreadyExistInDifferentResourceCategory() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - DbUtils.deleteFromEsDbByPattern("_all"); - resourceSubCategoryDefinition1.setName("ResourcE-subCat"); - createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition1, - resourceCategoryDefinition1, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - resourceSubCategoryDefinition1.setName(resourceSubCategoryDefinition.getName()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition1.getUniqueId(), resourceSubCategoryDefinition1); // also - // set - // catalog - // uniqeId - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition1, - resourceSubCategoryDefinition1, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void createProductSubCategoryAlreadyExistInDifferentProductCategory() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, - AUDIT_PRODUCT_TYPE); - DbUtils.deleteFromEsDbByPattern("_all"); - productSubCategoryDefinition1.setName("PRoDUCT-SUBcat"); - createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition1, - productCategoryDefinition1, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - productSubCategoryDefinition1.setName(productSubCategoryDefinition.getName()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition1.getUniqueId(), productSubCategoryDefinition1); // also - // set - // catalog - // uniqeId - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, productCategoryDefinition1, - productSubCategoryDefinition1, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, - AUDIT_PRODUCT_TYPE); - } - - @Test - public void createResourceSubCategoryAlreadyExistInCategory() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - DbUtils.deleteFromEsDbByPattern("_all"); - resourceSubCategoryDefinition1.setName("ResourcE-subCat"); - createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition1, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_ALREADY_EXISTS, - createSubCategoryRest.getErrorCode().intValue()); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition1, sdncAdminUserDetails, - ActionStatus.COMPONENT_SUB_CATEGORY_EXISTS_FOR_CATEGORY, STATUS_CODE_ALREADY_EXISTS, - AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, resourceSubCategoryDefinition1.getName(), - resourceCategoryDefinition.getName()); - } - - @Test - public void createProductSubCategoryAlreadyExistInCategory() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, - AUDIT_PRODUCT_TYPE); - DbUtils.deleteFromEsDbByPattern("_all"); - productSubCategoryDefinition1.setName("ProducT-subCat"); - createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition1, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_ALREADY_EXISTS, - createSubCategoryRest.getErrorCode().intValue()); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition1, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_SUB_CATEGORY_EXISTS_FOR_CATEGORY, STATUS_CODE_ALREADY_EXISTS, AUDIT_PRODUCT_TYPE, - AUDIT_PRODUCT_TYPE, productSubCategoryDefinition1.getName(), productCategoryDefinition.getName()); - } - - @Test - public void addSameNormalizedSubCategoryNameForRecourceAndProductCategory() throws Exception { - // add sub-categoty name "SubCaT" to resource category - // add sub-categoty name "SUbcAt" to product category - resourceSubCategoryDefinition.setName("SubCaT"); // normalized 'subcat' - productSubCategoryDefinition.setName("SUbcAt"); // normalized 'subcat' - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - - DbUtils.deleteFromEsDbByPattern("_all"); - createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncProductStrategistUserDetails, STATUS_CODE_CREATED, - AUDIT_PRODUCT_TYPE); - } - - @Test - public void createResourceSubCategoryByNonAdminUser() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncTesterUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_RESTRICTED_OPERATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - resourceCategoryDefinition.setName(resourceCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncTesterUserDetails, ActionStatus.RESTRICTED_OPERATION, - STATUS_CODE_RESTRICTED_OPERATION, AUDIT_RESOURCE_TYPE); - } - - @Test - public void createResourceSubCategoryByProducStrategistUser() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncProductStrategistUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_RESTRICTED_OPERATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - resourceCategoryDefinition.setName(resourceCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncProductStrategistUserDetails, ActionStatus.RESTRICTED_OPERATION, - STATUS_CODE_RESTRICTED_OPERATION, AUDIT_RESOURCE_TYPE); - } - - @Test - public void createProductSubCategoryByNonProducStrategistUser() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncDesignerUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_RESTRICTED_OPERATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncDesignerUserDetails, ActionStatus.RESTRICTED_OPERATION, - STATUS_CODE_RESTRICTED_OPERATION, AUDIT_PRODUCT_TYPE); - } - - @Test - public void createProductSubCategoryByAdminUser() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncAdminUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_RESTRICTED_OPERATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.RESTRICTED_OPERATION, - STATUS_CODE_RESTRICTED_OPERATION, AUDIT_PRODUCT_TYPE); - } - - // @Ignore("DE176245") - @Test - public void createResourceSubCategoryForNonExistingComponentType() throws Exception { - String nonSupportedComponentType = "NonExistingComponentType"; // instead - // resource/product - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, nonSupportedComponentType); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - resourceCategoryDefinition.setName(resourceCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, nonSupportedComponentType); - } - - // @Ignore("DE176245") - @Test - public void createProductSubCategoryForNonExistingComponentType() throws Exception { - String nonSupportedComponentType = "NonExistingComponentType"; // instead - // resource/product - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, nonSupportedComponentType); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, nonSupportedComponentType); - } - - @Test - public void createServiceSubCategoryByAdmin() throws Exception { - // Service doesn't have sub-category - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - resourceCategoryDefinition.setName(resourceCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE); - } - - @Test - public void createServiceSubCategoryByProductStrategist() throws Exception { - // Service doesn't have sub-category - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition, sdncProductStrategistUserDetails, SERVICE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - productCategoryDefinition.getUniqueId(), productSubCategoryDefinition); - // Audit validation - productCategoryDefinition.setName(productCategoryDefinition.getUniqueId()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition, - productSubCategoryDefinition, sdncProductStrategistUserDetails, ActionStatus.INVALID_CONTENT, - STATUS_CODE_INVALID_CONTENT, AUDIT_SERVICE_TYPE); - } - - @Test - public void createResourceSubCategoryForNonExistingCategory() throws Exception { - resourceCategoryDefinition100.setUniqueId(resourceCategoryDefinition100.getName()); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition100, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_NOT_FOUND, - createSubCategoryRest.getErrorCode().intValue()); - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition100, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.COMPONENT_CATEGORY_NOT_FOUND, - STATUS_CODE_NOT_FOUND, AUDIT_RESOURCE_TYPE, RESOURCE_COMPONENT_TYPE, CATEGORY, ""); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition100.getUniqueId(), resourceSubCategoryDefinition); - } - - @Test - public void createProductSubCategoryForNonExistingCategory() throws Exception { - productCategoryDefinition200.setUniqueId(productCategoryDefinition200.getName()); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(productSubCategoryDefinition, - productCategoryDefinition200, sdncProductStrategistUserDetails, PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_NOT_FOUND, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - PRODUCT_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - productCategoryDefinition200.getUniqueId(), productSubCategoryDefinition); - // Audit validation // need to change ActionStatus - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, productCategoryDefinition200, - productSubCategoryDefinition, sdncProductStrategistUserDetails, - ActionStatus.COMPONENT_CATEGORY_NOT_FOUND, STATUS_CODE_NOT_FOUND, AUDIT_PRODUCT_TYPE, - PRODUCT_COMPONENT_TYPE, CATEGORY, ""); - } - - // pass - @Test - public void subCategoryAllowedcharacters_01() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE-"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); // also - // set - // catalog - // uniqeId - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - // pass - @Test - public void subCategoryAllowedcharacters_02() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE+"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_03() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE&"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_04() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE."); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_05() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE'"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_06() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE="); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_07() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE:"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_08() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE@"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_09() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE_"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_10() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE#"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_11() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE d"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("1234AbcdE D"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryAllowedcharacters_12() throws Exception { - resourceSubCategoryDefinition.setName("1234AbcdE &_=+.-'#:@ d"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("1234AbcdE &_=+.-'#:@ D"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveSpaceFromBeginning() throws Exception { - resourceSubCategoryDefinition.setName(" Category01"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveSpaceFromEnd() throws Exception { - resourceSubCategoryDefinition.setName("Category01 "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category01"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraSpace() throws Exception { - resourceSubCategoryDefinition.setName("Category 02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category 02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraAmpersand() throws Exception { - resourceSubCategoryDefinition.setName("Category&& &02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category& &02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraDash() throws Exception { - resourceSubCategoryDefinition.setName("CategorY-- --02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("CategorY- -02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraPlus() throws Exception { - resourceSubCategoryDefinition.setName("CateGory++++ +02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("CateGory+ +02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraPeriod() throws Exception { - resourceSubCategoryDefinition.setName("Category.... .02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category. .02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraApostrophe() throws Exception { - resourceSubCategoryDefinition.setName("CaTegory''' '02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("CaTegory' '02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraHashtag() throws Exception { - resourceSubCategoryDefinition.setName("Category### #02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category# #02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtrEequal() throws Exception { - resourceSubCategoryDefinition.setName("Category=== =02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category= =02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtrColon() throws Exception { - resourceSubCategoryDefinition.setName("Category::: :02"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category: :02"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtrAt() throws Exception { - resourceSubCategoryDefinition.setName("Category@@@ @a2"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category@ @a2"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryRemoveExtraUnderscore() throws Exception { - resourceSubCategoryDefinition.setName("Category___ _22"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Category_ _22"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryFirstWordStartWithNumber() throws Exception { - resourceSubCategoryDefinition.setName("1Category one"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("1Category One"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - // Bug - // Desc=<ACTION = "AddSubCategory" MODIFIER = "Jimmy Hendrix(jh0003)" - // CATEGORY_NAME = "Category1" SUB_CATEGORY_NAME = "&AbcD123" GROUPING_NAME - // = "" RESOURCE_TYPE = "Resource" STATUS = "400" DESC = "SVC4556: Error: - // Invalid Resource sub-category name format."> - // DESC=SVC4556: Error: InvalidResourcesub-categorynameformat., - // @Ignore - @Test - public void subCategoryFirstWordStartWithNonAlphaNumeric() throws Exception { - // The first word must start with an alpha-numeric character [a-Z A..Z, - // 0..9] - char invalidChars[] = { '&', '-', '+', '.', '\'', '#', '=', ':', '@', '_' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - resourceSubCategoryDefinition.setName(invalidChars[i] + "AbcD123"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, - AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, SUB_CATEGORY); - - } - } - - @Test - public void subCategoryReplaceAndWithAmpersand_01() throws Exception { - resourceSubCategoryDefinition.setName("At and T"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("At & T"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_02() throws Exception { - resourceSubCategoryDefinition.setName("At and t"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("At & T"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_03() throws Exception { - resourceSubCategoryDefinition.setName("Atand T"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_04() throws Exception { - resourceSubCategoryDefinition.setName("At andT"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("At AndT"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_05() throws Exception { - resourceSubCategoryDefinition.setName(" and AttT"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("And AttT"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_06() throws Exception { - resourceSubCategoryDefinition.setName("AttT and "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("AttT And"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryReplaceAndWithAmpersand_07() throws Exception { - resourceSubCategoryDefinition.setName(" and a"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("And a"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationMaxLength() throws Exception { - resourceSubCategoryDefinition.setName("AsdfghjQ234567890@#.&:+-_"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationMaxLengthAfterNormalization() throws Exception { - resourceSubCategoryDefinition.setName(" A jQ234 @@@___ +++ At and T and and "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("A JQ234 @_ + At & T & And"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - // bug : - // Desc=<ACTION = "AddSubCategory" MODIFIER = "Jimmy Hendrix(jh0003)" - // CATEGORY_NAME = "Category1" SUB_CATEGORY_NAME = " AbdfghBCVa jQ234 @@___ - // +++ At and T " GROUPING_NAME = "" RESOURCE_TYPE = "Resource" STATUS = - // "400" DESC = "SVC4555: Error: Invalid Resource sub-category name - // length."> - @Test - public void subCategoryNameValidationExceedMaxLengthAfterNormalization() throws Exception { - resourceSubCategoryDefinition.setName(" AbdfghBCVa jQ234 @@___ +++ At and T "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, - STATUS_CODE_INVALID_CONTENT, AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, SUB_CATEGORY); - } - - @Test - public void subCategoryNameValidationMinLengthAfterNormalization() throws Exception { - resourceSubCategoryDefinition.setName(" AT&&&&&&&&&T "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("AT&T"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - // bug - // Desc=<ACTION = "AddSubCategory" MODIFIER = "Jimmy Hendrix(jh0003)" - // CATEGORY_NAME = "Category1" SUB_CATEGORY_NAME = " A and T " GROUPING_NAME - // = "" RESOURCE_TYPE = "Resource" STATUS = "400" DESC = "SVC4555: Error: - // Invalid Resource sub-category name length."> - @Test - public void subCategoryNameValidationLessThanMinLengthAfterNormalization() throws Exception { - resourceSubCategoryDefinition.setName(" A&&&T "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_LENGTH, - STATUS_CODE_INVALID_CONTENT, AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, SUB_CATEGORY); - } - - @Test - public void subCategoryNameIsEmpty() throws Exception { - resourceSubCategoryDefinition.setName(""); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, - STATUS_CODE_INVALID_CONTENT, AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, SUB_CATEGORY); - } - - // bug - // Desc=<ACTION = "AddSubCategory" MODIFIER = "Jimmy Hendrix(jh0003)" - // CATEGORY_NAME = "Category1" SUB_CATEGORY_NAME = "AbcD123~" GROUPING_NAME - // = "" RESOURCE_TYPE = "Resource" STATUS = "400" DESC = "SVC4556: Error: - // Invalid Resource sub-category name format."> - @Test - public void subCategoryNameValidationInvalidCharacters() throws Exception { - char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', - '|', '\\', ',' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - resourceSubCategoryDefinition.setName("AbcD123" + invalidChars[i]); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_INVALID_CONTENT, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditFailure(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, - ActionStatus.COMPONENT_ELEMENT_INVALID_NAME_FORMAT, STATUS_CODE_INVALID_CONTENT, - AUDIT_RESOURCE_TYPE, AUDIT_RESOURCE_TYPE, SUB_CATEGORY); - } - } - - @Test - public void subCategoryNameValidationFirstLetterOfKeyWordsCapitalized() throws Exception { - resourceSubCategoryDefinition.setName("beNNy shaY michEl"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("BeNNy ShaY MichEl"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_01() throws Exception { - resourceSubCategoryDefinition.setName(" bank OF america "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Bank of America"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_02() throws Exception { - resourceSubCategoryDefinition.setName("THE america bank "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("THE America Bank"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_03() throws Exception { - resourceSubCategoryDefinition.setName(" A bank OF america "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("A Bank of America"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_04() throws Exception { - resourceSubCategoryDefinition.setName(" bank america is A big ban "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Bank America Is a Big Ban"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_05() throws Exception { - resourceSubCategoryDefinition.setName(" aN apple comPany inC "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("AN Apple ComPany InC"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_06() throws Exception { - resourceSubCategoryDefinition.setName(" eat AN apple ANAN"); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Eat an Apple ANAN"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_07() throws Exception { - resourceSubCategoryDefinition.setName(" united states OF americA "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("United States of AmericA"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_08() throws Exception { - resourceSubCategoryDefinition.setName(" oF united states OF amer "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("OF United States of Amer"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_09() throws Exception { - resourceSubCategoryDefinition.setName(" to Apple TO at&T TOO "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("To Apple to At&T TOO"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_10() throws Exception { - resourceSubCategoryDefinition.setName(" eat apple AS you liiikeas "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Eat Apple as You Liiikeas"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_11() throws Exception { - resourceSubCategoryDefinition.setName(" as you may want "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("As You May Want"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_12() throws Exception { - resourceSubCategoryDefinition.setName(" the bank OF america "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("The Bank of America"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_13() throws Exception { - resourceSubCategoryDefinition.setName(" To tel-toto "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("To Tel-toto"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void subCategoryNameValidationConjunctions_14() throws Exception { - resourceSubCategoryDefinition.setName(" tel-aviv To la "); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - resourceSubCategoryDefinition.setName("Tel-aviv to La"); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, resourceSubCategoryDefinition); - - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, resourceCategoryDefinition, - resourceSubCategoryDefinition, sdncAdminUserDetails, STATUS_CODE_CREATED, AUDIT_RESOURCE_TYPE); - } - - @Test - public void createSubCategoryHttpCspUserIdHeaderIsMissing() throws Exception { - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategoryHttpCspAtuUidIsMissing( - resourceSubCategoryDefinition, resourceCategoryDefinition, sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_MISSING_INFORMATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_SUB_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(resourceCategoryDefinition.getUniqueId()); - // String subCategoryName = (resourceSubCategoryDefinition != null ? - // resourceSubCategoryDefinition.getName() : Constants.EMPTY_STRING); - expectedCatrgoryAuditJavaObject.setSubCategoryName(resourceSubCategoryDefinition.getName()); - // String groupingName = (groupingDefinition != null ? - // groupingDefinition.getName() : Constants.EMPTY_STRING); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_RESOURCE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_SUB_CATEGORY); - } - - @Test - public void createSubCategoryHttpCspUserIdIsEmpty() throws Exception { - User sdncAdminUserDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncAdminUserDetails1.setUserId(""); - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails1, RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after create Sub category", STATUS_CODE_MISSING_INFORMATION, - createSubCategoryRest.getErrorCode().intValue()); - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryNotExistsInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), resourceSubCategoryDefinition); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedCategoryAudit expectedCatrgoryAuditJavaObject = new ExpectedCategoryAudit(); - expectedCatrgoryAuditJavaObject.setAction(ADD_SUB_CATEGORY); - expectedCatrgoryAuditJavaObject.setModifier(""); - expectedCatrgoryAuditJavaObject.setCategoryName(resourceCategoryDefinition.getUniqueId()); - // String subCategoryName = (resourceSubCategoryDefinition != null ? - // resourceSubCategoryDefinition.getName() : Constants.EMPTY_STRING); - expectedCatrgoryAuditJavaObject.setSubCategoryName(resourceSubCategoryDefinition.getName()); - // String groupingName = (groupingDefinition != null ? - // groupingDefinition.getName() : Constants.EMPTY_STRING); - expectedCatrgoryAuditJavaObject.setGroupingName(""); - expectedCatrgoryAuditJavaObject.setResourceType(AUDIT_RESOURCE_TYPE); - expectedCatrgoryAuditJavaObject.setStatus(String.valueOf(STATUS_CODE_MISSING_INFORMATION)); - expectedCatrgoryAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - AuditValidationUtils.validateCategoryAudit(expectedCatrgoryAuditJavaObject, ADD_SUB_CATEGORY); - } - - //////////////////////////////////////////////////////////// - private void createSubCategorySuccess(CategoryDefinition categoryDefinition, - SubCategoryDefinition subCategoryDefinition, User sdncAdminUserDetails, String componentType, - String auditType) throws Exception { - - RestResponse createSubCategoryRest = CategoryRestUtils.createSubCategory(subCategoryDefinition, - categoryDefinition, sdncAdminUserDetails, componentType); - assertEquals("Check response code after create Sub category", STATUS_CODE_CREATED, - createSubCategoryRest.getErrorCode().intValue()); - CategoryValidationUtils.validateCreateSubCategoryResponse(createSubCategoryRest, subCategoryDefinition); - // Audit validation - AuditValidationUtils.subCategoryAuditSuccess(ADD_SUB_CATEGORY, categoryDefinition, subCategoryDefinition, - sdncAdminUserDetails, STATUS_CODE_CREATED, auditType); - // get service category and validate that category added as defined - // (also set catalog uniqeId) - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, componentType); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - categoryDefinition.getUniqueId(), subCategoryDefinition); // also - // set - // catalog - // uniqeId - } - - @Test - public void getResourceCategoryHierarchySuccessFlow() throws Exception { - int numOfSubCategories = 3; - List<SubCategoryDefinition> subCategories = new ArrayList(); - RestResponse restResponse; - SubCategoryDefinition subCategory; - String subName = resourceSubCategoryDefinition.getName(); - for (int i = 0; i < numOfSubCategories; i++) { - resourceSubCategoryDefinition.setName(subName + i); - restResponse = CategoryRestUtils.createSubCategory(resourceSubCategoryDefinition, - resourceCategoryDefinition, sdncAdminUserDetails, RESOURCE_COMPONENT_TYPE); - subCategory = ResponseParser.parseToObject(restResponse.getResponse(), SubCategoryDefinition.class); - subCategories.add(subCategory); - } - RestResponse getAllCategoriesRest = CategoryRestUtils.getAllCategories(sdncAdminUserDetails, - RESOURCE_COMPONENT_TYPE); - assertEquals("Check response code after get all categories ", STATUS_CODE_SUCCESS, - getAllCategoriesRest.getErrorCode().intValue()); - AuditValidationUtils.GetCategoryHierarchyAuditSuccess(GET_CATEGORY_HIERARCHY, AUDIT_RESOURCE_TYPE, - sdncAdminUserDetails, STATUS_CODE_SUCCESS); - for (SubCategoryDefinition sub : subCategories) { - CategoryValidationUtils.verifySubCategoryExistInGetResponse(getAllCategoriesRest, - resourceCategoryDefinition.getUniqueId(), sub); - } - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/CRUDExternalAPI.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/CRUDExternalAPI.java deleted file mode 100644 index 52db5bcb36..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/CRUDExternalAPI.java +++ /dev/null @@ -1,3514 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import static java.util.Arrays.asList; - -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.client.HttpResponseException; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpDelete; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.StringEntity; -import org.apache.http.impl.client.BasicResponseHandler; -import org.apache.http.util.EntityUtils; -import org.codehaus.jackson.map.DeserializationConfig; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.SerializationConfig.Feature; -import org.codehaus.jackson.map.annotate.JsonSerialize; -import org.json.simple.JSONObject; -import org.json.simple.parser.JSONParser; -import org.json.simple.parser.ParseException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.config.BeEcompErrorManager; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.AssetTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.DistributionNotificationStatusEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedExternalAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.DistributionValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum; -import org.openecomp.sdc.common.util.GeneralUtility; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.relevantcodes.extentreports.LogStatus; - -import fj.data.Either; - -public class CRUDExternalAPI extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(CRUDExternalAPI.class.getName()); - protected static final String UPLOAD_ARTIFACT_PAYLOAD = "UHVUVFktVXNlci1LZXktRmlsZS0yOiBzc2gtcnNhDQpFbmNyeXB0aW9uOiBhZXMyNTYtY2JjDQpDb21tZW5wOA0K"; - protected static final String UPLOAD_ARTIFACT_NAME = "TLV_prv.ppk"; - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - - - protected Gson gson = new Gson(); - protected JSONParser jsonParser = new JSONParser(); - - - protected String serviceVersion; - protected ResourceReqDetails resourceDetails; - protected User sdncUserDetails; - protected ServiceReqDetails serviceDetails; - - - @BeforeMethod - public void init() throws Exception{ - AtomicOperationUtils.createDefaultConsumer(true); - } - - - @Rule - public static TestName name = new TestName(); - - public CRUDExternalAPI() { - super(name, CRUDExternalAPI.class.getName()); - - } - - - - @DataProvider(name="uploadArtifactOnVfcVlCpViaExternalAPI") - public static Object[][] dataProviderUploadArtifactOnVfcVlCpViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - }; - } - - - - // External API - // Upload artifact on VFC, VL, CP via external API - happy flow - @Test(dataProvider="uploadArtifactOnVfcVlCpViaExternalAPI") - public void uploadArtifactOnVfcVlCpViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s, resourceTypeEnum: %s", chosenLifeCycleState, artifactType, resourceTypeEnum)); - uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, chosenLifeCycleState, artifactType, resourceTypeEnum); - } - - - - - - - - - - - - - - @DataProvider(name="uploadArtifactOnVFViaExternalAPI") - public static Object[][] dataProviderUploadArtifactOnVFViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKOUT, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKIN, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_JSON"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_DOC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"} - }; - } - - - - // External API - // Upload artifact on VF via external API - happy flow - @Test(dataProvider="uploadArtifactOnVFViaExternalAPI") - public void uploadArtifactOnVFViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, chosenLifeCycleState, artifactType, null); - } - - - - - - @DataProvider(name="uploadArtifactOnServiceViaExternalAPI") - public static Object[][] dataProviderUploadArtifactOnServiceViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"} - }; - } - - - - - - @Test(dataProvider="uploadArtifactOnServiceViaExternalAPI") - public void uploadArtifactOnServiceViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.SERVICE, chosenLifeCycleState, artifactType, null); - } - - - @DataProvider(name="uploadArtifactOnServiceViaExternalAPIIncludingDistribution") - public static Object[][] dataProviderUploadArtifactOnServiceViaExternalAPIIncludingDistribution() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - }; - } - - @Test(dataProvider="uploadArtifactOnServiceViaExternalAPIIncludingDistribution") - public void uploadArtifactOnServiceViaExternalAPIIncludingDistribution(LifeCycleStatesEnum chosenLifeCycleState, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.SERVICE, chosenLifeCycleState, artifactType, null); - - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - if(config.getIsDistributionClientRunning()){ - List<String> distributionStatusList = Arrays.asList(DistributionNotificationStatusEnum.DOWNLOAD_OK.toString(), DistributionNotificationStatusEnum.DEPLOY_OK.toString(), DistributionNotificationStatusEnum.NOTIFIED.toString()); - DistributionValidationUtils.validateDistributedArtifactsByAudit((Service)component, distributionStatusList); - } - } - - - // Happy flow - get chosen life cycle state, artifact type and asset type - // Create asset, upload artifact via external API + check audit & response code - // Download artifact via external API + check audit & response code - protected Component uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum componentTypeEnum, LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - Component component = null; - RestResponse restResponse; - int numberOfArtifact = 0; - - // get artifact data - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, false); - - // create component/s & upload artifact via external api - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - - component = getComponentWithResourceInstanceInTargetLifeCycleState(chosenLifeCycleState, resourceTypeEnum); - restResponse = uploadArtifactOfRIIncludingValiditionOfAuditAndResponseCode(component, component.getComponentInstances().get(0), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 200); - - if((LifeCycleStatesEnum.CERTIFICATIONREQUEST == chosenLifeCycleState) && (!component.getComponentType().toString().equals(ComponentTypeEnum.RESOURCE.toString()))) { - numberOfArtifact = (component.getComponentInstances().get(0).getDeploymentArtifacts() == null ? 0 : component.getComponentInstances().get(0).getDeploymentArtifacts().size()) + 1; - } else { - numberOfArtifact = (component.getComponentInstances().get(0).getDeploymentArtifacts() == null ? 0 : component.getComponentInstances().get(0).getDeploymentArtifacts().size()) + 1; - } - } else { - component = getComponentInTargetLifeCycleState(componentTypeEnum.toString(), UserRoleEnum.DESIGNER, chosenLifeCycleState, resourceTypeEnum); - - restResponse = uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 200); - numberOfArtifact = component.getDeploymentArtifacts().size() + 1; - } - - - - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - component = getNewerVersionOfComponent(component, chosenLifeCycleState); - - // Get list of deployment artifact + download them via external API - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - Assert.assertEquals(numberOfArtifact, deploymentArtifacts.keySet().size(), "Expected that number of deployment artifact will be increase by one."); - - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPI(component, deploymentArtifacts.get(responseArtifact.getArtifactLabel()), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentTypeEnum); - - return component; - } - - // Upload artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse uploadArtifactOfRIIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, ComponentInstance componentInstance, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfComponentInstanceOnAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, resourceDetails.getComponentInstances().get(0)); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPLOAD_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, componentInstance.getNormalizedName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - expectedExternalAudit.setRESOURCE_NAME(componentInstance.getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + componentInstance.getNormalizedName() + "/artifacts"); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPLOAD_BY_API.getName(), body); - - return restResponse; - } - - - - - protected Component getComponentWithResourceInstanceInTargetLifeCycleState(LifeCycleStatesEnum lifeCycleStatesEnum, ResourceTypeEnum resourceTypeEnum) throws Exception { - Component component; - if(resourceTypeEnum == ResourceTypeEnum.VF) { - component = getComponentInTargetLifeCycleState(ComponentTypeEnum.SERVICE.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, null); - - Component resourceInstanceDetails = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.getValue(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, null); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceInstanceDetails, component, UserRoleEnum.DESIGNER, true).left().value(); - - // Add artifact to service if asked for certifcationrequest - must be at least one artifact for the flow - if((LifeCycleStatesEnum.CERTIFICATIONREQUEST == lifeCycleStatesEnum) || (LifeCycleStatesEnum.STARTCERTIFICATION == lifeCycleStatesEnum)) { - } - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, component, UserRoleEnum.DESIGNER, true, true).left().value(); - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, lifeCycleStatesEnum, true).getLeft(); - } else { - component = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, null); - Component resourceInstanceDetails = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.getValue(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, resourceTypeEnum); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceInstanceDetails, component, UserRoleEnum.DESIGNER, true).left().value(); - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, lifeCycleStatesEnum, true).getLeft(); - } - - - return component; - } - - - - - // Upload artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfTheAsset(resourceDetails, sdncModifierDetails, artifactReqDetails); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPLOAD_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPLOAD_BY_API.getName(), body); - - return restResponse; - } - - - - // Check Component version (increase by one if not in checkout) - // Input: component, componentLifeCycleState - // for any LifeCycleState != checkout - // find component of version +0.1 - // check that this version different for input version - // check that this component uniqueID different from input uniqueID - // Return: that version - protected Component getNewerVersionOfComponent(Component component, LifeCycleStatesEnum lifeCycleStatesEnum) throws Exception { - Component resourceDetails = null; - - if((!lifeCycleStatesEnum.equals(LifeCycleStatesEnum.CHECKOUT)) && (!lifeCycleStatesEnum.equals(LifeCycleStatesEnum.STARTCERTIFICATION))) { - - - String resourceVersion = component.getVersion(); - String resourceUniqueID = component.getUniqueId(); - - if(component.getComponentType().equals(ComponentTypeEnum.SERVICE)) { - resourceDetails = AtomicOperationUtils.getServiceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), String.format("%.1f", Double.parseDouble(component.getVersion()) + 0.1)); - } else { - resourceDetails = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), String.format("%.1f", Double.parseDouble(component.getVersion()) + 0.1)); - } - - String resourceNewVersion = resourceDetails.getVersion(); - String resourceNewUniqueID = resourceDetails.getUniqueId(); - - System.out.println(resourceNewVersion); - System.out.println("Service UUID: " + resourceDetails.getUUID()); - System.out.println("Service UniqueID: " + resourceDetails.getUniqueId()); - - // Checking that new version exist + different from old one by unique id - Assert.assertNotEquals(resourceVersion, resourceNewVersion, "Expected for diffrent resource version."); - Assert.assertNotEquals(resourceUniqueID, resourceNewUniqueID, "Expected that resource will have new unique ID."); - } else { - if(component.getComponentType().equals(ComponentTypeEnum.SERVICE)) { - resourceDetails = AtomicOperationUtils.getServiceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - } else { - resourceDetails = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - } - } - return resourceDetails; - } - - - - - - // download deployment via external api + check response code for success (200) + get artifactReqDetails and verify payload + verify audit - protected RestResponse downloadResourceDeploymentArtifactExternalAPI(Component resourceDetails, ArtifactDefinition artifactDefinition, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, ComponentTypeEnum componentTypeEnum) throws Exception { - RestResponse restResponse; - - if(componentTypeEnum == ComponentTypeEnum.RESOURCE_INSTANCE) { - restResponse = ArtifactRestUtils.getComponentInstanceDeploymentArtifactExternalAPI(resourceDetails.getUUID(), resourceDetails.getComponentInstances().get(0).getNormalizedName(), artifactDefinition.getArtifactUUID(), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getComponentType().toString()); - } else { - restResponse = ArtifactRestUtils.getResourceDeploymentArtifactExternalAPI(resourceDetails.getUUID(), artifactDefinition.getArtifactUUID(), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getComponentType().toString()); - } - - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 200; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - - - // For known artifact/payload - verify payload of downloaded artfaict - if (artifactReqDetails != null) { - String response = restResponse.getResponse(); - String payloadData = artifactReqDetails.getPayload(); - String decodedPaypload = org.openecomp.sdc.ci.tests.utils.Decoder.decode(payloadData); - - Assert.assertEquals(response, decodedPaypload, "Response artifact payload not correct."); - } - - //TODO - including body - resourceDetails.getName() -// // Verify audit -// String auditAction = "DownloadArtifact"; -// -// Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); -// body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); -// body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); -// -// ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); -// expectedResourceAuditJavaObject.setAction(auditAction); -// expectedResourceAuditJavaObject.setResourceType(resourceDetails.getComponentType().getValue()); -// expectedResourceAuditJavaObject.setStatus("200"); -// expectedResourceAuditJavaObject.setDesc("OK"); -// expectedResourceAuditJavaObject.setCONSUMER_ID("ci"); -// -// if(componentTypeEnum == ComponentTypeEnum.RESOURCE_INSTANCE) { -// expectedResourceAuditJavaObject.setResourceName(resourceDetails.getComponentInstances().get(0).getName()); -// String resource_url = String.format("/sdc/v1/catalog/services/%s/resourceInstances/%s/artifacts/%s", resourceDetails.getUUID(), resourceDetails.getComponentInstances().get(0).getNormalizedName(), artifactDefinition.getArtifactUUID()); -// expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); -// -// AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); -// } else { -// expectedResourceAuditJavaObject.setResourceName(resourceDetails.getName()); -// String resource_url = String.format("/sdc/v1/catalog/services/%s/artifacts/%s", resourceDetails.getUUID(), artifactDefinition.getArtifactUUID()); -// expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); -// } -// -// AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); - - return restResponse; - - } - - // download deployment via external api + check response code for success (200) + verify audit - protected void downloadResourceDeploymentArtifactExternalAPI(Component resourceDetails, ArtifactDefinition artifactDefinition, User sdncModifierDetails) throws Exception { - downloadResourceDeploymentArtifactExternalAPI(resourceDetails, artifactDefinition, sdncModifierDetails, null, resourceDetails.getComponentType()); - } - - - - - - - - - - @DataProvider(name="uploadArtifactOnRIViaExternalAPI") - public static Object[][] dataProviderUploadArtifactOnRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT"}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL"}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP"}, - - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT"}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL"}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP"}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP"} - - }; - } - - - - - - @Test(dataProvider="uploadArtifactOnRIViaExternalAPI") - public void uploadArtifactOnRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState, artifactType, null); - } - - - - @DataProvider(name="uploadArtifactOnVfcVlCpRIViaExternalAPI") - public static Object[][] dataProviderUploadArtifactOnVfcVlCpRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP}, - - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - - }; - } - - - - - - @Test(dataProvider="uploadArtifactOnVfcVlCpRIViaExternalAPI") - public void uploadArtifactOnVfcVlCpRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState, artifactType, resourceTypeEnum); - } - - - - - @DataProvider(name="uploadInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI") - public static Object[][] dataProviderUploadInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI() { - return new Object[][] { - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidTypeEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidTypeEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidNameEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidLabelEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidDescriptionEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithSameLabel"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithSameLabel"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "uploadArtifactWithInvalidCheckSum"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "uploadArtifactWithInvalidCheckSum"}, - }; - } - - - - - // InvalidArtifact + check audit & response code function - @Test(dataProvider="uploadInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI") - public void uploadInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, - ComponentTypeEnum componentTypeEnum, String uploadArtifactTestType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, componentTypeEnum: %s, uploadArtifactTestType: %s", chosenLifeCycleState, componentTypeEnum, uploadArtifactTestType)); - Component resourceDetails; - ComponentInstance componentResourceInstanceDetails = null; - ArtifactReqDetails artifactReqDetails; - - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.DCAE_INVENTORY_DOC.toString(), true, false); - - resourceDetails = getComponentInTargetLifeCycleState(ComponentTypeEnum.SERVICE.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, null); - resourceDetails = getComponentWithResourceInstanceInTargetLifeCycleState(chosenLifeCycleState, null); - componentResourceInstanceDetails = resourceDetails.getComponentInstances().get(0); - } else { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.OTHER.toString(), true, false); - - resourceDetails = getComponentInTargetLifeCycleState(componentTypeEnum.toString(), UserRoleEnum.DESIGNER, chosenLifeCycleState, null); - } - - - switch (uploadArtifactTestType) { - case "uploadArtifactWithInvalidTypeToLong": - uploadArtifactWithInvalidTypeToLong(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidTypeEmpty": - uploadArtifactWithInvalidTypeEmpty(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidCheckSum": - uploadArtifactWithInvalidCheckSum(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidNameToLong": - uploadArtifactWithInvalidNameToLong(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidNameEmpty": - uploadArtifactWithInvalidNameEmpty(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidLabelToLong": - uploadArtifactWithInvalidLabelToLong(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidLabelEmpty": - uploadArtifactWithInvalidLabelEmpty(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidDescriptionToLong": - uploadArtifactWithInvalidDescriptionToLong(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithInvalidDescriptionEmpty": - uploadArtifactWithInvalidDescriptionEmpty(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - case "uploadArtifactWithSameLabel": - default: - uploadArtifactWithSameLabel(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - break; - } - } - - // Upload artifact with invalid type via external API - to long type - protected void uploadArtifactWithInvalidTypeToLong(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - artifactReqDetails.setArtifactType("dsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfdsdsfdsfds"); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name()); - List<String> variables = asList(artifactReqDetails.getArtifactType()); - - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - // Upload artifact with invalid type via external API - empty type - protected void uploadArtifactWithInvalidTypeEmpty(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - artifactReqDetails.setArtifactType(""); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_TYPE_NOT_SUPPORTED.name()); - List<String> variables = asList(artifactReqDetails.getArtifactType()); - - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - // Upload artifact with invalid checksum via external API - protected void uploadArtifactWithInvalidCheckSum(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_INVALID_MD5.name()); - List<String> variables = asList(); - uploadArtifactWithInvalidCheckSumOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables); - } - - - // Upload artifact with valid type & invalid name via external API - name to long - protected void uploadArtifactWithInvalidNameToLong(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.EXCEEDS_LIMIT.name()); - List<String> variables = asList("artifact name", "255"); - artifactReqDetails.setArtifactName("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - // Upload artifact with valid type & invalid name via external API - name is empty - protected void uploadArtifactWithInvalidNameEmpty(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_ARTIFACT_NAME.name()); - List<String> variables = asList(); - - artifactReqDetails.setArtifactName(""); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - // Upload artifact with valid type & invalid label via external API - label to long - protected void uploadArtifactWithInvalidLabelToLong(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.EXCEEDS_LIMIT.name()); - List<String> variables = asList("artifact label", "25"); - artifactReqDetails.setArtifactLabel("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - // Upload artifact with valid type & invalid label via external API - label is empty - protected void uploadArtifactWithInvalidLabelEmpty(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - List<String> variables = asList("artifact label"); - artifactReqDetails.setArtifactLabel(""); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - // Upload artifact with invalid description via external API - to long description - protected void uploadArtifactWithInvalidDescriptionToLong(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.EXCEEDS_LIMIT.name()); - List<String> variables = asList("artifact description", "256"); - artifactReqDetails.setDescription("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - // Upload artifact with invalid description via external API - empty description - protected void uploadArtifactWithInvalidDescriptionEmpty(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - List<String> variables = asList("artifact description"); - artifactReqDetails.setDescription(""); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - - - // Upload artifact with same label via external API - protected void uploadArtifactWithSameLabel(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - ComponentInstance componentResourceInstanceDetails) throws Exception { - - RestResponse restResponse = null; - if(componentResourceInstanceDetails != null) { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfComponentInstanceOnAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - } else { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfTheAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails); - - } - - ArtifactDefinition artifactDefinition = getArtifactDataFromJson(restResponse.getResponse()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_EXIST.name()); - - List<String> variables = asList(artifactDefinition.getArtifactDisplayName()); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables, null); - } - - - - - - - - - protected RestResponse uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - Integer expectedResponseCode, ComponentInstance componentResourceInstanceDetails, ErrorInfo errorInfo, List<String> variables, LifeCycleStatesEnum lifeCycleStatesEnum) throws Exception { - RestResponse restResponse; - - if(componentResourceInstanceDetails != null) { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfComponentInstanceOnAsset(resourceDetails, sdncModifierDetails, artifactReqDetails, componentResourceInstanceDetails); - } else { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactOfTheAsset(resourceDetails, sdncModifierDetails, artifactReqDetails); - - } - - // validate response code - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPLOAD_BY_API; - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); -// ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - - responseArtifact.setUpdaterFullName(""); - responseArtifact.setUserIdLastUpdater(sdncModifierDetails.getUserId()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditFailure(assetTypeEnum, action, responseArtifact, resourceDetails.getUUID(), errorInfo, variables); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - expectedExternalAudit.setRESOURCE_TYPE(resourceDetails.getComponentType().getValue()); - expectedExternalAudit.setARTIFACT_DATA(null); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); - if(componentResourceInstanceDetails != null) { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getComponentInstances().get(0).getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + resourceDetails.getComponentInstances().get(0).getNormalizedName() + "/artifacts"); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getComponentInstances().get(0).getNormalizedName()); - } else { - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } - - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPLOAD_BY_API.getName(), body); - - return restResponse; - - } - - - - - - - protected RestResponse uploadArtifactWithInvalidCheckSumOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, - Integer expectedResponseCode, ComponentInstance componentResourceInstanceDetails, ErrorInfo errorInfo, List<String> variables) throws Exception { - RestResponse restResponse; - - if(componentResourceInstanceDetails != null) { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactWithInvalidCheckSumOfComponentInstanceOnAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentResourceInstanceDetails); - } else { - restResponse = ArtifactRestUtils.externalAPIUploadArtifactWithInvalidCheckSumOfTheAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails); - - } - - // validate response code - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - // Check auditing for upload operation -// ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS.name()); -// = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.EXCEEDS_LIMIT.name()); -// List<String> variables = asList("artifact name", "255"); - - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPLOAD_BY_API; - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); -// ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - - responseArtifact.setUpdaterFullName(""); - responseArtifact.setUserIdLastUpdater(sdncModifierDetails.getUserId()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditFailure(assetTypeEnum, action, responseArtifact, resourceDetails.getUUID(), errorInfo, variables); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - expectedExternalAudit.setRESOURCE_TYPE(resourceDetails.getComponentType().getValue()); - expectedExternalAudit.setARTIFACT_DATA(null); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); - if(componentResourceInstanceDetails != null) { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getComponentInstances().get(0).getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + resourceDetails.getComponentInstances().get(0).getNormalizedName() + "/artifacts"); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getComponentInstances().get(0).getNormalizedName()); - } else { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPLOAD_BY_API.getName(), body); - - return restResponse; - - } - - - - - - - - - @DataProvider(name="uploadArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public static Object[][] dataProviderUploadArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset() { - return new Object[][] { - {ComponentTypeEnum.RESOURCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT}, - }; - } - - - // External API - // Upload artifact by diffrent user then creator of asset - Fail - @Test(dataProvider="uploadArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public void uploadArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset(ComponentTypeEnum componentTypeEnum, UserRoleEnum userRoleEnum, LifeCycleStatesEnum lifeCycleStatesEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, userRoleEnum: %s, lifeCycleStatesEnum: %s", componentTypeEnum, userRoleEnum, lifeCycleStatesEnum)); - Component resourceDetails; - ComponentInstance componentResourceInstanceDetails = null; - ArtifactReqDetails artifactReqDetails; - - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.DCAE_INVENTORY_DOC.toString(), true, false); - - resourceDetails = getComponentWithResourceInstanceInTargetLifeCycleState(lifeCycleStatesEnum, null); - componentResourceInstanceDetails = resourceDetails.getComponentInstances().get(0); - } else { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.OTHER.toString(), true, false); - - resourceDetails = getComponentInTargetLifeCycleState(componentTypeEnum.toString(), UserRoleEnum.DESIGNER, lifeCycleStatesEnum, null); - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - List<String> variables = asList(); - - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(userRoleEnum), - artifactReqDetails, 409, componentResourceInstanceDetails, errorInfo, variables, lifeCycleStatesEnum); - - if(lifeCycleStatesEnum.equals(LifeCycleStatesEnum.CHECKIN)) { - performeClean(); - } - } - - - - - - @DataProvider(name="uploadArtifactOnAssetWhichNotExist") - public static Object[][] dataProviderUploadArtifactOnAssetWhichNotExist() { - return new Object[][] { - {ComponentTypeEnum.SERVICE}, - {ComponentTypeEnum.RESOURCE}, - {ComponentTypeEnum.RESOURCE_INSTANCE}, - }; - } - - - // External API - // Upload artifact on VF via external API - happy flow - @Test(dataProvider="uploadArtifactOnAssetWhichNotExist") - public void uploadArtifactOnAssetWhichNotExist(ComponentTypeEnum componentTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s", componentTypeEnum)); - Component resourceDetails; - ComponentInstance componentResourceInstanceDetails = null; - ArtifactReqDetails artifactReqDetails; - - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.DCAE_INVENTORY_DOC.toString(), true, false); - - resourceDetails = getComponentWithResourceInstanceInTargetLifeCycleState(LifeCycleStatesEnum.CHECKIN, null); - componentResourceInstanceDetails = resourceDetails.getComponentInstances().get(0); - - resourceDetails.setUUID("12345"); - componentResourceInstanceDetails.setNormalizedName("12345"); - } else { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", "OTHER", true, false); - - resourceDetails = getComponentInTargetLifeCycleState(componentTypeEnum.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, null); - - resourceDetails.setUUID("12345"); - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_NOT_FOUND.name()); - List<String> variables = asList("null"); - - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 404, componentResourceInstanceDetails, errorInfo, variables, LifeCycleStatesEnum.CHECKIN); - - performeClean(); - - } - - - @DataProvider(name="uploadArtifactOnAssetWhichInInvalidStateForUploading") - public static Object[][] dataProviderUploadArtifactOnAssetWhichInInvalidStateForUploading() { - return new Object[][] { - {ComponentTypeEnum.SERVICE}, - {ComponentTypeEnum.RESOURCE}, - {ComponentTypeEnum.RESOURCE_INSTANCE}, - }; - } - - - @Test(dataProvider="uploadArtifactOnAssetWhichInInvalidStateForUploading") - public void uploadArtifactOnAssetWhichInInvalidStateForUploading(ComponentTypeEnum componentTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s", componentTypeEnum)); - Component resourceDetails; - ComponentInstance componentResourceInstanceDetails = null; - ArtifactReqDetails artifactReqDetails; - - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.DCAE_INVENTORY_DOC.toString(), true, false); - - resourceDetails = getComponentWithResourceInstanceInTargetLifeCycleState(LifeCycleStatesEnum.STARTCERTIFICATION, null); - componentResourceInstanceDetails = resourceDetails.getComponentInstances().get(0); - } else { - artifactReqDetails = ElementFactory.getArtifactByType("Abcd", ArtifactTypeEnum.OTHER.toString(), true, false); - - resourceDetails = getComponentInTargetLifeCycleState(componentTypeEnum.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.STARTCERTIFICATION, null); - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()); - List<String> variables = asList(resourceDetails.getName(), resourceDetails.getComponentType().toString().toLowerCase(), resourceDetails.getLastUpdaterFullName().split(" ")[0], - resourceDetails.getLastUpdaterFullName().split(" ")[1], resourceDetails.getLastUpdaterUserId()); - - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - artifactReqDetails, 403, componentResourceInstanceDetails, errorInfo, variables, LifeCycleStatesEnum.STARTCERTIFICATION); - - performeClean(); - } - - - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - // Update External API // - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - - @DataProvider(name="updateArtifactForServiceViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactForServiceViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"}, - {LifeCycleStatesEnum.CERTIFY, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFY, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFY, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFY, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFY, "OTHER"} - }; - } - - - - - // Update artifact for Service - Success - @Test(dataProvider="updateArtifactForServiceViaExternalAPI") - public void updateArtifactForServiceViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s", lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.SERVICE, LifeCycleStatesEnum.CHECKOUT, artifactType, null); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.SERVICE, lifeCycleStatesEnum, artifactType); - - // for certify version check that previous version exist, and that it artifact can be download + checksum - if(lifeCycleStatesEnum.equals(LifeCycleStatesEnum.CERTIFY)) { - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(component, artifactType, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), ComponentTypeEnum.SERVICE); - } - } - - @DataProvider(name="updateArtifactForVFViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactForVFViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKOUT, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKIN, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_JSON"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_DOC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"} - }; - } - - - // Update artifact for VF - Success - @Test(dataProvider="updateArtifactForVFViaExternalAPI") - public void updateArtifactForVFViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s", lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, LifeCycleStatesEnum.CHECKOUT, artifactType, null); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE, lifeCycleStatesEnum, artifactType); - - // for certify version check that previous version exist, and that it artifact can be download + checksum - if(lifeCycleStatesEnum.equals(LifeCycleStatesEnum.CERTIFY)) { - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(component, artifactType, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), ComponentTypeEnum.RESOURCE); - } - } - - @DataProvider(name="updateArtifactForVfcVlCpViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactForVfcVlCpViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - }; - } - - - // Update artifact for VFC/VL/CP - Success - @Test(dataProvider="updateArtifactForVfcVlCpViaExternalAPI") - public void updateArtifactForVfcVlCpViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s, resourceTypeEnum: %s", lifeCycleStatesEnum, artifactType, resourceTypeEnum)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE, lifeCycleStatesEnum, artifactType); - - // for certify version check that previous version exist, and that it artifact can be download + checksum - if(lifeCycleStatesEnum.equals(LifeCycleStatesEnum.CERTIFY)) { - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(component, artifactType, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), ComponentTypeEnum.RESOURCE); - } - } - - @DataProvider(name="updateArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI() { - return new Object[][] { - {ResourceTypeEnum.VFC}, - {ResourceTypeEnum.VL}, - {ResourceTypeEnum.CP} - }; - } - - - // Verify that it cannot update VFC/VL/CP artifact on VFCi/VLi/CPi - Failure flow - @Test(dataProvider="updateArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI") - public void updateArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI(ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("resourceTypeEnum: %s", resourceTypeEnum)); - - Component resourceInstanceDetails = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.getValue(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, resourceTypeEnum); - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", "SNMP_TRAP", true, false); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceInstanceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 200); - resourceInstanceDetails = AtomicOperationUtils.changeComponentState(resourceInstanceDetails, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - Component component = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, null); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceInstanceDetails, component, UserRoleEnum.DESIGNER, true).left().value(); - component = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - Map<String, ArtifactDefinition> deploymentArtifacts; - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, ComponentTypeEnum.RESOURCE_INSTANCE); - String artifactUUID = null; - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - List<String> variables = asList(artifactUUID); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE_INSTANCE, LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", errorInfo, variables, UserRoleEnum.DESIGNER, 404); - - } - - - - - - @DataProvider(name="updateArtifactOnRIViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactOnRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", null}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", null}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VF} - - }; - } - - - - - - @Test(dataProvider="updateArtifactOnRIViaExternalAPI") - public void updateArtifactOnRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState, artifactType); - - // for certify version check that previous version exist, and that it artifact can be download + checksum - if(chosenLifeCycleState.equals(LifeCycleStatesEnum.CERTIFY)) { - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(component, artifactType, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), ComponentTypeEnum.RESOURCE_INSTANCE); - } - } - - - - - - - - @DataProvider(name="updateArtifactOnVfcVlCpRIViaExternalAPI") - public static Object[][] dataProviderUpdateArtifactOnVfcVlCpRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP}, - - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - - }; - } - - - - - - @Test(dataProvider="updateArtifactOnVfcVlCpRIViaExternalAPI") - public void updateArtifactOnVfcVlCpRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - updateArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState, artifactType); - - - // for certify version check that previous version exist, and that it artifact can be download + checksum - if(chosenLifeCycleState.equals(LifeCycleStatesEnum.CERTIFY)) { - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(component, artifactType, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), ComponentTypeEnum.RESOURCE_INSTANCE); - } - } - - - - - - - - - - - @DataProvider(name="updateArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public static Object[][] dataProviderUpdateArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset() { - return new Object[][] { - {ComponentTypeEnum.RESOURCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - }; - } - - - - // External API - // Update artifact by diffrent user then creator of asset - Fail - @Test(dataProvider="updateArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public void updateArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset(ComponentTypeEnum componentTypeEnum, UserRoleEnum userRoleEnum, LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, userRoleEnum: %s, lifeCycleStatesEnum: %s, artifactType: %s", componentTypeEnum, userRoleEnum, lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, null); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - List<String> variables = asList(); - updateArtifactOnAssetViaExternalAPI(component, componentTypeEnum, lifeCycleStatesEnum, artifactType, errorInfo, variables, userRoleEnum, 409); - } - - - @DataProvider(name="updateArtifactOnAssetWhichNotExist") - public static Object[][] dataProviderUpdateArtifactOnAssetWhichNotExist() { - return new Object[][] { - {ComponentTypeEnum.SERVICE, "OTHER", null}, - {ComponentTypeEnum.RESOURCE, "OTHER", null}, - {ComponentTypeEnum.RESOURCE_INSTANCE, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VF}, - }; - } - - - - // External API - // Upload artifact on VF via external API - happy flow - @Test(dataProvider="updateArtifactOnAssetWhichNotExist") - public void updateArtifactOnAssetWhichNotExist(ComponentTypeEnum componentTypeEnum, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, artifactType: %s", componentTypeEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, resourceTypeEnum); - - // get updated artifact data - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - ArtifactReqDetails artifactReqDetails = getUpdatedArtifact(deploymentArtifacts, artifactType); - String artifactUUID = deploymentArtifacts.get(artifactReqDetails.getArtifactLabel()).getArtifactUUID(); - - // Invalid artifactUUID - String invalidArtifactUUID = "12341234-1234-1234-1234-123412341234"; - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - List<String> variables = asList(invalidArtifactUUID); - - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, component.getComponentInstances().get(0), artifactReqDetails, invalidArtifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, null, artifactReqDetails, invalidArtifactUUID, errorInfo, variables, null); - - } - - // Invalid componentUUID -// errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_NOT_FOUND.name()); -// variables = asList("null"); - - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - component.getComponentInstances().get(0).setNormalizedName("invalidNormalizedName"); - - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INSTANCE_NOT_FOUND_ON_CONTAINER.name()); - - variables = asList("invalidNormalizedName", ComponentTypeEnum.RESOURCE_INSTANCE.getValue().toLowerCase(), ComponentTypeEnum.SERVICE.getValue(), component.getName()); - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, LifeCycleStatesEnum.CHECKIN); - } else { - component.setUUID("invalidComponentUUID"); - - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_NOT_FOUND.name()); - variables = asList("null"); - - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, null, artifactReqDetails, artifactUUID, errorInfo, variables, LifeCycleStatesEnum.CHECKIN); - } - } - - - @DataProvider(name="updateArtifactOnAssetWhichInInvalidStateForUploading") - public static Object[][] dataProviderUpdateProviderDeleteArtifactOnAssetWhichInInvalidStateForUploading() { - return new Object[][] { -// {ComponentTypeEnum.SERVICE, "OTHER"}, -// {ComponentTypeEnum.RESOURCE, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, "DCAE_INVENTORY_TOSCA"}, - }; - } - - - @Test(dataProvider="updateArtifactOnAssetWhichInInvalidStateForUploading") - public void updateArtifactOnAssetWhichInInvalidStateForUploading(ComponentTypeEnum componentTypeEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, artifactType: %s", componentTypeEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, null); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()); - List<String> variables = asList(component.getName(), component.getComponentType().toString().toLowerCase(), ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getFirstName(), - ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getLastName(), ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getUserId()); - updateArtifactOnAssetViaExternalAPI(component, componentTypeEnum, LifeCycleStatesEnum.STARTCERTIFICATION, artifactType, errorInfo, variables, UserRoleEnum.DESIGNER, 403); - - } - - - - - - @DataProvider(name="updateInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI") - public static Object[][] dataProviderUpdateInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI() { - return new Object[][] { -// {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidCheckSum"}, -// {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidCheckSum"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidNameEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidNameEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidLabelEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidLabelEmpty"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionToLong"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionToLong"}, - - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKOUT, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CHECKIN, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.SERVICE, "updateArtifactWithInvalidDescriptionEmpty"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, ComponentTypeEnum.RESOURCE_INSTANCE, "updateArtifactWithInvalidDescriptionEmpty"}, - }; - } - - - - - // InvalidArtifact + check audit & response code function - @Test(dataProvider="updateInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI") - public void updateInvalidArtifactTypeExtensionLabelDescriptionCheckSumDuplicateLabelViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, - ComponentTypeEnum componentTypeEnum, String uploadArtifactTestType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, componentTypeEnum: %s, uploadArtifactTestType: %s", chosenLifeCycleState, componentTypeEnum, uploadArtifactTestType)); - Component component; - ComponentInstance componentInstance = null; - String artifactType; - - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - artifactType = ArtifactTypeEnum.DCAE_INVENTORY_DOC.toString(); - component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, null); - componentInstance = component.getComponentInstances().get(0); - } else { - artifactType = ArtifactTypeEnum.OTHER.toString(); - component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, null); - } - - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, chosenLifeCycleState, true).getLeft(); - - switch (uploadArtifactTestType) { - case "updateArtifactWithInvalidCheckSum": - updateArtifactWithInvalidCheckSum(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidNameToLong": - updateArtifactWithInvalidNameToLong(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidNameEmpty": - updateArtifactWithInvalidNameEmpty(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidLabelToLong": - updateArtifactWithInvalidLabelToLong(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidLabelEmpty": - updateArtifactWithInvalidLabelEmpty(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidDescriptionToLong": - updateArtifactWithInvalidDescriptionToLong(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - case "updateArtifactWithInvalidDescriptionEmpty": - default: - updateArtifactWithInvalidDescriptionEmpty(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactType, componentInstance); - break; - } - -/////////////////////////////////////////////////////////////////////////////// -// // TODO: there is defect when checking invalid type -//// // Upload artifact with invalid type via external API -//// // invalid type -//// String artifactType = artifactReqDetails.getArtifactType(); -//// artifactReqDetails.setArtifactType("invalidType"); -//// restResponse = uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 400, componentResourceInstanceDetails); -//// // empty type -//// artifactReqDetails.setArtifactType(""); -//// restResponse = uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 400, componentResourceInstanceDetails); -//// artifactReqDetails.setArtifactType(artifactType); -/////////////////////////////////////////////////////////////////////////////// - } - - // TODO - // Update artifact with invalid checksum via external API - protected void updateArtifactWithInvalidCheckSum(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_INVALID_MD5.name()); - List<String> variables = asList(); -// uploadArtifactWithInvalidCheckSumOfAssetIncludingValiditionOfAuditAndResponseCode(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), -// artifactReqDetails, 400, componentResourceInstanceDetails, errorInfo, variables); - } - - - // Update artifact with valid type & invalid name via external API - name to long - protected void updateArtifactWithInvalidNameToLong(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.EXCEEDS_LIMIT.name()); - List<String> variables = asList("artifact name", "255"); - artifactReqDetails.setArtifactName("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - - // Update artifact with valid type & invalid name via external API - name is empty - protected void updateArtifactWithInvalidNameEmpty(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_ARTIFACT_NAME.name()); - List<String> variables = asList(); - artifactReqDetails.setArtifactName(""); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - - // Update artifact with valid type & invalid label via external API - label to long - protected void updateArtifactWithInvalidLabelToLong(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_LOGICAL_NAME_CANNOT_BE_CHANGED.name()); - List<String> variables = asList(); - artifactReqDetails.setArtifactLabel("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - - // Update artifact with valid type & invalid label via external API - label is empty - protected void updateArtifactWithInvalidLabelEmpty(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - List<String> variables = asList("artifact label"); - artifactReqDetails.setArtifactLabel(""); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - - // Update artifact with invalid description via external API - to long description - protected void updateArtifactWithInvalidDescriptionToLong(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_LOGICAL_NAME_CANNOT_BE_CHANGED.name()); - List<String> variables = asList(); - artifactReqDetails.setDescription("invalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeinvalGGfdsiofhdsouhfoidshfoidshoifhsdoifhdsouihfdsofhiufdsghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidTypeghiufghodhfioudsgafodsgaiofudsghifudsiugfhiufawsouipfhgawseiupfsadiughdfsoiuhgfaighfpasdghfdsaqgfdsgdfgidType"); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - - // Update artifact with invalid description via external API - empty description - protected void updateArtifactWithInvalidDescriptionEmpty(Component component, User sdncModifierDetails, String artifactType, - ComponentInstance componentInstance) throws Exception { - - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - if(componentInstance != null) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_LOGICAL_NAME_CANNOT_BE_CHANGED.name()); - List<String> variables = asList("artifact description"); - artifactReqDetails.setDescription(""); - - if(componentInstance != null) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, null); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 400, null, artifactReqDetails, artifactUUID, errorInfo, variables, null); - - } - } - - // Unhappy flow - get chosen life cycle state, artifact type and asset type - // update artifact via external API + check audit & response code - // Download artifact via external API + check audit & response code - // Check artifact version, uuid & checksusm - protected Component updateArtifactOnAssetViaExternalAPI(Component component, ComponentTypeEnum componentTypeEnum, LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ErrorInfo errorInfo, List<String> variables, UserRoleEnum userRoleEnum, Integer expectedResponseCode) throws Exception { - String componentVersionBeforeUpdate = null; - - // get updated artifact data - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, chosenLifeCycleState, true).getLeft(); - componentVersionBeforeUpdate = component.getVersion(); - - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - ArtifactReqDetails artifactReqDetails = getUpdatedArtifact(deploymentArtifacts, artifactType); - - String artifactName = artifactReqDetails.getArtifactLabel(); - String artifactUUID = deploymentArtifacts.get(artifactName).getArtifactUUID(); - String artifactVersionBeforeUpdate = deploymentArtifacts.get(artifactName).getArtifactVersion(); - int numberOfArtifact = deploymentArtifacts.size(); - - // create component/s & upload artifact via external api - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(userRoleEnum), - expectedResponseCode, component.getComponentInstances().get(0), artifactReqDetails, artifactUUID, errorInfo, variables, chosenLifeCycleState); - } else { - updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(userRoleEnum), - expectedResponseCode, null, artifactReqDetails, artifactUUID, errorInfo, variables, chosenLifeCycleState); - } - - if(component.getComponentType().equals(ComponentTypeEnum.SERVICE)) { - component = AtomicOperationUtils.getServiceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - } else { - component = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - } - - // Get list of deployment artifact + download them via external API - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - deploymentArtifacts = component.getComponentInstances().get(0).getDeploymentArtifacts(); - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - Assert.assertEquals(numberOfArtifact, deploymentArtifacts.keySet().size(), "Expected that number of deployment artifact will be same as before."); - Assert.assertEquals(String.valueOf((Integer.parseInt(artifactVersionBeforeUpdate))), deploymentArtifacts.get(artifactName).getArtifactVersion(), "Expected that aftifact will not change."); - Assert.assertEquals(artifactUUID, deploymentArtifacts.get(artifactName).getArtifactUUID(), "Expected that aftifactUUID will not change."); - Assert.assertEquals(componentVersionBeforeUpdate, component.getVersion(), "Expected that check-out component will not change version number."); - - return component; - } - - protected RestResponse updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, - Integer expectedResponseCode, ComponentInstance componentInstance, ArtifactReqDetails artifactReqDetails, String artifactUUID, ErrorInfo errorInfo, List<String> variables, LifeCycleStatesEnum lifeCycleStatesEnum) throws Exception { - RestResponse restResponse; - - if(componentInstance != null) { - restResponse = ArtifactRestUtils.externalAPIUpdateArtifactOfComponentInstanceOnAsset(resourceDetails, sdncModifierDetails, artifactReqDetails, componentInstance, artifactUUID); - } else { - restResponse = ArtifactRestUtils.externalAPIUpdateArtifactOfTheAsset(resourceDetails, sdncModifierDetails, artifactReqDetails, artifactUUID); - - } - - // validate response code - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - //TODO - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPDATE_BY_API; - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); -// ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - - responseArtifact.setUpdaterFullName(""); - responseArtifact.setUserIdLastUpdater(sdncModifierDetails.getUserId()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditFailure(assetTypeEnum, action, responseArtifact, resourceDetails.getUUID(), errorInfo, variables); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - expectedExternalAudit.setRESOURCE_TYPE(resourceDetails.getComponentType().getValue()); - expectedExternalAudit.setARTIFACT_DATA(""); - expectedExternalAudit.setCURR_ARTIFACT_UUID(artifactUUID); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); - if(componentInstance != null) { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getComponentInstances().get(0).getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + resourceDetails.getComponentInstances().get(0).getNormalizedName() + "/artifacts/" + artifactUUID); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getComponentInstances().get(0).getNormalizedName()); - } else { - expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL() + "/" + artifactUUID); - if((lifeCycleStatesEnum == LifeCycleStatesEnum.CHECKIN) || (lifeCycleStatesEnum == LifeCycleStatesEnum.STARTCERTIFICATION)) { - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } else { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } - } - - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPDATE_BY_API.getName(), body); - - return restResponse; - - } - - - // This function get component, user & if updatedPayload or not - // It will create default payload / updated payload of artifact - // And download artifact of component which starts with ci - protected RestResponse downloadResourceDeploymentArtifactExternalAPIAndComparePayLoadOfArtifactType(Component component, String artifactType, User sdncModifierDetails, ComponentTypeEnum componentTypeEnum) throws IOException, Exception { - // Download the uploaded artifact via external API - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("abcd", artifactType, true, false); - String artifactName = null; - for (String key : component.getDeploymentArtifacts().keySet()) { - if (key.startsWith("ci")) { - artifactName = key; - break; - } - } - return downloadResourceDeploymentArtifactExternalAPI(component, component.getDeploymentArtifacts().get(artifactName), sdncModifierDetails, artifactReqDetails, componentTypeEnum); - } - - // Get deployment artifact of asset - protected Map<String, ArtifactDefinition> getDeploymentArtifactsOfAsset(Component component, ComponentTypeEnum componentTypeEnum) { - Map<String, ArtifactDefinition> deploymentArtifacts = null; - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - for(ComponentInstance componentInstance: component.getComponentInstances()) { - if(componentInstance.getNormalizedName().startsWith("ci")) { - deploymentArtifacts = componentInstance.getDeploymentArtifacts(); - break; - } - } - } else { - deploymentArtifacts = component.getDeploymentArtifacts(); - } - return deploymentArtifacts; - } - - // get deploymentArtifact of asset and artifactType -> generate new artifact that can be updated on the asset - protected ArtifactReqDetails getUpdatedArtifact(Map<String, ArtifactDefinition> deploymentArtifacts, String artifactType) throws IOException, Exception { - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactReqDetails.setArtifactDisplayName(deploymentArtifacts.get(key).getArtifactDisplayName()); - artifactReqDetails.setArtifactName(deploymentArtifacts.get(key).getArtifactName()); - artifactReqDetails.setArtifactLabel(deploymentArtifacts.get(key).getArtifactLabel()); - break; - } - } - - return artifactReqDetails; - } - - // Happy flow - get chosen life cycle state, artifact type and asset type - // update artifact via external API + check audit & response code - // Download artifact via external API + check audit & response code - // Check artifact version, uuid & checksusm - protected Component updateArtifactOnAssetViaExternalAPI(Component component, ComponentTypeEnum componentTypeEnum, LifeCycleStatesEnum chosenLifeCycleState, String artifactType) throws Exception { - RestResponse restResponse = null; - int numberOfArtifact = 0; - String artifactVersionBeforeUpdate = null; - String artifactName = null; - String componentVersionBeforeUpdate = null; - - // get updated artifact data - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", artifactType, true, true); - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts; - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactName = key; - artifactVersionBeforeUpdate = deploymentArtifacts.get(key).getArtifactVersion(); - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - artifactReqDetails.setArtifactDisplayName(deploymentArtifacts.get(key).getArtifactDisplayName()); - artifactReqDetails.setArtifactName(deploymentArtifacts.get(key).getArtifactName()); - artifactReqDetails.setArtifactLabel(deploymentArtifacts.get(key).getArtifactLabel()); - break; - } - } - - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, chosenLifeCycleState, true).getLeft(); - componentVersionBeforeUpdate = component.getVersion(); - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - numberOfArtifact = deploymentArtifacts.size(); - - - // create component/s & upload artifact via external api - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - if((chosenLifeCycleState == LifeCycleStatesEnum.CERTIFICATIONREQUEST) && (!component.getComponentType().toString().equals(ComponentTypeEnum.RESOURCE.toString()))) { - numberOfArtifact = numberOfArtifact - 1; - } - restResponse = updateArtifactOfRIIncludingValiditionOfAuditAndResponseCode(component, component.getComponentInstances().get(0), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, artifactUUID, 200); - } else { - - restResponse = updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, artifactUUID, 200); - } - - - - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - component = getNewerVersionOfComponent(component, chosenLifeCycleState); - - // Get list of deployment artifact + download them via external API - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - Assert.assertEquals(numberOfArtifact, deploymentArtifacts.keySet().size(), "Expected that number of deployment artifact will be same as before."); - Assert.assertEquals(String.valueOf((Integer.parseInt(artifactVersionBeforeUpdate) + 1)), deploymentArtifacts.get(artifactName).getArtifactVersion(), "Expected that aftifact version will increase by one."); - - if(chosenLifeCycleState == LifeCycleStatesEnum.CHECKOUT) { - Assert.assertEquals(componentVersionBeforeUpdate, component.getVersion(), "Expected that check-out component will not change version number."); - } else { - Assert.assertEquals(String.format("%.1f", (Double.parseDouble(componentVersionBeforeUpdate) + 0.1)), component.getVersion(), "Expected that non check-out component version will increase by 0.1."); - } - - // Download the uploaded artifact via external API - downloadResourceDeploymentArtifactExternalAPI(component, deploymentArtifacts.get(responseArtifact.getArtifactLabel()), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, componentTypeEnum); - - return component; - } - - - // Update artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse updateArtifactOfRIIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, ComponentInstance componentInstance, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, String artifactUUID, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIUpdateArtifactOfComponentInstanceOnAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, resourceDetails.getComponentInstances().get(0), artifactUUID); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPDATE_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, componentInstance.getNormalizedName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); -// expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL()+ "/" + artifactUUID); - expectedExternalAudit.setRESOURCE_NAME(componentInstance.getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + componentInstance.getNormalizedName() + "/artifacts/" + artifactUUID); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPDATE_BY_API.getName(), body); - - return restResponse; - } - - - // Update artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse updateArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, ArtifactReqDetails artifactReqDetails, String artifactUUID, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIUpdateArtifactOfTheAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, artifactUUID); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_UPDATE_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL()+ "/" + artifactUUID); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_UPDATE_BY_API.getName(), body); - - return restResponse; - } - - - - - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - // Delete External API // - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - //////////////////////////////////////////////////////////////////////////////////// - @DataProvider(name="deleteArtifactForServiceViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactForServiceViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"}, - {LifeCycleStatesEnum.CERTIFY, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFY, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFY, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFY, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFY, "OTHER"} - }; - } - - - - - // Delete artifact for Service - Success - @Test(dataProvider="deleteArtifactForServiceViaExternalAPI") - public void deleteArtifactForServiceViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s", lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.SERVICE, LifeCycleStatesEnum.CHECKOUT, artifactType, null); - deleteArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.SERVICE, lifeCycleStatesEnum); - } - - @DataProvider(name="deleteArtifactForVFViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactForVFViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKOUT, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_JSON"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CHECKIN, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_DOC"}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CHECKIN, "YANG_XML"}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CHECKIN, "OTHER"}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_JSON"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_POLICY"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_EVENT"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "APPC_CONFIG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_DOC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_TOSCA"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC"}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER"}, - }; - } - - - // Delete artifact for VF - Success - @Test(dataProvider="deleteArtifactForVFViaExternalAPI") - public void deleteArtifactForVFViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s", lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, LifeCycleStatesEnum.CHECKOUT, artifactType, null); - deleteArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE, lifeCycleStatesEnum); - } - - @DataProvider(name="deleteArtifactForVfcVlCpViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactForVfcVlCpViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKOUT, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CHECKIN, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "YANG_XML", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VNF_CATALOG", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VF_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "VENDOR_LICENSE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_INVENTORY_PROFILE", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "MODEL_QUERY_SPEC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "OTHER", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - }; - } - - - // Delete artifact for VFC, VL, CP - Success - @Test(dataProvider="deleteArtifactForVfcVlCpViaExternalAPI") - public void deleteArtifactForVfcVlCpViaExternalAPI(LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("lifeCycleStatesEnum: %s, artifactType: %s, resourceTypeEnum: %s", lifeCycleStatesEnum, artifactType, resourceTypeEnum)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - deleteArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE, lifeCycleStatesEnum); - } - - @DataProvider(name="deleteArtifactOnRIViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactOnRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", null}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", null}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VF}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VF} - - }; - } - - - - - - @Test(dataProvider="deleteArtifactOnRIViaExternalAPI") - public void deleteArtifactOnRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - deleteArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState); - } - - - @DataProvider(name="deleteArtifactOnVfcVlCpRIViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactOnVfcVlCpRIViaExternalAPI() { - return new Object[][] { - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VFC, null}, - - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.VL, null}, - - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_POLL", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKOUT, "SNMP_TRAP", ResourceTypeEnum.CP, null}, - - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VFC, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VFC, null}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.VL, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.VL, null}, - - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_POLL", ResourceTypeEnum.CP, null}, - {LifeCycleStatesEnum.CHECKIN, "SNMP_TRAP", ResourceTypeEnum.CP, null}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VFC}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VFC}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.VL}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.VL}, - - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_JSON", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_POLICY", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_DOC", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_BLUEPRINT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "DCAE_INVENTORY_EVENT", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_POLL", ResourceTypeEnum.CP}, - {LifeCycleStatesEnum.CERTIFICATIONREQUEST, "SNMP_TRAP", ResourceTypeEnum.CP} - - }; - } - - - - - - @Test(dataProvider="deleteArtifactOnVfcVlCpRIViaExternalAPI") - public void deleteArtifactOnVfcVlCpRIViaExternalAPI(LifeCycleStatesEnum chosenLifeCycleState, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("chosenLifeCycleState: %s, artifactType: %s", chosenLifeCycleState, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(ComponentTypeEnum.RESOURCE_INSTANCE, LifeCycleStatesEnum.CHECKOUT, artifactType, resourceTypeEnum); - deleteArtifactOnAssetViaExternalAPI(component, ComponentTypeEnum.RESOURCE_INSTANCE, chosenLifeCycleState); - } - - - @DataProvider(name="deleteArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public static Object[][] dataProviderDeleteArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset() { - return new Object[][] { - {ComponentTypeEnum.RESOURCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.DESIGNER2, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.TESTER, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.ADMIN, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.OPS, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, -// - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.GOVERNOR, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_STRATEGIST1, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKIN, "DCAE_INVENTORY_TOSCA"}, - {ComponentTypeEnum.RESOURCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.SERVICE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, UserRoleEnum.PRODUCT_MANAGER1, LifeCycleStatesEnum.CHECKOUT, "DCAE_INVENTORY_TOSCA"}, - }; - } - - - // External API - // Delete artifact by diffrent user then creator of asset - Fail - @Test(dataProvider="deleteArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset") - public void deleteArtifactOnVFViaExternalAPIByDiffrentUserThenCreatorOfAsset(ComponentTypeEnum componentTypeEnum, UserRoleEnum userRoleEnum, LifeCycleStatesEnum lifeCycleStatesEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, userRoleEnum %s, lifeCycleStatesEnum %s, artifactType: %s", componentTypeEnum, userRoleEnum, lifeCycleStatesEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, lifeCycleStatesEnum, artifactType, null); - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - - String artifactUUID = null; - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - List<String> variables = asList(); - - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(userRoleEnum), - 409, component.getComponentInstances().get(0), artifactUUID, errorInfo, variables, lifeCycleStatesEnum); - } else { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(userRoleEnum), - 409, null, artifactUUID, errorInfo, variables, lifeCycleStatesEnum); - } - - //TODO -// downloadResourceDeploymentArtifactExternalAPI(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactUUID, componentTypeEnum); - } - - - @DataProvider(name="deleteArtifactOnAssetWhichNotExist") - public static Object[][] dataProviderDeleteArtifactOnAssetWhichNotExist() { - return new Object[][] { - {ComponentTypeEnum.SERVICE, "OTHER", null}, - {ComponentTypeEnum.RESOURCE, "OTHER", null}, - {ComponentTypeEnum.RESOURCE_INSTANCE, "DCAE_INVENTORY_TOSCA", ResourceTypeEnum.VF}, - }; - } - - - // External API - // Upload artifact on VF via external API - happy flow - @Test(dataProvider="deleteArtifactOnAssetWhichNotExist") - public void deleteArtifactOnAssetWhichNotExist(ComponentTypeEnum componentTypeEnum, String artifactType, ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, artifactType: %s", componentTypeEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKIN, artifactType, resourceTypeEnum); - - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - - String artifactUUID = null; - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - // Invalid artifactUUID - String invalidArtifactUUID = "12341234-1234-1234-1234-123412341234"; - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - List<String> variables = asList(invalidArtifactUUID); - - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, component.getComponentInstances().get(0), invalidArtifactUUID, errorInfo, variables, null); - } else { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, null, invalidArtifactUUID, errorInfo, variables, null); - - } - - - // Invalid componentUUID - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - component.getComponentInstances().get(0).setNormalizedName("invalidNormalizedName"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INSTANCE_NOT_FOUND_ON_CONTAINER.name()); - variables = asList("invalidNormalizedName", ComponentTypeEnum.RESOURCE_INSTANCE.getValue().toLowerCase(), ComponentTypeEnum.SERVICE.getValue(), component.getName()); - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, component.getComponentInstances().get(0), artifactUUID, errorInfo, variables, LifeCycleStatesEnum.CHECKIN); - } else { - component.setUUID("invalidComponentUUID"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_NOT_FOUND.name()); - variables = asList("null"); - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, null, artifactUUID, errorInfo, variables, LifeCycleStatesEnum.CHECKIN); - } - - - - - } - - @DataProvider(name="deleteArtifactOnAssetWhichInInvalidStateForUploading") - public static Object[][] dataProviderDeleteArtifactOnAssetWhichInInvalidStateForUploading() { - return new Object[][] { - {ComponentTypeEnum.SERVICE, "OTHER"}, - {ComponentTypeEnum.RESOURCE, "OTHER"}, - {ComponentTypeEnum.RESOURCE_INSTANCE, "DCAE_INVENTORY_TOSCA"}, - }; - } - - - @Test(dataProvider="deleteArtifactOnAssetWhichInInvalidStateForUploading") - public void deleteArtifactOnAssetWhichInInvalidStateForUploading(ComponentTypeEnum componentTypeEnum, String artifactType) throws Exception { - extendTest.log(LogStatus.INFO, String.format("componentTypeEnum: %s, artifactType: %s", componentTypeEnum, artifactType)); - Component component = uploadArtifactOnAssetViaExternalAPI(componentTypeEnum, LifeCycleStatesEnum.CHECKOUT, artifactType, null); - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.STARTCERTIFICATION, true).getLeft(); - - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - String artifactUUID = null; - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - - // Invalid artifactUUID - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()); - List<String> variables = asList(component.getName(), component.getComponentType().toString().toLowerCase(), ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getFirstName(), - ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getLastName(), ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getUserId()); - - if(componentTypeEnum.equals(ComponentTypeEnum.RESOURCE_INSTANCE)) { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 403, component.getComponentInstances().get(0), artifactUUID, errorInfo, variables, null); - } else { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 403, null, artifactUUID, errorInfo, variables, null); - - } - - } - - - @DataProvider(name="deleteArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI") - public static Object[][] dataProviderDeleteArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI() { - return new Object[][] { - {ResourceTypeEnum.VFC}, - {ResourceTypeEnum.VL}, - {ResourceTypeEnum.CP} - }; - } - - - // Verify that it cannot delete VFC/VL/CP artifact on VFCi/VLi/CPi - Failure flow - @Test(dataProvider="deleteArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI") - public void deleteArtifactOfVfcVlCpForVfciVliCpiViaExternalAPI(ResourceTypeEnum resourceTypeEnum) throws Exception { - extendTest.log(LogStatus.INFO, String.format("resourceTypeEnum: %s", resourceTypeEnum)); - - Component resourceInstanceDetails = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.getValue(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, resourceTypeEnum); - ArtifactReqDetails artifactReqDetails = ElementFactory.getArtifactByType("ci", "SNMP_TRAP", true, false); - uploadArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(resourceInstanceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactReqDetails, 200); - resourceInstanceDetails = AtomicOperationUtils.changeComponentState(resourceInstanceDetails, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - Component component = getComponentInTargetLifeCycleState(ComponentTypeEnum.RESOURCE.toString(), UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, null); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceInstanceDetails, component, UserRoleEnum.DESIGNER, true).left().value(); - component = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, component.getName(), component.getVersion()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.ARTIFACT_NOT_FOUND.name()); - Map<String, ArtifactDefinition> deploymentArtifacts; - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, ComponentTypeEnum.RESOURCE_INSTANCE); - String artifactUUID = null; - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci") && !key.endsWith("env")) { - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - List<String> variables = asList(artifactUUID); - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - 404, component.getComponentInstances().get(0), artifactUUID, errorInfo, variables, null); - } - - protected RestResponse deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, - Integer expectedResponseCode, ComponentInstance componentInstance, String artifactUUID, ErrorInfo errorInfo, List<String> variables, LifeCycleStatesEnum lifeCycleStatesEnum) throws Exception { - RestResponse restResponse; - - if(componentInstance != null) { - restResponse = ArtifactRestUtils.externalAPIDeleteArtifactOfComponentInstanceOnAsset(resourceDetails, sdncModifierDetails, componentInstance, artifactUUID); - } else { - restResponse = ArtifactRestUtils.externalAPIDeleteArtifactOfTheAsset(resourceDetails, sdncModifierDetails, artifactUUID); - - } - - // validate response code - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_DELETE_BY_API; - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); -// ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - - responseArtifact.setUpdaterFullName(""); - responseArtifact.setUserIdLastUpdater(sdncModifierDetails.getUserId()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditFailure(assetTypeEnum, action, responseArtifact, resourceDetails.getUUID(), errorInfo, variables); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - expectedExternalAudit.setRESOURCE_TYPE(resourceDetails.getComponentType().getValue()); - expectedExternalAudit.setARTIFACT_DATA(null); - expectedExternalAudit.setCURR_ARTIFACT_UUID(artifactUUID); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); - if(componentInstance != null) { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getComponentInstances().get(0).getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + resourceDetails.getComponentInstances().get(0).getNormalizedName() + "/artifacts/" + artifactUUID); - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getComponentInstances().get(0).getNormalizedName()); - } else { - expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL() + "/" + artifactUUID); - if((errorInfo.getMessageId().equals(ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_NOT_FOUND.name()).getMessageId())) || - errorInfo.getMessageId().equals(ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()).getMessageId()) || - (lifeCycleStatesEnum == LifeCycleStatesEnum.STARTCERTIFICATION)) { - expectedExternalAudit.setRESOURCE_NAME(resourceDetails.getName()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } else { - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - } - } - - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_DELETE_BY_API.getName(), body); - - return restResponse; - - } - - - // Happy flow - get chosen life cycle state, artifact type and asset type - // delete artifact via external API + check audit & response code - protected Component deleteArtifactOnAssetViaExternalAPI(Component component, ComponentTypeEnum componentTypeEnum, LifeCycleStatesEnum chosenLifeCycleState) throws Exception { - String artifactName = null; - component = AtomicOperationUtils.changeComponentState(component, UserRoleEnum.DESIGNER, chosenLifeCycleState, true).getLeft(); - - // get updated artifact data - String artifactUUID = null; - Map<String, ArtifactDefinition> deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - - for (String key : deploymentArtifacts.keySet()) { - if (key.startsWith("ci")) { - artifactName = key; - artifactUUID = deploymentArtifacts.get(key).getArtifactUUID(); - break; - } - } - - - String componentVersionBeforeDelete = component.getVersion(); - int numberOfArtifact = deploymentArtifacts.size(); - - - // create component/s & upload artifact via external api - if(ComponentTypeEnum.RESOURCE_INSTANCE == componentTypeEnum) { - deleteArtifactOfRIIncludingValiditionOfAuditAndResponseCode(component, component.getComponentInstances().get(0), ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactUUID, 200); - } else { - deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactUUID, 200); - } - - component = getNewerVersionOfComponent(component, chosenLifeCycleState); - - // Get list of deployment artifact + download them via external API - deploymentArtifacts = getDeploymentArtifactsOfAsset(component, componentTypeEnum); - if(deploymentArtifacts.get(artifactName) != null) { - Assert.assertTrue(false, "Expected that deletecd artifact will not appear in deployment artifact list."); - } - if((LifeCycleStatesEnum.CERTIFICATIONREQUEST.equals(chosenLifeCycleState)) && (ComponentTypeEnum.RESOURCE_INSTANCE.equals(componentTypeEnum)) && (!component.getComponentType().toString().equals(ComponentTypeEnum.RESOURCE.toString()))) { - Assert.assertEquals(numberOfArtifact - 2, deploymentArtifacts.keySet().size(), "Expected that number of deployment artifact (one deleted and one vfmodule) will decrease by two."); - } else { - Assert.assertEquals(numberOfArtifact - 1, deploymentArtifacts.keySet().size(), "Expected that number of deployment artifact will decrease by one."); - } - - - if(chosenLifeCycleState == LifeCycleStatesEnum.CHECKOUT) { - Assert.assertEquals(componentVersionBeforeDelete, component.getVersion(), "Expected that check-out component will not change version number."); - } else { - Assert.assertEquals(String.format("%.1f", (Double.parseDouble(componentVersionBeforeDelete) + 0.1)), component.getVersion(), "Expected that non check-out component version will increase by 0.1."); - } - - downloadResourceDeploymentArtifactExternalAPI(component, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactUUID, componentTypeEnum); - - return component; - } - - // Delete artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse deleteArtifactOfRIIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, ComponentInstance componentInstance, User sdncModifierDetails, String artifactUUID, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIDeleteArtifactOfComponentInstanceOnAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getComponentInstances().get(0), artifactUUID); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_DELETE_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, componentInstance.getNormalizedName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); -// expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL()+ "/" + artifactUUID); - expectedExternalAudit.setRESOURCE_NAME(componentInstance.getNormalizedName()); - expectedExternalAudit.setRESOURCE_URL("/sdc/v1/catalog/" + assetTypeEnum.getValue() + "/" + resourceDetails.getUUID() + "/resourceInstances/" + componentInstance.getNormalizedName() + "/artifacts/" + artifactUUID); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_DELETE_BY_API.getName(), body); - - return restResponse; - } - - - // Delete artifact via external API + Check auditing for upload operation + Check response of external API - protected RestResponse deleteArtifactOfAssetIncludingValiditionOfAuditAndResponseCode(Component resourceDetails, User sdncModifierDetails, String artifactUUID, Integer expectedResponseCode) throws Exception { - RestResponse restResponse = ArtifactRestUtils.externalAPIDeleteArtifactOfTheAsset(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), artifactUUID); - - // Check response of external API - Integer responseCode = restResponse.getErrorCode(); - Assert.assertEquals(responseCode, expectedResponseCode, "Response code is not correct."); - - - // Check auditing for upload operation - ArtifactDefinition responseArtifact = getArtifactDataFromJson(restResponse.getResponse()); - - AuditingActionEnum action = AuditingActionEnum.ARTIFACT_DELETE_BY_API; - - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); - - AssetTypeEnum assetTypeEnum = AssetTypeEnum.valueOf((resourceDetails.getComponentType().getValue() + "s").toUpperCase()); - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalArtifactAuditSuccess(assetTypeEnum, action, responseArtifact, resourceDetails); - expectedExternalAudit.setRESOURCE_URL(expectedExternalAudit.getRESOURCE_URL()+ "/" + artifactUUID); - AuditValidationUtils.validateExternalAudit(expectedExternalAudit, AuditingActionEnum.ARTIFACT_DELETE_BY_API.getName(), body); - - return restResponse; - } - - - - // download deployment via external api + check response code for success (200) + get artifactReqDetails and verify payload + verify audit - protected RestResponse downloadResourceDeploymentArtifactExternalAPI(Component resourceDetails, User sdncModifierDetails, String artifactUUID, ComponentTypeEnum componentTypeEnum) throws Exception { - RestResponse restResponse; - - if(componentTypeEnum == ComponentTypeEnum.RESOURCE_INSTANCE) { - restResponse = ArtifactRestUtils.getComponentInstanceDeploymentArtifactExternalAPI(resourceDetails.getUUID(), resourceDetails.getComponentInstances().get(0).getNormalizedName(), artifactUUID, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getComponentType().toString()); - } else { - restResponse = ArtifactRestUtils.getResourceDeploymentArtifactExternalAPI(resourceDetails.getUUID(), artifactUUID, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getComponentType().toString()); - } - - Integer responseCode = restResponse.getErrorCode(); - Integer expectedCode = 404; - Assert.assertEquals(responseCode,expectedCode, "Response code is not correct."); - - - //TODO - including body - resourceDetails.getName() -// // Verify audit -// String auditAction = "DownloadArtifact"; -// -// Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); -// body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, responseCode.toString()); -// body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resourceDetails.getName()); -// -// ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); -// expectedResourceAuditJavaObject.setAction(auditAction); -// expectedResourceAuditJavaObject.setResourceType(resourceDetails.getComponentType().getValue()); -// expectedResourceAuditJavaObject.setStatus("200"); -// expectedResourceAuditJavaObject.setDesc("OK"); -// expectedResourceAuditJavaObject.setCONSUMER_ID("ci"); -// -// if(componentTypeEnum == ComponentTypeEnum.RESOURCE_INSTANCE) { -// expectedResourceAuditJavaObject.setResourceName(resourceDetails.getComponentInstances().get(0).getName()); -// String resource_url = String.format("/sdc/v1/catalog/services/%s/resourceInstances/%s/artifacts/%s", resourceDetails.getUUID(), resourceDetails.getComponentInstances().get(0).getNormalizedName(), artifactDefinition.getArtifactUUID()); -// expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); -// -// AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); -// } else { -// expectedResourceAuditJavaObject.setResourceName(resourceDetails.getName()); -// String resource_url = String.format("/sdc/v1/catalog/services/%s/artifacts/%s", resourceDetails.getUUID(), artifactDefinition.getArtifactUUID()); -// expectedResourceAuditJavaObject.setRESOURCE_URL(resource_url); -// } -// -// AuditValidationUtils.validateAuditDownloadExternalAPI(expectedResourceAuditJavaObject, auditAction, null, false); - - return restResponse; - - } - - - - - public Component getComponentInTargetLifeCycleState(String componentType, UserRoleEnum creatorUser, LifeCycleStatesEnum targetLifeCycleState, ResourceTypeEnum resourceTypeEnum) throws Exception { - Component resourceDetails = null; - - if((componentType.toLowerCase().equals("vf")) || (componentType.toLowerCase().equals("resource"))){ - if(resourceTypeEnum==null) { - resourceTypeEnum = ResourceTypeEnum.VF; - } - Either<Resource, RestResponse> createdResource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(resourceTypeEnum, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, creatorUser, true); - resourceDetails = createdResource.left().value(); - resourceDetails = AtomicOperationUtils.changeComponentState(resourceDetails, creatorUser, targetLifeCycleState, true).getLeft(); - } else { - Either<Service, RestResponse> createdResource = AtomicOperationUtils.createDefaultService(creatorUser, true); - resourceDetails = createdResource.left().value(); - // Add artifact to service if asked for certifcationrequest - must be at least one artifact for the flow - if((LifeCycleStatesEnum.CERTIFICATIONREQUEST == targetLifeCycleState) || (LifeCycleStatesEnum.STARTCERTIFICATION == targetLifeCycleState)) { - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, resourceDetails, UserRoleEnum.DESIGNER, true, true).left().value(); - } - resourceDetails = AtomicOperationUtils.changeComponentState(resourceDetails, creatorUser, targetLifeCycleState, true).getLeft(); - } - - return resourceDetails; - } - - - - - - protected String createUploadArtifactBodyJson() { - Map<String, Object> jsonBody = new HashMap<String, Object>(); - jsonBody.put("artifactName", UPLOAD_ARTIFACT_NAME); - jsonBody.put("artifactDisplayName", "configure"); - jsonBody.put("artifactType", "SHELL"); - jsonBody.put("mandatory", "false"); - jsonBody.put("description", "ff"); - jsonBody.put("payloadData", UPLOAD_ARTIFACT_PAYLOAD); - jsonBody.put("artifactLabel", "configure"); - return gson.toJson(jsonBody); - } - - protected ArtifactDefinition getArtifactDataFromJson(String content) { - - JsonObject jsonElement = new JsonObject(); - ArtifactDefinition resourceInfo = null; - - try { - Gson gson = new Gson(); - jsonElement = gson.fromJson(content, jsonElement.getClass()); - JsonElement artifactGroupValue = jsonElement.get(Constants.ARTIFACT_GROUP_TYPE_FIELD); - if (artifactGroupValue != null && !artifactGroupValue.isJsonNull()) { - String groupValueUpper = artifactGroupValue.getAsString().toUpperCase(); - if (!ArtifactGroupTypeEnum.getAllTypes().contains(groupValueUpper)) { - StringBuilder sb = new StringBuilder(); - for (String value : ArtifactGroupTypeEnum.getAllTypes()) { - sb.append(value).append(", "); - } - log.debug("artifactGroupType is {}. valid values are: {}", groupValueUpper, sb.toString()); - return null; - } else { - jsonElement.remove(Constants.ARTIFACT_GROUP_TYPE_FIELD); - jsonElement.addProperty(Constants.ARTIFACT_GROUP_TYPE_FIELD, groupValueUpper); - } - } - String payload = null; - JsonElement artifactPayload = jsonElement.get(Constants.ARTIFACT_PAYLOAD_DATA); - if (artifactPayload != null && !artifactPayload.isJsonNull()) { - payload = artifactPayload.getAsString(); - } - jsonElement.remove(Constants.ARTIFACT_PAYLOAD_DATA); - String json = gson.toJson(jsonElement); - ObjectMapper mapper = new ObjectMapper(); - mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false); - mapper.configure(Feature.FAIL_ON_EMPTY_BEANS, false); - mapper.setSerializationInclusion(JsonSerialize.Inclusion.NON_NULL); - - resourceInfo = mapper.readValue(json, ArtifactDefinition.class); - resourceInfo.setPayloadData(payload); - - } catch (Exception e) { - BeEcompErrorManager.getInstance().logBeArtifactInformationInvalidError("Artifact Upload / Update"); - log.debug("Failed to convert the content {} to object.", content.substring(0, Math.min(50, content.length())), e); - } - - return resourceInfo; - } - - - protected HttpGet createGetRequest(String url) { - HttpGet httpGet = new HttpGet(url); - httpGet.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httpGet.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httpGet.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - return httpGet; - } - - protected String getArtifactUid(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected String getArtifactEsId(HttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - String esId = (String) responseMap.get("EsId"); - return esId; - } - - protected ArtifactDefinition addArtifactDataFromResponse(HttpResponse response, ArtifactDefinition artifact) throws HttpResponseException, IOException, ParseException { - //String responseString = new BasicResponseHandler().handleResponse(response); - HttpEntity entity = response.getEntity(); - String responseString = EntityUtils.toString(entity); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - artifact.setEsId((String)responseMap.get("esId")); - artifact.setUniqueId((String) responseMap.get("uniqueId")); - artifact.setArtifactGroupType(ArtifactGroupTypeEnum.findType((String) responseMap.get("artifactGroupType"))); - artifact.setTimeout(((Long) responseMap.get("timeout")).intValue()); - return artifact; - } - - protected String getLifecycleArtifactUid(CloseableHttpResponse response) throws HttpResponseException, IOException, ParseException { - String responseString = new BasicResponseHandler().handleResponse(response); - JSONObject responseMap = (JSONObject) jsonParser.parse(responseString); - responseMap = (JSONObject) responseMap.get("implementation"); - String artifactId = (String) responseMap.get("uniqueId"); - return artifactId; - } - - protected HttpDelete createDeleteArtifactRequest(String url) { - HttpDelete httpDelete = new HttpDelete(url); - httpDelete.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - httpDelete.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - return httpDelete; - } - - protected HttpPost createPostAddArtifactRequeast(String jsonBody, String url, boolean addMd5Header) throws UnsupportedEncodingException { - HttpPost httppost = new HttpPost(url); - httppost.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - httppost.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - httppost.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails.getUserId()); - if (addMd5Header) { - httppost.addHeader(HttpHeaderEnum.Content_MD5.getValue(), GeneralUtility.calculateMD5Base64EncodedByString(jsonBody)); - } - StringEntity input = new StringEntity(jsonBody); - input.setContentType("application/json"); - httppost.setEntity(input); - log.debug("Executing request {}" , httppost.getRequestLine()); - return httppost; - } - - protected String createLoadArtifactBody() { - Map<String, Object> json = new HashMap<String, Object>(); - json.put("artifactName", "install_apache2.sh"); - json.put("artifactType", "SHELL"); - json.put("description", "ddd"); - json.put("payloadData", "UEsDBAoAAAAIAAeLb0bDQz"); - json.put("artifactLabel", "name123"); - - String jsonStr = gson.toJson(json); - return jsonStr; - } - - protected void checkDeleteResponse(RestResponse response) { - BaseRestUtils.checkStatusCode(response, "delete request failed", false, 204, 404); - } - - protected ArtifactUiDownloadData getArtifactUiDownloadData(String artifactUiDownloadDataStr) throws Exception { - - ObjectMapper mapper = new ObjectMapper(); - try { - ArtifactUiDownloadData artifactUiDownloadData = mapper.readValue(artifactUiDownloadDataStr, ArtifactUiDownloadData.class); - return artifactUiDownloadData; - } catch (Exception e) { - e.printStackTrace(); - } - return null; - } - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/HealthCheckAPI.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/HealthCheckAPI.java deleted file mode 100644 index 5155562e35..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/HealthCheckAPI.java +++ /dev/null @@ -1,84 +0,0 @@ -package org.openecomp.sdc.ci.tests.execute.devCI; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.Map; -import java.util.stream.Collectors; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.CommonRestUtils; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.api.HealthCheckInfo; -import org.openecomp.sdc.common.api.HealthCheckInfo.HealthCheckStatus; -import org.openecomp.sdc.common.api.HealthCheckWrapper; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class HealthCheckAPI extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public HealthCheckAPI() { - super(name, HealthCheckAPI.class.getName()); - } - - @Test - public void checkAmdocsHealthCheckAPI() throws Exception { - RestResponse healthCheckInfoResponse = CommonRestUtils.getHealthCheck(); - BaseRestUtils.checkSuccess(healthCheckInfoResponse); - - Gson gson = new Gson(); - HealthCheckWrapper healthCheckInfo = gson.fromJson(healthCheckInfoResponse.getResponse(), HealthCheckWrapper.class); - assertNotNull("Health check not contains components info", healthCheckInfo.getComponentsInfo()); - HealthCheckInfo amdocsHC = healthCheckInfo.getComponentsInfo().stream().filter(x -> x.getHealthCheckComponent().equals(Constants.HC_COMPONENT_ON_BOARDING)).findFirst().orElse(null); - assertNotNull("Amdocs health check not exists in Health Check info", amdocsHC); - assertEquals("Amdocs health check is down", HealthCheckInfo.HealthCheckStatus.UP, amdocsHC.getHealthCheckStatus()); - assertNotNull("Amdocs componentsInfo not exists in health check", amdocsHC.getComponentsInfo()); - Map<String, HealthCheckStatus> amdocsHCComponents = amdocsHC.getComponentsInfo().stream().collect(Collectors.toMap(HealthCheckInfo::getHealthCheckComponent, HealthCheckInfo::getHealthCheckStatus)); - assertNotNull(amdocsHCComponents); - assertTrue("Amdocs health check ZU component is down or not exists", amdocsHCComponents.get("ZU") != null && amdocsHCComponents.get("ZU").equals(HealthCheckStatus.UP)); - assertTrue("Amdocs health check BE component is down or not exists", amdocsHCComponents.get("BE") != null && amdocsHCComponents.get("BE").equals(HealthCheckStatus.UP)); - assertTrue("Amdocs health check CAS component is down or not exists", amdocsHCComponents.get("CAS") != null && amdocsHCComponents.get("CAS").equals(HealthCheckStatus.UP)); - assertTrue("Amdocs health check FE component is down or not exists", amdocsHCComponents.get("FE") != null && amdocsHCComponents.get("FE").equals(HealthCheckStatus.UP)); - } - - @Test - public void checkDcaeHealthCheckAPI() throws Exception { - RestResponse healthCheckInfoResponse = CommonRestUtils.getHealthCheck(); - BaseRestUtils.checkSuccess(healthCheckInfoResponse); - - Gson gson = new Gson(); - HealthCheckWrapper healthCheckInfo = gson.fromJson(healthCheckInfoResponse.getResponse(), HealthCheckWrapper.class); - assertNotNull("Health check not contains components info", healthCheckInfo.getComponentsInfo()); - HealthCheckInfo dcaeHC = healthCheckInfo.getComponentsInfo().stream().filter(x -> x.getHealthCheckComponent().equals(Constants.HC_COMPONENT_DCAE)).findFirst().orElse(null); - assertNotNull("DCAE health check not exists in Health Check info", dcaeHC); - assertEquals("DCAE health check is down", HealthCheckInfo.HealthCheckStatus.UP, dcaeHC.getHealthCheckStatus()); - assertNotNull("DCAE componentsInfo not exists in health check", dcaeHC.getComponentsInfo()); - Map<String, HealthCheckStatus> dcaeHCComponents = dcaeHC.getComponentsInfo().stream().collect(Collectors.toMap(HealthCheckInfo::getHealthCheckComponent, HealthCheckInfo::getHealthCheckStatus)); - assertNotNull(dcaeHCComponents); - assertTrue("DCAE health check BE component is down or not exists", dcaeHCComponents.get("BE") != null && dcaeHCComponents.get("BE").equals(HealthCheckStatus.UP)); - assertTrue("DCAE health check FE component is down or not exists", dcaeHCComponents.get("FE") != null && dcaeHCComponents.get("FE").equals(HealthCheckStatus.UP)); - } - - @Test - public void checkCassandraHealthCheck() throws Exception { - RestResponse healthCheckInfoResponse = CommonRestUtils.getHealthCheck(); - BaseRestUtils.checkSuccess(healthCheckInfoResponse); - - Gson gson = new Gson(); - HealthCheckWrapper healthCheckInfo = gson.fromJson(healthCheckInfoResponse.getResponse(), HealthCheckWrapper.class); - assertNotNull("Health check not contains components info", healthCheckInfo.getComponentsInfo()); - HealthCheckInfo cassandraHC = healthCheckInfo.getComponentsInfo().stream().filter(x -> x.getHealthCheckComponent().equals(Constants.HC_COMPONENT_CASSANDRA)).findFirst().orElse(null); - assertNotNull("Cassandra health check not exists in Health Check info", cassandraHC); - assertEquals("Cassandra health check is down", HealthCheckInfo.HealthCheckStatus.UP, cassandraHC.getHealthCheckStatus()); - } - -}
\ No newline at end of file diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarUpdate.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarUpdate.java deleted file mode 100644 index 87eb6dc696..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarUpdate.java +++ /dev/null @@ -1,307 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.execute.imports.ImportCsarResourceTest; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.annotations.AfterTest; -import org.testng.annotations.BeforeTest; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -public class ImportCsarUpdate extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public ImportCsarUpdate() { - super(name, ImportCsarUpdate.class.getName()); - } - - @DataProvider(name = "happyArts") - public Object[][] getHappyArtifacts() { - - return new Object[][] { - { "happy_VF_RI2_G2_two_different_artifacts_under_heatBaseheatVolheatNet2" }, - { "happy_VF_RI2_G2_two_different_artifacts_under_heatBaseheatVolheatNet" }, - { "happy_VF_RI2_G2_two_identical_artifacts_under_heatBaseheatVolheatNet" }, - { "happy_VF_RI2_G2_two_different_artifacts_under_nested" }, - { "happy_VF_RI2_G2_two_indentical_nested_under_different_groups" }, - { "happy_VF_RI2_G2_two_different_nested_under_different_groups" }, - { "happy_VF_RI2_G2_two_different_nested_under_same_group" } - }; - } - - @DataProvider(name = "negativeArts") - public Object[][] getNegativeArtifacts() { - - return new Object[][] { - { "negative_VF_RI2_G2_same_heatVol_different_groups" }, - { "negative_VF_RI2_G2_same_heatBase_different_envs" }, - { "negative_VF_RI2_G2_heatBaseHeatVolHeatNet_under_nested" }, - { "negative_VF_RI2_G2_two_indentical_artifacts_under_nested" }, - { "negative_VF_RI2_G2_nested_under_nested" }, - { "negative_VF_RI2_G2_same_heatVol_different_groups" } - }; - } - - @BeforeTest - public void resumeOrigCsarBefore() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "orig.csar", "importCsar_2Gartifacts.csar"); - - } - - @AfterTest - public void resumeOrigCsarAfter() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "orig.csar", "importCsar_2Gartifacts.csar"); - - } - - @Test - public void updateVFsearchByCsarIdCheckInState() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchByCsarIdCheckInState_checkSum() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - // User sdncModifierDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // RestResponse copyRes = - // ImportCsarResourceTest.copyCsarRest(sdncModifierDetails,"updateImportCsar_2Gartifacts_topologyChanged.csar","importCsar_2Gartifacts.csar"); - - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchByCsarIdCheckOutState() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - // Component resourceObject = - // AtomicOperationUtils.changeComponentState(resourceFirstImport, - // UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchByCsarIdCertifyStat() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchByCsarStartCertificationState() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFICATIONREQUEST, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchBySystemNameCheckInState() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setName("hardcodedNameChanged"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - - @Test - public void updateVFsearchBySystemNameCertifyState() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "updateImportCsar_2Gartifacts_topologyChanged.csar", "importCsar_2Gartifacts.csar"); - - resourceDetails.setName("hardcodedNameChanged"); - resourceDetails.setCsarUUID("importCsar_2Gartifacts"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - } - - @Test - public void updateVFsearchBySystemNameCsarIdNotExist() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("hardcodedName"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceFirstImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Component resourceObject = AtomicOperationUtils.changeComponentState(resourceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - // User sdncModifierDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // RestResponse copyRes = - // ImportCsarResourceTest.copyCsarRest(sdncModifierDetails,"updateImportCsar_2Gartifacts_topologyChanged.csar","importCsar_2Gartifacts.csar"); - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - resourceDetails2.setName("hardcodedName"); - resourceDetails2.setCsarUUID("importCsar_2Gartifacts"); - resourceDetails2.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails2, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resourceSecondImport = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // Validation Part - - resourceFirstImport.getGroups().equals(resourceSecondImport.getGroups()); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarValidateArtifacts.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarValidateArtifacts.java deleted file mode 100644 index 49e5950db5..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ImportCsarValidateArtifacts.java +++ /dev/null @@ -1,103 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import static org.testng.AssertJUnit.assertTrue; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.CsarValidationUtils; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -public class ImportCsarValidateArtifacts extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public ImportCsarValidateArtifacts() { - super(name, ImportCsarValidateArtifacts.class.getName()); - } - - @DataProvider(name = "happyArts") - public Object[][] getHappyArtifacts() { - - return new Object[][] { { "happy_VF_RI2_G2_two_different_artifacts_under_heatBaseheatVolheatNet2" }, - { "happy_VF_RI2_G2_two_different_artifacts_under_heatBaseheatVolheatNet" }, - { "happy_VF_RI2_G2_two_identical_artifacts_under_heatBaseheatVolheatNet" }, - { "happy_VF_RI2_G2_two_different_artifacts_under_nested" }, - { "happy_VF_RI2_G2_two_indentical_nested_under_different_groups" }, - { "happy_VF_RI2_G2_two_different_nested_under_different_groups" }, - { "happy_VF_RI2_G2_two_different_nested_under_same_group" }, - - }; - } - - @DataProvider(name = "negativeArts") - public Object[][] getNegativeArtifacts() { - - return new Object[][] { - - { "negative_VF_RI2_G2_same_heatVol_different_groups" }, - { "negative_VF_RI2_G2_same_heatBase_different_envs" }, - { "negative_VF_RI2_G2_heatBaseHeatVolHeatNet_under_nested" }, - { "negative_VF_RI2_G2_two_indentical_artifacts_under_nested" }, - { "negative_VF_RI2_G2_nested_under_nested" }, { "negative_VF_RI2_G2_same_heatVol_different_groups" }, }; - } - - @Test(dataProvider = "happyArts") - public void createResourceFromCsarArtsHappy(String artifactName) throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(artifactName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - CsarValidationUtils.validateCsarVfArtifact(artifactName, resource); - - } - - @Test(dataProvider = "negativeArts") - public void createResourceFromCsarArtsNegative(String artifactName) throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(artifactName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - assertTrue(createResource.getErrorCode() != 201 && createResource.getErrorCode() != 500); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/OpsRejectDistribution.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/OpsRejectDistribution.java deleted file mode 100644 index 989158ca1e..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/OpsRejectDistribution.java +++ /dev/null @@ -1,61 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.Test; - -public class OpsRejectDistribution extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public OpsRejectDistribution() { - super(name, OpsRejectDistribution.class.getName()); - } - - @Test - public void testOpsRejectDistribution() throws Exception { - User designer = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - ServiceReqDetails service = ElementFactory.getDefaultService(); - RestResponse createdService = ServiceRestUtils.createService(service, designer); - BaseRestUtils.checkCreateResponse(createdService); - Service serviceFirstImport = ResponseParser.parseToObjectUsingMapper(createdService.getResponse(), Service.class); - Component serviceObject = AtomicOperationUtils.changeComponentState(serviceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - AtomicOperationUtils.approveAndRejectServiceForDistribution(serviceObject); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/SearchFilterCategoryExternalAPI.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/SearchFilterCategoryExternalAPI.java deleted file mode 100644 index 3f804a31b1..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/SearchFilterCategoryExternalAPI.java +++ /dev/null @@ -1,285 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Random; - -import org.json.simple.parser.JSONParser; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.AssetTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.be.model.category.SubCategoryDefinition; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.SearchCriteriaEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedExternalAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonParser; - -public class SearchFilterCategoryExternalAPI extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(CRUDExternalAPI.class.getName()); - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - protected Gson gson = new Gson(); - protected JSONParser jsonParser = new JSONParser(); - - @BeforeMethod - public void init() throws Exception{ - AtomicOperationUtils.createDefaultConsumer(true); - } - - ; - @Rule - public static TestName name = new TestName(); - - public SearchFilterCategoryExternalAPI() { - super(name, SearchFilterCategoryExternalAPI.class.getName()); - - } - - // Search for invalid resourceType - @Test - public void searchWithInvalidFilter() throws Exception { - RestResponse restResponse = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "invalid", ResourceTypeEnum.VFC.toString()); - - Integer expectedResponseCode = 400; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - - List<String> variables = Arrays.asList("resourceTypeinvalid", "[resourceType, subCategory, category]"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FILTER_KEY.name(), variables, restResponse.getResponse()); - - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalAuditObject(AssetTypeEnum.RESOURCES, AuditingActionEnum.GET_FILTERED_ASSET_LIST, "?" + SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "invalid=" + ResourceTypeEnum.VFC.toString()); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FILTER_KEY.name()); - expectedExternalAudit.setDESC(AuditValidationUtils.buildAuditDescription(errorInfo, variables)); - expectedExternalAudit.setSTATUS("400"); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_URL, expectedExternalAudit.getRESOURCE_URL()); - AuditValidationUtils.validateAuditExternalSearchAPI(expectedExternalAudit, AuditingActionEnum.GET_FILTERED_ASSET_LIST.getName(), body); - } - - @DataProvider(name="searchForResourceTypeNegativeTest") - public static Object[][] dataProviderSearchForResourceTypeNegativeTest() { - return new Object[][] { - {"invalidResourceType"}, - {""} - }; - } - - // Search for invalid resourceType - @Test(dataProvider="searchForResourceTypeNegativeTest") - public void searchForResourceTypeNegativeTest(String resourceType) throws Exception { - RestResponse restResponse = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue(), resourceType); - - Integer expectedResponseCode = 400; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, restResponse.getResponse()); - - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalAuditObject(AssetTypeEnum.RESOURCES, AuditingActionEnum.GET_FILTERED_ASSET_LIST, "?" + SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "=" + resourceType); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - expectedExternalAudit.setDESC(AuditValidationUtils.buildAuditDescription(errorInfo, variables)); - expectedExternalAudit.setSTATUS("400"); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_URL, expectedExternalAudit.getRESOURCE_URL()); - AuditValidationUtils.validateAuditExternalSearchAPI(expectedExternalAudit, AuditingActionEnum.GET_FILTERED_ASSET_LIST.getName(), body); - } - - // Searching for resource filter incorrect resource type using external API - @Test - public void searchingForResouceFilterIncorrectResouceTypeUsingExternalAPI() throws Exception { - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - List<String> createdResoucesName = new ArrayList<String>(); - createdResoucesName.add(resource.getName()); - - for(ResourceTypeEnum resourceTypeEnum: ResourceTypeEnum.values()) { - // Create resource for each type so it will not return 404 - AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(resourceTypeEnum, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - - RestResponse restResponse = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue(), resourceTypeEnum.toString()); - - Integer expectedResponseCode = 200; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - if(resourceTypeEnum == ResourceTypeEnum.VF) { - validateJsonContainResource(restResponse.getResponse(), createdResoucesName, true); - } else { - validateJsonContainResource(restResponse.getResponse(), createdResoucesName, false); - } - - - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalAuditObject(AssetTypeEnum.RESOURCES, AuditingActionEnum.GET_FILTERED_ASSET_LIST, "?" + SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "=" + resourceTypeEnum.toString()); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_URL, expectedExternalAudit.getRESOURCE_URL()); - AuditValidationUtils.validateAuditExternalSearchAPI(expectedExternalAudit, AuditingActionEnum.GET_FILTERED_ASSET_LIST.getName(), body); - } - } - - // Searching for several resource types using external API - @Test - public void searchingForSeveralResouceTypesUsingExternalAPI() throws Exception { - for(ResourceTypeEnum resourceTypeEnum: ResourceTypeEnum.values()) { - List<String> createdResoucesName = new ArrayList<String>(); - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(resourceTypeEnum, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - createdResoucesName.add(resource.getName()); - - RestResponse restResponse = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue(), resourceTypeEnum.toString()); - - Integer expectedResponseCode = 200; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - validateJsonContainResource(restResponse.getResponse(), createdResoucesName, true); - - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalAuditObject(AssetTypeEnum.RESOURCES, AuditingActionEnum.GET_FILTERED_ASSET_LIST, "?" + SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "=" + resourceTypeEnum.toString()); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_URL, expectedExternalAudit.getRESOURCE_URL()); - AuditValidationUtils.validateAuditExternalSearchAPI(expectedExternalAudit, AuditingActionEnum.GET_FILTERED_ASSET_LIST.getName(), body); - } - } - - // Searching for several resources of type VFCMT using external API - @Test - public void searchingForSeveralResourcesOfTypeVFCMTUsingExternalAPI() throws Exception { - Random random = new Random(); - int numberOfResouceToCreate = random.nextInt(5) + 1; - List<String> createdResoucesName = new ArrayList<String>(); - - for(int i=0; i<numberOfResouceToCreate; i++) { - - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFCMT, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - createdResoucesName.add(resource.getName()); - } - - RestResponse restResponse = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue(), ResourceTypeEnum.VFCMT.toString()); - - Integer expectedResponseCode = 200; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - validateJsonContainResource(restResponse.getResponse(), createdResoucesName, true); - - ExpectedExternalAudit expectedExternalAudit = ElementFactory.getDefaultExternalAuditObject(AssetTypeEnum.RESOURCES, AuditingActionEnum.GET_FILTERED_ASSET_LIST, "?" + SearchCriteriaEnum.RESOURCE_TYPE.getValue() + "=" + ResourceTypeEnum.VFCMT.toString()); - AuditValidationUtils.validateAuditExternalSearchAPI(expectedExternalAudit, AuditingActionEnum.GET_FILTERED_ASSET_LIST.getName(), null); - } - - - - @DataProvider(name="normativeResourceCategory") - public static Object[][] dataProviderNormativeResourceCategory() { - return new Object[][] { - {ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE}, - {ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE}, - }; - } - - // Verify exist of normative resource category from data provider - @Test(dataProvider="normativeResourceCategory") - public void normativeResourceCategory(ResourceCategoryEnum resourceCategoryEnum) throws Exception { - RestResponse restResponse = CategoryRestUtils.getAllCategories(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "resources"); - validateJsonContainResourceCategory(restResponse.getResponse(), resourceCategoryEnum); - - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, resourceCategoryEnum, UserRoleEnum.DESIGNER, true).left().value(); - List<String> createdResoucesName = new ArrayList<String>(); - createdResoucesName.add(resource.getName()); - - restResponse = ResourceRestUtils.getResourceListFilterByCategory(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), resourceCategoryEnum.getCategory()); - - Integer expectedResponseCode = 200; - Assert.assertEquals(restResponse.getErrorCode(), expectedResponseCode); - validateJsonContainResource(restResponse.getResponse(), createdResoucesName, true); - } - - protected void validateJsonContainResource(String json, List<String> resourceNameList, Boolean willBeFound) { - int lenResourceNameList = resourceNameList.size(); - Gson gson = new Gson(); - JsonElement jsonElement = new JsonParser().parse(json); - JsonArray jsonArray = jsonElement.getAsJsonArray(); - for(JsonElement jElement: jsonArray) { - ResourceReqDetails jResource = gson.fromJson(jElement, ResourceReqDetails.class); - - if(resourceNameList.contains(jResource.getName())) { - resourceNameList.remove(jResource.getName()); - } - } - - if(resourceNameList.size() != 0 && willBeFound) { - Assert.assertTrue(false, "Created resource not found on search filtered by category."); - } else if (lenResourceNameList != resourceNameList.size() & !willBeFound) { - Assert.assertTrue(false, "Some of the resources found when expect that no resource will be found."); - } - } - - - - protected void validateJsonContainResourceCategory(String json, ResourceCategoryEnum resourceCategoryEnum) { - Gson gson = new Gson(); - JsonElement jelement = new JsonParser().parse(json); - JsonArray jsonArray = jelement.getAsJsonArray(); - for(JsonElement jsonElement : jsonArray){ - CategoryDefinition categoryDefinition = gson.fromJson(jsonElement, CategoryDefinition.class); - - if(categoryDefinition.getName().equals(resourceCategoryEnum.getCategory())) { - for(SubCategoryDefinition subcategory: categoryDefinition.getSubcategories()) { - if(subcategory.getName().equals(resourceCategoryEnum.getSubCategory())) { - return; - } - } - } - - } - - Assert.assertTrue(false, "Category and subcategory not found in categories list."); - } - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ToscaGroupInsideVF.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ToscaGroupInsideVF.java deleted file mode 100644 index bb86f8f336..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ToscaGroupInsideVF.java +++ /dev/null @@ -1,578 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.lang3.tuple.Pair; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.tosca.datatypes.ToscaDefinition; -import org.openecomp.sdc.ci.tests.utils.ToscaParserUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.CsarValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.Test; - -public class ToscaGroupInsideVF extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(ToscaGroupInsideVF.class.getName()); - - @Rule - public static TestName name = new TestName(); - - public ToscaGroupInsideVF() { - super(name, ToscaGroupInsideVF.class.getName()); - } - - @Test - public void createResourceFromCsarArts() throws Exception { - - // String csar = getCsar(); - // parseCsar(csar); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VF_RI2_G6_withArtifacts"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - Component resourceObject = AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - Resource vfManual = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true) - .left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, vfManual, UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.changeComponentState(vfManual, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true) - .getLeft(); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils - .addComponentInstanceToComponentContainer(resourceObject, service, UserRoleEnum.DESIGNER, true).left() - .value(); - AtomicOperationUtils.addComponentInstanceToComponentContainer(vfManual, service, UserRoleEnum.DESIGNER, true) - .left().value(); - AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - AtomicOperationUtils - .changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFICATIONREQUEST, true) - .getLeft(); - AtomicOperationUtils - .changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CANCELCERTIFICATION, true) - .getLeft(); - AtomicOperationUtils - .changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFICATIONREQUEST, true) - .getLeft(); - - } - - @Test - public void soferTest() throws Exception { - - // String csar = getCsar(); - // parseCsar(csar); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("sofer"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - } - - @Test - public void createVFwith2VLs() throws Exception { - - // String csar = getCsar(); - // parseCsar(csar); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VSPPackage"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - Component resourceObject = AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - Resource vfManual = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true) - .left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, vfManual, UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.changeComponentState(vfManual, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true) - .getLeft(); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils - .addComponentInstanceToComponentContainer(resourceObject, service, UserRoleEnum.DESIGNER, true).left() - .value(); - AtomicOperationUtils.addComponentInstanceToComponentContainer(vfManual, service, UserRoleEnum.DESIGNER, true) - .left().value(); - AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - AtomicOperationUtils - .changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFICATIONREQUEST, true) - .getLeft(); - AtomicOperationUtils - .changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CANCELCERTIFICATION, true) - .getLeft(); - AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true) - .getLeft(); - - } - - @Test // (enabled = false) - public void createResourceFromCsarHappy() throws Exception { - // String csarUUID = "VF_RI2_G2_withArtifacts"; - String csarUUID = "VF_RI2_G1_Invalid"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - } - - @Test // (enabled = false) - public void createResourceFromCsarWithProperty() throws Exception { - String csarUUID = "VF_RI2_G4_withArtifacts"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - } - - @Test // (enabled = false) - public void UpdateCsarWithNonExistingResourceInstanceFail() throws Exception { - - // String csarUUID = "VF_RI2_G1-RI_NotExist"; - // String csarUUID = "nested3"; - - // String csarUUID = "VF_RI2_G1_Invalid_WithArtifacts"; - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifactsRI_FAIL.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails.setName(resource.getName()); - // resourceDetails.setVendorName("Govnuk"); - // resourceDetails.setDescription("Other"); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void UpdateCsarWithSameCsarDifferentMetadata() throws Exception { - - // User sdncModifierDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // RestResponse copyRes = - // copyCsarRest(sdncModifierDetails,"VF_RI2_G4_withArtifacts_a.csar","VF_RI2_G4_withArtifacts.csar"); - // BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - resourceDetails.setName(resource.getName()); - resourceDetails.setVendorName("Govnuk"); - resourceDetails.setDescription("Other"); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void UpdateCsarWithSameCsar() throws Exception { - - // User sdncModifierDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // RestResponse copyRes = - // copyCsarRest(sdncModifierDetails,"VF_RI2_G4_withArtifacts_a.csar","VF_RI2_G4_withArtifacts.csar"); - // BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - resourceDetails.setName(resource.getName()); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void UpdateCsarCertifiedVfWithSameCsar() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - Pair<Component, RestResponse> changeComponentState = AtomicOperationUtils.changeComponentState(resource, - UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - resource = (Resource) changeComponentState.getLeft(); - - resourceDetails.setName(resource.getName()); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void UpdateCsarDifferentTosca() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifactsUpdated.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails.setName(resource.getName()); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void UpdateCsarDifferentToscaAndArtifacts() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - String csarUUID = "VF_RI2_G4_withArtifacts.csar"; - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_UpdateToscaAndArtifacts.csar", - "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails.setName(resource.getName()); - RestResponse createResource2 = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource2); - Resource resource2 = ResponseParser.parseToObjectUsingMapper(createResource2.getResponse(), Resource.class); - - CsarValidationUtils.validateCsarVfArtifact(csarUUID, resource); - ToscaDefinition toscaDefinition = ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition, resource); - - // CsarValidationUtils.validateCsarVfArtifact(csarUUID2, resource2); - // ToscaDefinition toscaDefinition2 = - // ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID2); - // CsarValidationUtils.validateToscaDefinitonObjectVsResource(toscaDefinition2, - // resource2); - - // Csar csar = parserTocsarObject(csarUUID); - // validateCsarVsResourceObj(csar, resource); - // csar.node_types(); - - } - - @Test // (enabled = false) - public void migration() throws Exception { - String csarUUID = "VF_RI2_G4_withArtifacts"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setName("Resource1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - resourceDetails.setName("Resource2"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - - resourceDetails.setName("Resource3"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - resourceDetails.setName("Resource4"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - resourceDetails.setName("Resource5"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKOUT, true).getLeft(); - - resourceDetails.setName("Resource6"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.STARTCERTIFICATION, true) - .getLeft(); - - resourceDetails.setName("Resource7"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - resource = (Resource) AtomicOperationUtils - .changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFICATIONREQUEST, true) - .getLeft(); - - logger.debug("7 VF resources were created"); - - } - - public static RestResponse copyCsarRest(User sdncModifierDetails, String sourceCsarUuid, String targetCsarUuid) - throws Exception { - - Config config = Utils.getConfig(); - String url = String.format(Urls.COPY_CSAR_USING_SIMULATOR, config.getCatalogBeHost(), config.getCatalogBePort(), - sourceCsarUuid, targetCsarUuid); - String userId = sdncModifierDetails.getUserId(); - Map<String, String> headersMap = prepareHeadersMap(userId); - HttpRequest http = new HttpRequest(); - - RestResponse copyCsarResponse = http.httpSendPost(url, "dummy", headersMap); - if (copyCsarResponse.getErrorCode() != 200) { - return null; - } - return copyCsarResponse; - - } - - private static Map<String, String> prepareHeadersMap(String userId) { - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), "application/json"); - if (userId != null) { - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId); - } - return headersMap; - } - - public static void main(String[] args) throws Exception { - // String csarUUID = "VF_RI2_G4_withArtifacts"; - String csarUUID = "node_types"; - ToscaParserUtils.getToscaDefinitionObjectByCsarUuid(csarUUID); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/VFCMTExternalAPI.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/VFCMTExternalAPI.java deleted file mode 100644 index ce6103e7c2..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/VFCMTExternalAPI.java +++ /dev/null @@ -1,388 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import static java.util.Arrays.asList; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.json.simple.parser.JSONParser; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.AssetTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceAssetStructure; -import org.openecomp.sdc.ci.tests.datatypes.ResourceExternalReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.SearchCriteriaEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.AssetRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtilsExternalAPI; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.Assert; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; - -public class VFCMTExternalAPI extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(CRUDExternalAPI.class.getName()); - protected static final String UPLOAD_ARTIFACT_PAYLOAD = "UHVUVFktVXNlci1LZXktRmlsZS0yOiBzc2gtcnNhDQpFbmNyeXB0aW9uOiBhZXMyNTYtY2JjDQpDb21tZW5wOA0K"; - protected static final String UPLOAD_ARTIFACT_NAME = "TLV_prv.ppk"; - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - - - protected Gson gson = new Gson(); - protected JSONParser jsonParser = new JSONParser(); - - - protected String serviceVersion; - protected ResourceReqDetails resourceDetails; - protected User sdncUserDetails; - protected ServiceReqDetails serviceDetails; - - - @BeforeMethod - public void init() throws Exception{ - AtomicOperationUtils.createDefaultConsumer(true); - } - - - @Rule - public static TestName name = new TestName(); - - public VFCMTExternalAPI() { - super(name, VFCMTExternalAPI.class.getName()); - - } - - // Create VFCMT - validate response + search external api + retrieve metadata via external api - success flow - @Test - public void createVfcmt() throws Exception { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails defaultResource = ElementFactory.getDefaultResourceByType("ci", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - RestResponse restResponse = ResourceRestUtilsExternalAPI.createResource(defaultResource, defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(restResponse.getResponse(), ResourceAssetStructure.class); - - // auditing verification - AuditingActionEnum action = AuditingActionEnum.CREATE_RESOURCE_BY_API; - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, parsedCreatedResponse.getName()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory.getDefaultCreateResourceExternalAPI(parsedCreatedResponse.getName()); - AuditValidationUtils.validateAuditExternalCreateResource(expectedResourceAuditJavaObject, action.getName(), body); - - // search for vfcmt via external api - validate created resource exist - RestResponse searchResult = ResourceRestUtils.getResourceListFilterByCriteria(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), AssetTypeEnum.RESOURCES.getValue(), SearchCriteriaEnum.RESOURCE_TYPE.getValue(), ResourceTypeEnum.VFCMT.toString()); - JsonArray listSearchResult = gson.fromJson(searchResult.getResponse(), JsonArray.class); - boolean found = false; - for(JsonElement result: listSearchResult) { - ResourceAssetStructure parsedResult = gson.fromJson(result, ResourceAssetStructure.class); - if(parsedResult.getName().equals(defaultResource.getName())) { - found = true; - } - } - Assert.assertEquals(found, true); - - // get created vfcmt metadata via external api - validate data - RestResponse resourceMetadata = AssetRestUtils.getAssetMetadataByAssetTypeAndUuid(true, AssetTypeEnum.RESOURCES, parsedCreatedResponse.getUuid()); - ResourceAssetStructure parsedMetadata = gson.fromJson(resourceMetadata.getResponse(), ResourceAssetStructure.class); - - Assert.assertEquals(parsedCreatedResponse.getUuid(), parsedMetadata.getUuid()); - Assert.assertEquals(parsedCreatedResponse.getInvariantUUID(), parsedMetadata.getInvariantUUID()); - Assert.assertEquals(parsedCreatedResponse.getName(), parsedMetadata.getName()); - Assert.assertEquals(parsedCreatedResponse.getVersion(), parsedMetadata.getVersion()); - Assert.assertEquals(parsedCreatedResponse.getCategory(), parsedMetadata.getCategory()); - Assert.assertEquals(parsedCreatedResponse.getSubCategory(), parsedMetadata.getSubCategory()); - Assert.assertEquals(parsedCreatedResponse.getResourceType(), parsedMetadata.getResourceType()); - Assert.assertEquals(parsedCreatedResponse.getLifecycleState(), parsedMetadata.getLifecycleState()); - Assert.assertEquals(parsedCreatedResponse.getLastUpdaterUserId(), parsedMetadata.getLastUpdaterUserId()); - Assert.assertEquals(parsedCreatedResponse.getLastUpdaterFullName(), parsedMetadata.getLastUpdaterFullName()); - Assert.assertEquals(parsedCreatedResponse.getToscaResourceName(), parsedMetadata.getToscaResourceName()); - } - - - - // Create two VFCMT with same name - validate error + audit - failure flow - @Test - public void createTwoVfcmtWithSameName() throws Exception { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails defaultResource = ElementFactory.getDefaultResourceByType("ci", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - // create vfcmt - RestResponse firstTryToCreate = ResourceRestUtilsExternalAPI.createResource(defaultResource, defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(firstTryToCreate.getResponse(), ResourceAssetStructure.class); - - // auditing verification - AuditingActionEnum action = AuditingActionEnum.CREATE_RESOURCE_BY_API; - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, parsedCreatedResponse.getName()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory.getDefaultCreateResourceExternalAPI(parsedCreatedResponse.getName()); - AuditValidationUtils.validateAuditExternalCreateResource(expectedResourceAuditJavaObject, action.getName(), body); - - // try to create another vfcmt wit same name - RestResponse secondTryToCreate = ResourceRestUtilsExternalAPI.createResource(defaultResource, defaultUser); - Assert.assertEquals((int)secondTryToCreate.getErrorCode(), 409); - - body.put(AuditingFieldsKeysEnum.AUDIT_STATUS, "409"); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name()); - List<String> variables = asList(ComponentTypeEnum.RESOURCE.getValue(), defaultResource.getName()); - expectedResourceAuditJavaObject.setDesc(AuditValidationUtils.buildAuditDescription(errorInfo, variables)); - expectedResourceAuditJavaObject.setStatus("409"); - AuditValidationUtils.validateAuditExternalCreateResource(expectedResourceAuditJavaObject, action.getName(), body); - } - - - - @DataProvider(name="createVfcmtVariousFailureFlows") - public static Object[][] dataProviderCreateVfcmtVariousFailureFlows() { - return new Object[][] { - {"name_missing"}, - {"name_to_long"}, - {"name_with_invalid_char"}, - {"description_missing"}, - {"description_to_long"}, - {"description_with_invalid_char"}, - {"resource_type_missing"}, - {"resource_type_invalid"}, - {"category_type_missing"}, - {"category_type_invalid"}, - {"subcategory_type_missing"}, - {"subcategory_type_invalid"}, - {"vendor_name_missing"}, - {"vendor_name_to_long"}, - {"vendor_name_with_invalid_char"}, - {"vendor_release_missing"}, - {"vendor_release_to_long"}, - {"vendor_release_with_invalid_char"}, - {"tags_missing"}, - {"tags_to_long"}, - {"tags_invalid"}, - {"icon_missing"}, - {"contact_id_missing"}, - {"contact_id_invalid"}, - }; - } - - // Various failure flows - @Test(dataProvider="createVfcmtVariousFailureFlows") - public void createVfcmtVariousFailureFlows(String flow) throws Exception { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails defaultResource = ElementFactory.getDefaultResourceByType("ci", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - ErrorInfo errorInfo = null; - List<String> variables = null; - AuditingActionEnum action = AuditingActionEnum.CREATE_RESOURCE_BY_API; - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory.getDefaultCreateResourceExternalAPI(defaultResource.getName()); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, defaultResource.getName()); - - switch (flow) { - case "name_missing": - defaultResource.setName(""); - List<String> resourceTags = defaultResource.getTags(); - resourceTags.add(""); - defaultResource.setTags(resourceTags); - expectedResourceAuditJavaObject.setResourceName(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_COMPONENT_NAME.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, ""); - break; - case "name_to_long": - defaultResource.setName("asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1"); - expectedResourceAuditJavaObject.setResourceName("asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue(), "1024"); - - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, "asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1"); - break; - case "name_with_invalid_char": - defaultResource.setName("!@#$%^&*("); - expectedResourceAuditJavaObject.setResourceName("!@#$%^&*("); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_COMPONENT_NAME.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, "!@#$%^&*("); - break; - case "description_missing": - defaultResource.setDescription(""); - expectedResourceAuditJavaObject.setDesc(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "description_to_long": - defaultResource.setDescription("asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1"); - expectedResourceAuditJavaObject.setDesc("asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1asdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjklasdfghjk1"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_DESCRIPTION_EXCEEDS_LIMIT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue(), "1024"); - break; - case "description_with_invalid_char": - defaultResource.setDescription("\uC2B5"); - expectedResourceAuditJavaObject.setDesc("t"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INVALID_DESCRIPTION.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; -// // TODO: defect on the flow - need to get error instead create VFC -// case "resource_type_missing": -// defaultResource.setResourceType(""); -// expectedResourceAuditJavaObject.setResourceType(""); -// errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name()); -// variables = asList(ComponentTypeEnum.RESOURCE.getValue()); -// break; - // TODO: in audit RESOURCE_NAME is empty - case "resource_type_invalid": - defaultResource.setResourceType("invalid"); - expectedResourceAuditJavaObject.setResourceType("invalid"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "category_type_missing": - defaultResource.setCategory(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - // TODO: not correct response code in this flow - 500 instead 400 - case "category_type_invalid": - defaultResource.setCategory("invalid"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INVALID_CATEGORY.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "subcategory_type_missing": - defaultResource.setSubcategory(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_SUBCATEGORY.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - // TODO: not correct error - it not missing it not correct - case "subcategory_type_invalid": - defaultResource.setSubcategory("invalid"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_SUB_CATEGORY_NOT_FOUND_FOR_CATEGORY.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "vendor_name_missing": - defaultResource.setVendorName(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_NAME.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "vendor_name_to_long": - defaultResource.setVendorName("asdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdff"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.VENDOR_NAME_EXCEEDS_LIMIT.name()); - variables = asList("25"); - break; - case "vendor_name_with_invalid_char": - defaultResource.setVendorName("!@#$*()&*^%$#@"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_VENDOR_NAME.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "vendor_release_missing": - defaultResource.setVendorRelease(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_RELEASE.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "vendor_release_to_long": - defaultResource.setVendorRelease("asdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdff"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.VENDOR_RELEASE_EXCEEDS_LIMIT.name()); - variables = asList("25"); - break; - case "vendor_release_with_invalid_char": - defaultResource.setVendorRelease("!@#$*()&*^%$#@"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_VENDOR_RELEASE.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "tags_missing": - defaultResource.setTags(asList("")); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FIELD_FORMAT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue(), "tag"); - break; - case "tags_to_long": - defaultResource.setTags(asList("asdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdffasdff")); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_SINGLE_TAG_EXCEED_LIMIT.name()); - variables = asList("1024"); - break; - case "tags_invalid": - defaultResource.setTags(asList("asfdg")); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INVALID_TAGS_NO_COMP_NAME.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "icon_missing": - defaultResource.setIcon(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_ICON.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "att_contact_missing": - defaultResource.setContactId(""); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CONTACT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - case "att_contact_invalid": - default: - defaultResource.setContactId("abcderfffdfdfd"); - errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_INVALID_CONTACT.name()); - variables = asList(ComponentTypeEnum.RESOURCE.getValue()); - break; - } - - // create vfcmt - RestResponse restResponse = ResourceRestUtilsExternalAPI.createResource(defaultResource, defaultUser); - - expectedResourceAuditJavaObject.setStatus("400"); - expectedResourceAuditJavaObject.setDesc(AuditValidationUtils.buildAuditDescription(errorInfo, variables)); - AuditValidationUtils.validateAuditExternalCreateResource(expectedResourceAuditJavaObject, action.getName(), body); - - } - - - - - - - - - - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ValidateConformanceLevel.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ValidateConformanceLevel.java deleted file mode 100644 index d9548bd4f8..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/ValidateConformanceLevel.java +++ /dev/null @@ -1,101 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import static org.testng.Assert.assertTrue; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.Test; - -public class ValidateConformanceLevel extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public ValidateConformanceLevel() { - super(name, ValidateConformanceLevel.class.getName()); - } - - @Test - public void testValidateServiceConformanceLevel() throws Exception { - User user = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - ServiceReqDetails service = ElementFactory.getDefaultService(); - RestResponse createdService = ServiceRestUtils.createService(service, user); - BaseRestUtils.checkCreateResponse(createdService); - Service serviceFirstImport = ResponseParser.parseToObjectUsingMapper(createdService.getResponse(), Service.class); - Component serviceObject = AtomicOperationUtils.changeComponentState(serviceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - - RestResponse apiRes = ComponentRestUtils.validateConformanceLevel(serviceObject.getUUID(), user.getUserId()); - String result = apiRes.getResponse(); - assertTrue(apiRes.getErrorCode() == 200); - assertTrue(result.equals("true")); - } - - @Test - public void testValidateServiceConformanceLevelForSecondMajorVersion() throws Exception { - User user = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - ServiceReqDetails service = ElementFactory.getDefaultService(); - RestResponse createdService = ServiceRestUtils.createService(service, user); - BaseRestUtils.checkCreateResponse(createdService); - Service serviceFirstImport = ResponseParser.parseToObjectUsingMapper(createdService.getResponse(), Service.class); - Component serviceObject = AtomicOperationUtils.changeComponentState(serviceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - String uuid1 = serviceObject.getUUID(); - Component service20Object = AtomicOperationUtils.changeComponentState(serviceFirstImport, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true).getLeft(); - service20Object = AtomicOperationUtils.changeComponentState(service20Object, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - String uuid2 = service20Object.getUUID(); - - assertTrue(uuid1 != uuid2); - - RestResponse apiRes = ComponentRestUtils.validateConformanceLevel(uuid1, user.getUserId()); - String result = apiRes.getResponse(); - assertTrue(apiRes.getErrorCode() == 200); - assertTrue(result.equals("true")); - - apiRes = ComponentRestUtils.validateConformanceLevel(uuid2, user.getUserId()); - result = apiRes.getResponse(); - assertTrue(apiRes.getErrorCode() == 200); - assertTrue(result.equals("true")); - } - - @Test - public void testValidateConformanceLevel404() throws Exception { - User user = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse apiRes = ComponentRestUtils.validateConformanceLevel("fake-uuid-for-test", user.getUserId()); - assertTrue(apiRes.getErrorCode() == 404); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/test1.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/test1.java deleted file mode 100644 index cd0332e768..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/devCI/test1.java +++ /dev/null @@ -1,95 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.devCI; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.DistributionNotificationStatusEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.DistributionValidationUtils; -import org.testng.annotations.Test; - -import fj.data.Either; - -public class test1 extends ComponentBaseTest{ - - @Rule - public static TestName name = new TestName(); - - public test1() { - super(name, CRUDExternalAPI.class.getName()); - - } - - @Test() - public void uploadArtifactOnServiceViaExternalAPI() throws Exception { - Config config = Utils.getConfig(); - - Service service = AtomicOperationUtils.createServiceByCategory(ServiceCategoriesEnum.MOBILITY, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.MODEL_QUERY_SPEC, service, UserRoleEnum.DESIGNER, true, true); - service = (Service) AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - if(config.getIsDistributionClientRunning()){ - List<String> distributionStatusList = Arrays.asList(DistributionNotificationStatusEnum.DOWNLOAD_OK.toString(), DistributionNotificationStatusEnum.DEPLOY_OK.toString(), DistributionNotificationStatusEnum.NOTIFIED.toString()); - DistributionValidationUtils.validateDistributedArtifactsByAudit(service, distributionStatusList); - } - } - - - public static Map<String, String> addVNF_ModuleDeploymentArtifactToMap(Service service, Map<String, String> distributionArtifactMap){ - - - return distributionArtifactMap; - } - - public Component getComponentInTargetLifeCycleState(String componentType, UserRoleEnum creatorUser, LifeCycleStatesEnum targetLifeCycleState) throws Exception { - Component component = null; - - if(componentType.toLowerCase().equals("vf")) { - Either<Resource, RestResponse> createdResource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VF, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, creatorUser, true); - component = createdResource.left().value(); - component = AtomicOperationUtils.changeComponentState(component, creatorUser, targetLifeCycleState, true).getLeft(); - } else { - Either<Service, RestResponse> createdResource = AtomicOperationUtils.createDefaultService(creatorUser, true); - component = createdResource.left().value(); - component = AtomicOperationUtils.changeComponentState(component, creatorUser, targetLifeCycleState, true).getLeft(); - } - - return component; - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/AuthanticationTests.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/AuthanticationTests.java deleted file mode 100644 index b4a9bb87ce..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/AuthanticationTests.java +++ /dev/null @@ -1,186 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.distribution; - -import static org.testng.AssertJUnit.assertEquals; - -import java.io.IOException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedAuthenticationAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ConsumerRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.util.ValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -public class AuthanticationTests extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - protected User sdncUserDetails; - - protected static final String AUTH_SUCCESS = "AUTH_SUCCESS"; - - protected static final String AUTH_REQUIRED = "AUTH_REQUIRED"; - - // user ci password 123456 - // protected final String authorizationHeader = "Basic Y2k6MTIzNDU2"; - // user ci password 123456 - protected final String USER = "ci"; - protected final String PASSWORD = "123456"; - protected final String SALT = "2a1f887d607d4515d4066fe0f5452a50"; - protected final String HASHED_PASSWORD = "0a0dc557c3bf594b1a48030e3e99227580168b21f44e285c69740b8d5b13e33b"; - protected User sdncAdminUserDetails; - protected ConsumerDataDefinition consumerDataDefinition; - - public AuthanticationTests() { - super(name, AuthanticationTests.class.getName()); - } - - @DataProvider - private final Object[][] getServiceDepArtType() throws IOException, Exception { - return new Object[][] { { ArtifactTypeEnum.YANG_XML.getType() }, { ArtifactTypeEnum.OTHER.getType() } }; - } - - @BeforeMethod - public void setup() throws Exception { - resourceDetails = ElementFactory.getDefaultResource(); - serviceDetails = ElementFactory.getDefaultService(); - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncAdminUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - createComponents(); - consumerDataDefinition = createConsumer(); - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - ; - - RestResponse createResponse = ConsumerRestUtils.createConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkCreateResponse(createResponse); - - } - - @AfterMethod - public void tearDown() throws Exception { - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - ; - - } - - protected ConsumerDataDefinition createConsumer() { - ConsumerDataDefinition consumer = new ConsumerDataDefinition(); - consumer.setConsumerName(USER); - consumer.setConsumerSalt(SALT); - consumer.setConsumerPassword(HASHED_PASSWORD); - return consumer; - - } - - protected void createComponents() throws Exception { - RestResponse response = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - ServiceRestUtils.checkCreateResponse(response); - } - - @Test(dataProvider = "getServiceDepArtType", description = "mumu") - public void downloadServiceArtifactSuccessWithAutantication(String serviceDepArtType) throws Exception { - String serviceUniqueId = serviceDetails.getUniqueId(); - - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(serviceDepArtType); - - RestResponse addArtifactResponse = ArtifactRestUtils.addInformationalArtifactToService(artifactDetails, - sdncUserDetails, serviceUniqueId, ArtifactRestUtils.calculateChecksum(artifactDetails)); - AssertJUnit.assertEquals("Check response code after adding interface artifact", 200, - addArtifactResponse.getErrorCode().intValue()); - - String artifactName = ValidationUtils.normalizeFileName(artifactDetails.getArtifactName()); - // Thread.sleep(5000); - Map<String, String> authorizationHeaders = BaseRestUtils.addAuthorizeHeader(USER, PASSWORD); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, artifactDetails, - sdncUserDetails, authorizationHeaders); - AssertJUnit.assertEquals("Check response code after download resource", 200, - restResponse.getErrorCode().intValue()); - - List<String> contDispHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_DISPOSITION_HEADER); - AssertJUnit.assertNotNull(contDispHeaderList); - AssertJUnit.assertEquals("Check content disposition header", - new StringBuilder().append("attachment; filename=\"").append(artifactName).append("\"").toString(), - contDispHeaderList.get(0)); - - String downloadUrl = ArtifactRestUtils - .getPartialUrlByArtifactName(serviceDetails, serviceDetails.getVersion(), artifactName).substring(6); - - ExpectedAuthenticationAudit expectedAuthenticationAudit = new ExpectedAuthenticationAudit(downloadUrl, USER, - AuditingActionEnum.AUTH_REQUEST.getName(), AUTH_SUCCESS); - AuditValidationUtils.validateAuthenticationAudit(expectedAuthenticationAudit); - } - - @Test(dataProvider = "getServiceDepArtType") - public void downloadServiceArtifactWithOutAutantication(String serviceDepArtType) throws Exception { - String serviceUniqueId = serviceDetails.getUniqueId(); - - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(serviceDepArtType); - - RestResponse addArtifactResponse = ArtifactRestUtils.addInformationalArtifactToService(artifactDetails, - sdncUserDetails, serviceUniqueId, ArtifactRestUtils.calculateChecksum(artifactDetails)); - assertEquals("Check response code after adding interface artifact", 200, - addArtifactResponse.getErrorCode().intValue()); - - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, artifactDetails, - sdncUserDetails, authorizationHeaders); - assertEquals("Check response code after download resource failure", 401, - restResponse.getErrorCode().intValue()); - - String downloadUrl = ArtifactRestUtils.getPartialUrlByArtifactName(serviceDetails, serviceDetails.getVersion(), - artifactDetails.getArtifactName()).substring(6); - ExpectedAuthenticationAudit expectedAuthenticationAudit = new ExpectedAuthenticationAudit(downloadUrl, "", - AuditingActionEnum.AUTH_REQUEST.getName(), AUTH_REQUIRED); - AuditValidationUtils.validateAuthenticationAudit(expectedAuthenticationAudit); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/DistributionDownloadArtifactTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/DistributionDownloadArtifactTest.java deleted file mode 100644 index 4dbc374e35..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/distribution/DistributionDownloadArtifactTest.java +++ /dev/null @@ -1,596 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.distribution; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.zip.ZipInputStream; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedDistDownloadAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.ArtifactUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ConsumerRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.util.GeneralUtility; -import org.openecomp.sdc.common.util.ValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class DistributionDownloadArtifactTest extends ComponentBaseTest { - - protected static ResourceReqDetails resourceDetails; - protected static User designerUser; - protected static User adminUser; - protected static String resourceBaseVersion; - // user ci password 123456 - protected final String authorizationHeader = "Basic Y2k6MTIzNDU2"; - protected ConsumerDataDefinition consumerDataDefinition; - - @Rule - public static TestName name = new TestName(); - protected static String artifactInterfaceType; - protected static String artifactOperationName; - - protected static ServiceReqDetails serviceDetails; - protected static String serviceBaseVersion; - protected static String serviceUniqueId; - protected final String USER = "ci"; - protected final String PASSWORD = "123456"; - protected final String SALT = "2a1f887d607d4515d4066fe0f5452a50"; - protected final String HASHED_PASSWORD = "0a0dc557c3bf594b1a48030e3e99227580168b21f44e285c69740b8d5b13e33b"; - - public DistributionDownloadArtifactTest() { - super(name, DistributionDownloadArtifactTest.class.getName()); - } - - // @BeforeClass - // public static void InitBeforeTest() throws Exception - // { - // - // - // resourceBaseVersion = "0.1"; - // serviceBaseVersion = "0.1"; - // designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // adminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // resourceDetails = - // ElementFactory.getDefaultResourceByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - // NormativeTypesEnum.ROOT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, - // adminUser); - // serviceDetails = ElementFactory.getDefaultService(); - // serviceUniqueId = "svc_" + serviceDetails.getName().toLowerCase() + "." + - // serviceBaseVersion; - // artifactInterfaceType = "standard"; - // artifactOperationName = "start"; - // } - - @BeforeMethod - public void setup() throws Exception { - - resourceBaseVersion = "0.1"; - serviceBaseVersion = "0.1"; - designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - adminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - resourceDetails = ElementFactory.getDefaultResourceByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, adminUser); - serviceDetails = ElementFactory.getDefaultService(); - serviceUniqueId = "svc_" + serviceDetails.getName().toLowerCase() + "." + serviceBaseVersion; - artifactInterfaceType = "standard"; - artifactOperationName = "start"; - consumerDataDefinition = createConsumer(); - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, adminUser); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - - RestResponse createResponse = ConsumerRestUtils.createConsumer(consumerDataDefinition, adminUser); - BaseRestUtils.checkCreateResponse(createResponse); - } - - @Test - public void downloadResourceArtifactSuccess() throws Exception { - // Create service - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - AssertJUnit.assertEquals("Check response code after creating resource", 201, - serviceResponse.getErrorCode().intValue()); - - // Create resource - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, designerUser); - AssertJUnit.assertEquals("Check response code after creating resource", 201, - createResource.getErrorCode().intValue()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(createResource.getResponse()); - - ArtifactReqDetails artifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - // Setting the name to be with space - artifactDetails.setArtifactName("test artifact file.yaml"); - // artifactDetails.set(ArtifactRestUtils.calculateChecksum(artifactDetails)); - - RestResponse addArtifactResponse = ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, - designerUser, resource.getUniqueId(), ArtifactRestUtils.calculateChecksum(artifactDetails)); - AssertJUnit.assertEquals("Check response code after adding interface artifact", 200, - addArtifactResponse.getErrorCode().intValue()); - - // Getting expected artifact checksum - ArtifactDefinition artifactResp = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addArtifactResponse.getResponse()); - String expectedPayloadChecksum = artifactResp.getArtifactChecksum(); - - Config config = Utils.getConfig(); - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceBaseVersion, - ValidationUtils.convertToSystemName(resource.getName()), resource.getVersion(), - artifactResp.getArtifactName())); - // String fullUrlFormatted = - // String.format(Urls.DOWNLOAD_RESOURCE_ARTIFACT_FULL_URL, - // config.getCatalogBeHost(),config.getCatalogBePort(), relativeUrl); - // String consumerId = "dummy.ecomp"; - - ResourceReqDetails resourceInfo = new ResourceReqDetails(); - resourceInfo.setName(resource.getName()); - resourceInfo.setVersion(resource.getVersion()); - - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceDetails, resourceInfo, - artifactDetails, designerUser, authorizationHeaders); - // RestResponse restResponse = - // artifactUtils.downloadResourceArtifact(designerUser,fullUrlFormatted, - // consumerId,true); - AssertJUnit.assertEquals("Check response code after download resource", 200, - restResponse.getErrorCode().intValue()); - - // Validating headers - // content disposition - List<String> contDispHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_DISPOSITION_HEADER); - AssertJUnit.assertNotNull(contDispHeaderList); - AssertJUnit - .assertEquals( - "Check content disposition header", new StringBuilder().append("attachment; filename=\"") - .append(artifactResp.getArtifactName()).append("\"").toString(), - contDispHeaderList.get(0)); - - // content type - List<String> contTypeHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_TYPE_HEADER); - AssertJUnit.assertNotNull(contTypeHeaderList); - AssertJUnit.assertEquals("Check content type", "application/octet-stream", contTypeHeaderList.get(0)); - - String actualContents = restResponse.getResponse(); - - // Contents - comparing decoded content - AssertJUnit.assertEquals(artifactDetails.getPayload(), Base64.encodeBase64String(actualContents.getBytes())); - - // validating checksum - String actualPayloadChecksum = GeneralUtility.calculateMD5Base64EncodedByByteArray(actualContents.getBytes()); - AssertJUnit.assertEquals(expectedPayloadChecksum, actualPayloadChecksum); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - BaseRestUtils.ecomp, relativeUrl, "200", "OK"); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - protected void download_serviceNameNotFound_inner(String serviceName, String serviceVersion, String resourceName, - String resourceVersion) throws Exception { - Config config = Utils.getConfig(); - String artifactName = "kuku"; - ArtifactReqDetails artifact = new ArtifactReqDetails(); - artifact.setArtifactName(artifactName); - String relativeUrl; - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - ServiceReqDetails serviceInfo = new ServiceReqDetails(); - serviceInfo.setName(serviceName); - serviceInfo.setVersion(serviceVersion); - RestResponse restResponse = null; - if (resourceName != null) { - ResourceReqDetails resourceDetailes = new ResourceReqDetails(); - resourceDetailes.setName(resourceName); - resourceDetailes.setVersion(resourceVersion); - relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceName), serviceVersion, - ValidationUtils.convertToSystemName(resourceName), resourceVersion, artifactName)); - restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceInfo, resourceDetailes, artifact, - designerUser, authorizationHeaders); - } else { - relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceName), serviceVersion, artifactName)); - restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceInfo, artifact, designerUser, - authorizationHeaders); - } - - // RestResponse restResponse = - // artifactUtils.downloadResourceArtifact(designerUser,fullUrlFormatted, - // consumerId,true); - AssertJUnit.assertEquals("Check response code after download resource", 404, - restResponse.getErrorCode().intValue()); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - BaseRestUtils.ecomp, relativeUrl, "404", "SVC4503: Error: Requested '" - + ValidationUtils.convertToSystemName(serviceName) + "' service was not found."); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - protected void download_serviceVersionNotFound_inner(String serviceName, String serviceVersion, String resourceName, - String resourceVersion) throws Exception { - Config config = Utils.getConfig(); - String artifactName = "kuku"; - String relativeUrl; - ArtifactReqDetails artifact = new ArtifactReqDetails(); - artifact.setArtifactName(artifactName); - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - ServiceReqDetails serviceInfo = new ServiceReqDetails(); - serviceInfo.setName(serviceName); - serviceInfo.setVersion(serviceVersion); - RestResponse restResponse = null; - if (resourceName != null) { - ResourceReqDetails resourceDetailes = new ResourceReqDetails(); - resourceDetailes.setName(resourceName); - resourceDetailes.setVersion(resourceVersion); - relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceName), serviceVersion, - ValidationUtils.convertToSystemName(resourceName), resourceVersion, artifactName)); - restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceInfo, resourceDetailes, artifact, - designerUser, authorizationHeaders); - } else { - relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceName), serviceVersion, artifactName)); - restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceInfo, artifact, designerUser, - authorizationHeaders); - } - // String fullUrlFormatted = - // String.format(Urls.DOWNLOAD_RESOURCE_ARTIFACT_FULL_URL, - // config.getCatalogBeHost(),config.getCatalogBePort(), relativeUrl); - // String consumerId = "dummy.ecomp"; - - // RestResponse restResponse = - // artifactUtils.downloadResourceArtifact(designerUser,fullUrlFormatted, - // consumerId,true); - AssertJUnit.assertEquals("Check response code after download resource", 404, - restResponse.getErrorCode().intValue()); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - BaseRestUtils.ecomp, relativeUrl, "404", - "SVC4504: Error: Service version " + serviceVersion + " was not found."); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - protected String encodeUrlForDownload(String url) { - return url.replaceAll(" ", "%20"); - } - - protected ConsumerDataDefinition createConsumer() { - ConsumerDataDefinition consumer = new ConsumerDataDefinition(); - consumer.setConsumerName(USER); - consumer.setConsumerSalt(SALT); - consumer.setConsumerPassword(HASHED_PASSWORD); - return consumer; - - } - - @Test(enabled = false) - public void downloadServiceArtifactSuccess() throws Exception { - // Create service - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, serviceResponse.getErrorCode().intValue()); - serviceUniqueId = ResponseParser.convertServiceResponseToJavaObject(serviceResponse.getResponse()) - .getUniqueId(); - - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultDeploymentArtifactForType("MURANO_PKG"); - - RestResponse addArtifactResponse = ArtifactRestUtils.addInformationalArtifactToService(artifactDetails, - designerUser, serviceUniqueId, ArtifactRestUtils.calculateMD5Header(artifactDetails)); - assertEquals("Check response code after adding interface artifact", 200, - addArtifactResponse.getErrorCode().intValue()); - - // Getting expected artifact checksum - - // ArtifactResJavaObject artifactResp = - // artifactUtils.parseInformationalArtifactResp(addArtifactResponse); - String expectedPayloadChecksum = ResponseParser - .convertArtifactDefinitionResponseToJavaObject(addArtifactResponse.getResponse()).getArtifactChecksum(); - - String artifactName = ValidationUtils.normalizeFileName(artifactDetails.getArtifactName()); - - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceBaseVersion, artifactName)); - - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, artifactDetails, - designerUser, authorizationHeaders); - assertEquals("Check response code after download resource", 200, restResponse.getErrorCode().intValue()); - - // Validating headers - // content disposition - List<String> contDispHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_DISPOSITION_HEADER); - assertNotNull(contDispHeaderList); - assertEquals("Check content disposition header", - new StringBuilder().append("attachment; filename=\"").append(artifactName).append("\"").toString(), - contDispHeaderList.get(0)); - - // content type - List<String> contTypeHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_TYPE_HEADER); - assertNotNull(contTypeHeaderList); - assertEquals("Check content type", "application/octet-stream", contTypeHeaderList.get(0)); - - String actualContents = restResponse.getResponse(); - - assertEquals(artifactDetails.getPayload(), Base64.encodeBase64String(actualContents.getBytes())); - - // validating checksum - byte[] bytes = actualContents.getBytes(); - String actualPayloadChecksum = GeneralUtility.calculateMD5Base64EncodedByByteArray(bytes); - assertEquals(expectedPayloadChecksum, actualPayloadChecksum); - - // validating valid zip - InputStream is = new ByteArrayInputStream(bytes); - InputStream zis = new ZipInputStream(is); - zis.close(); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - ResourceRestUtils.ecomp, encodeUrlForDownload(relativeUrl), "200", "OK"); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - @Test - public void downloadResourceArtifact_NoConsumerId() throws Exception { - - String artifactName = "kuku"; - ArtifactReqDetails artifact = new ArtifactReqDetails(); - artifact.setArtifactName(artifactName); - ResourceReqDetails resource = new ResourceReqDetails(); - resource.setName("notExisting"); - resource.setVersion("0.1"); - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceBaseVersion, - ValidationUtils.convertToSystemName(resource.getName()), resource.getVersion(), artifactName)); - serviceDetails.setVersion("0.1"); - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceDetails, resource, artifact, - designerUser, authorizationHeaders, false); - assertEquals("Check response code after download resource", 400, restResponse.getErrorCode().intValue()); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, "", - relativeUrl, "400", "POL5001: Error: Missing 'X-ECOMP-InstanceID' HTTP header."); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - @Test - public void downloadResourceArtifact_ResourceNameNotFound() throws Exception { - - String artifactName = "kuku"; - ArtifactReqDetails artifact = new ArtifactReqDetails(); - artifact.setArtifactName(artifactName); - ResourceReqDetails resource = new ResourceReqDetails(); - resource.setName("notExisting"); - resource.setVersion("0.1"); - serviceDetails.setVersion("0.1"); - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceDetails.getVersion(), - ValidationUtils.convertToSystemName(resource.getName()), resource.getVersion(), artifactName)); - - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceDetails, resource, artifact, - designerUser, authorizationHeaders); - - assertEquals("Check response code after download resource", 404, restResponse.getErrorCode().intValue()); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - BaseRestUtils.ecomp, relativeUrl, "404", - "SVC4063: Error: Requested 'Notexisting' resource was not found."); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - @Test - public void downloadResourceArtifact_ResourceVersionNotFound() throws Exception { - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, createResource.getErrorCode().intValue()); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(createResource.getResponse()); - ResourceReqDetails resourceDetailes = new ResourceReqDetails(); - resourceDetailes.setName(resource.getName()); - resourceDetailes.setVersion("0.2"); - - serviceDetails.setVersion("0.1"); - - String artifactName = "kuku"; - ArtifactReqDetails artifact = new ArtifactReqDetails(); - artifact.setArtifactName(artifactName); - - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceBaseVersion, - ValidationUtils.convertToSystemName(resourceDetailes.getName()), resourceDetailes.getVersion(), - artifactName)); - - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceDetails, resourceDetailes, - artifact, designerUser, authorizationHeaders); - assertEquals("Check response code after download resource", 404, restResponse.getErrorCode().intValue()); - - // validate audit - String auditAction = "DArtifactDownload"; - - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - BaseRestUtils.ecomp, relativeUrl, "404", "SVC4504: Error: Resource version 0.2 was not found."); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - - @Test - public void downloadResourceArtifact_ServiceNameNotFound() throws Exception { - // Create resource - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, createResource.getErrorCode().intValue()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(createResource.getResponse()); - download_serviceNameNotFound_inner("notExistingServiceName", serviceBaseVersion, resource.getName(), - resource.getVersion()); - - } - - @Test - public void downloadResourceArtifact_ServiceVersionNotFound() throws Exception { - // Create resource - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, createResource.getErrorCode().intValue()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(createResource.getResponse()); - - // Create service - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, serviceResponse.getErrorCode().intValue()); - serviceUniqueId = ResponseParser.convertServiceResponseToJavaObject(serviceResponse.getResponse()) - .getUniqueId(); - - download_serviceVersionNotFound_inner(serviceDetails.getName(), "0.3", resource.getName(), - resource.getVersion()); - } - - @Test - public void downloadServiceArtifact_ServiceNameNotFound() throws Exception { - download_serviceNameNotFound_inner("notExistingServiceName", serviceBaseVersion, null, null); - - } - - @Test - public void downloadServiceArtifact_ServiceVersionNotFound() throws Exception { - - // Create service - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, serviceResponse.getErrorCode().intValue()); - serviceUniqueId = ResponseParser.convertServiceResponseToJavaObject(serviceResponse.getResponse()) - .getUniqueId(); - - download_serviceVersionNotFound_inner(serviceDetails.getName(), "0.2", null, null); - } - - @Test - public void downloadServiceToscaArtifactSuccess() throws Exception { - // Creates service - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - assertEquals("Check response code after creating resource", 201, serviceResponse.getErrorCode().intValue()); - Service service = ResponseParser.convertServiceResponseToJavaObject(serviceResponse.getResponse()); - service = (Service) AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - // Approves service distribution - RestResponse serviceDistributionApproveRes = ServiceRestUtils.approveServiceDistribution(service.getUniqueId(), UserRoleEnum.GOVERNOR.getUserId()); - service = ResponseParser.convertServiceResponseToJavaObject(serviceDistributionApproveRes.getResponse()); - // Distributes service - RestResponse serviceDistributionRes = AtomicOperationUtils.distributeService(service, true); - service = ResponseParser.convertServiceResponseToJavaObject(serviceDistributionRes.getResponse()); - // Gets tosca template artifact from service - ArtifactDefinition toscaTemplateArtifact = service.getToscaArtifacts().get("assettoscatemplate"); - String expectedPayloadChecksum = toscaTemplateArtifact.getArtifactChecksum(); - String artifactName = toscaTemplateArtifact.getArtifactName(); - ArtifactReqDetails artifactDetails = ArtifactUtils.convertArtifactDefinitionToArtifactReqDetails(toscaTemplateArtifact); - // Downloads tosca template artifact - Map<String, String> authorizationHeaders = new HashMap<String, String>(); - authorizationHeaders.put(HttpHeaderEnum.AUTHORIZATION.getValue(), authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, artifactDetails, - designerUser, authorizationHeaders); - assertEquals("Check response code after download resource", 200, restResponse.getErrorCode().intValue()); - - // Validating headers - // content disposition - List<String> contDispHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_DISPOSITION_HEADER); - assertNotNull(contDispHeaderList); - assertEquals("Check content disposition header", - new StringBuilder().append("attachment; filename=\"").append(artifactName).append("\"").toString(), - contDispHeaderList.get(0)); - - // content type - List<String> contTypeHeaderList = restResponse.getHeaderFields().get(Constants.CONTENT_TYPE_HEADER); - assertNotNull(contTypeHeaderList); - assertEquals("Check content type", "application/octet-stream", contTypeHeaderList.get(0)); - String actualContents = restResponse.getResponse(); - - // validating checksum - byte[] bytes = actualContents.getBytes(); - String actualPayloadChecksum = GeneralUtility.calculateMD5Base64EncodedByByteArray(bytes); - AssertJUnit.assertEquals(expectedPayloadChecksum, actualPayloadChecksum); - - // validating valid zip - InputStream is = new ByteArrayInputStream(bytes); - InputStream zis = new ZipInputStream(is); - zis.close(); - - // validate audit - String relativeUrl = encodeUrlForDownload(String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceBaseVersion, artifactName)); - String auditAction = "DArtifactDownload"; - ExpectedDistDownloadAudit expectedDistDownloadAudit = new ExpectedDistDownloadAudit(auditAction, - ResourceRestUtils.ecomp, encodeUrlForDownload(relativeUrl), "200", "OK"); - AuditValidationUtils.validateAudit(expectedDistDownloadAudit, auditAction); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/DownloadArtifactsTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/DownloadArtifactsTest.java deleted file mode 100644 index 80b70d675e..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/DownloadArtifactsTest.java +++ /dev/null @@ -1,385 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.externalapi; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.Product; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ProductReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.Assert; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class DownloadArtifactsTest extends ComponentBaseTest { - @Rule - public static TestName name = new TestName(); - - Gson gson = new Gson(); - - public DownloadArtifactsTest() { - super(name, DownloadArtifactsTest.class.getName()); - } - - private User sdncDesignerDetails; - private User sdncAdminDetails; - private ImportReqDetails resourceDetailsVF_01; - private ResourceReqDetails resourceDetailsVF_02; - private ResourceReqDetails resourceDetailsVF_03; - private ResourceReqDetails resourceDetailsCP_01; - private ServiceReqDetails serviceDetails_01; - private ServiceReqDetails serviceDetails_02; - public static String rootPath = System.getProperty("user.dir"); - - @BeforeMethod(alwaysRun = true) - public void before() throws Exception { - init(); - createComponents(); - } - - private void createComponents() throws Exception { - createAtomicResource(resourceDetailsCP_01); - importVfWithArtifacts(resourceDetailsVF_01); - createVF(resourceDetailsVF_03); - createVF(resourceDetailsVF_02); - createService(serviceDetails_01); - } - - public void init() { - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - resourceDetailsVF_01 = ElementFactory.getDefaultImportResourceByType("VF100", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - resourceDetailsVF_02 = ElementFactory.getDefaultResourceByType("VF200", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - resourceDetailsVF_03 = ElementFactory.getDefaultResourceByType("VF300", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - resourceDetailsCP_01 = ElementFactory.getDefaultResourceByType("CP100", NormativeTypesEnum.PORT, - ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.CP.toString()); - serviceDetails_01 = ElementFactory.getDefaultService("newtestservice1", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - serviceDetails_02 = ElementFactory.getDefaultService("newtestservice2", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - } - - @Test - public void downloadResourceInstanceArtifactsFromServiceTest() throws Exception { - Service service = createServiceWithRIsWithArtifacts(); - Map<String, ArtifactDefinition> deploymentArtifacts; - List<ComponentInstance> resourceInstances = service.getComponentInstances(); - for (ComponentInstance ri : resourceInstances) { - deploymentArtifacts = ri.getDeploymentArtifacts(); - for (ArtifactDefinition artifact : deploymentArtifacts.values()) { - assertNotNull(downloadResourceInstanceArtifact(service, ri, artifact)); - } - } - } - - @Test - public void downloadServiceArtifactsTest() throws Exception { - Service service = createServiceWithArtifacts(); - Map<String, ArtifactDefinition> deploymentArtifacts = service.getDeploymentArtifacts(); - for (ArtifactDefinition artifact : deploymentArtifacts.values()) { - assertNotNull(downloadServiceArtifact(service, artifact)); - } - - } - - private Service createServiceWithArtifacts() throws Exception { - - ArtifactReqDetails otherArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.OTHER.getType()); - - RestResponse addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService( - otherArtifactDetails, sdncDesignerDetails, serviceDetails_01.getUniqueId()); - assertTrue( - "response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" - + addInformationalArtifactToService.getErrorCode(), - addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - ArtifactReqDetails yangXmlArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.YANG_XML.getType()); - - addInformationalArtifactToService = ArtifactRestUtils.addInformationalArtifactToService(yangXmlArtifactDetails, - sdncDesignerDetails, serviceDetails_01.getUniqueId()); - assertTrue( - "response code is not BaseRestUtils.STATUS_CODE_SUCCESS, returned :" - + addInformationalArtifactToService.getErrorCode(), - addInformationalArtifactToService.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - RestResponse createServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - return ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()); - } - - private RestResponse downloadResourceInstanceArtifact(Service service, ComponentInstance ri, - ArtifactDefinition artifact) throws Exception { - String url = String.format(Urls.GET_DOWNLOAD_SERVICE_RI_ARTIFACT, "localhost", "8080", service.getUUID(), - ri.getUniqueId(), artifact.getArtifactUUID()); - String userId = sdncDesignerDetails.getUserId(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.CACHE_CONTROL.getValue(), "no-cache"); - headersMap.put(HttpHeaderEnum.AUTHORIZATION.getValue(), "Basic dGVzdDoxMjM0NTY="); - headersMap.put("X-ECOMP-InstanceID", "test"); - if (userId != null) { - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId); - } - sendAuthorizationRequest(); - HttpRequest http = new HttpRequest(); - RestResponse response = http.httpSendGet(url, headersMap); - if (response.getErrorCode() != 200 && response.getResponse().getBytes() == null - && response.getResponse().getBytes().length == 0) { - return null; - } - return response; - } - - private RestResponse downloadServiceArtifact(Service service, ArtifactDefinition artifact) throws Exception { - String url = String.format(Urls.GET_DOWNLOAD_SERVICE_ARTIFACT, "localhost", "8080", service.getUUID(), - artifact.getArtifactUUID()); - String userId = sdncDesignerDetails.getUserId(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.CACHE_CONTROL.getValue(), "no-cache"); - headersMap.put(HttpHeaderEnum.AUTHORIZATION.getValue(), "Basic dGVzdDoxMjM0NTY="); - headersMap.put("X-ECOMP-InstanceID", "test"); - if (userId != null) { - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId); - } - sendAuthorizationRequest(); - HttpRequest http = new HttpRequest(); - RestResponse response = http.httpSendGet(url, headersMap); - if (response.getErrorCode() != 200 && response.getResponse().getBytes() == null - && response.getResponse().getBytes().length == 0) { - return null; - } - return response; - - } - - private RestResponse sendAuthorizationRequest() throws IOException { - String url = String.format(Urls.POST_AUTHORIZATION, "localhost", "8080"); - String userId = sdncAdminDetails.getUserId(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.CACHE_CONTROL.getValue(), "no-cache"); - if (userId != null) { - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId); - } - - HttpRequest http = new HttpRequest(); - RestResponse response = http.httpSendPost(url, - "{\"consumerName\":\"test\",\"consumerPassword\":\"0a0dc557c3bf594b1a48030e3e99227580168b21f44e285c69740b8d5b13e33b\",\"consumerSalt\":\"2a1f887d607d4515d4066fe0f5452a50\"}", - headersMap); - if (response.getErrorCode() != 201) { - return null; - } - return response; - } - - private Service createServiceWithRIsWithArtifacts() throws Exception { - serviceDetails_02.setUniqueId(serviceDetails_01.getUniqueId()); - createTreeCheckedinVFInstances(); - LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncDesignerDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, - sdncDesignerDetails); - RestResponse updateServiceResp = ServiceRestUtils.updateService(serviceDetails_02, sdncDesignerDetails); - ServiceRestUtils.checkSuccess(updateServiceResp); - getComponentAndValidateRIs(serviceDetails_01, 5, 0); - - return ResponseParser.convertServiceResponseToJavaObject(updateServiceResp.getResponse()); - } - - private void createTreeCheckedinVFInstances() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createSecondVFInstResp); - RestResponse createThirdVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_03, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createThirdVFInstResp); - } - - private Component getComponentAndValidateRIs(ComponentReqDetails componentDetails, int numberOfRIs, - int numberOfRelations) throws IOException, Exception { - - RestResponse getResponse = null; - Component component = null; - if (componentDetails instanceof ResourceReqDetails) { - getResponse = ResourceRestUtils.getResource(sdncAdminDetails, componentDetails.getUniqueId()); - component = ResponseParser.parseToObjectUsingMapper(getResponse.getResponse(), Resource.class); - } else if (componentDetails instanceof ServiceReqDetails) { - getResponse = ServiceRestUtils.getService((ServiceReqDetails) componentDetails, sdncAdminDetails); - component = ResponseParser.parseToObjectUsingMapper(getResponse.getResponse(), Service.class); - } else if (componentDetails instanceof ProductReqDetails) { - getResponse = ProductRestUtils.getProduct(componentDetails.getUniqueId(), sdncAdminDetails.getUserId()); - component = ResponseParser.parseToObjectUsingMapper(getResponse.getResponse(), Product.class); - } else { - Assert.fail("Unsupported type of componentDetails - " + componentDetails.getClass().getSimpleName()); - } - ResourceRestUtils.checkSuccess(getResponse); - int numberOfActualRIs = component.getComponentInstances() != null ? component.getComponentInstances().size() - : 0; - int numberOfActualRelations = component.getComponentInstancesRelations() != null - ? component.getComponentInstancesRelations().size() : 0; - assertEquals("Check number of RIs meet the expected number", numberOfRIs, numberOfActualRIs); - assertEquals("Check number of RI relations meet the expected number", numberOfRelations, - numberOfActualRelations); - - return component; - } - - private void createVFInstanceAndAtomicResourceInstanceWithoutCheckin(ResourceReqDetails vf, - ResourceReqDetails atomicResource, User user) throws Exception { - RestResponse createVFInstance = createVFInstance(serviceDetails_01, vf, user); - ResourceRestUtils.checkCreateResponse(createVFInstance); - RestResponse atomicInstanceForService = createAtomicInstanceForService(serviceDetails_01, atomicResource, user); - ResourceRestUtils.checkCreateResponse(atomicInstanceForService); - } - - private RestResponse createCheckedinVFInstance(ServiceReqDetails containerDetails, - ResourceReqDetails compInstOriginDetails, User modifier) throws Exception { - changeResourceLifecycleState(compInstOriginDetails, modifier.getUserId(), LifeCycleStatesEnum.CHECKIN); - return createVFInstance(containerDetails, compInstOriginDetails, modifier); - } - - private RestResponse createVFInstance(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, - User modifier) throws Exception { - return createComponentInstance(containerDetails, compInstOriginDetails, modifier, ComponentTypeEnum.SERVICE, - true); - } - - private RestResponse createAtomicInstanceForService(ServiceReqDetails containerDetails, - ResourceReqDetails compInstOriginDetails, User modifier) throws Exception { - return createComponentInstance(containerDetails, compInstOriginDetails, modifier, ComponentTypeEnum.SERVICE, - true); - } - - private RestResponse createComponentInstance(ComponentReqDetails containerDetails, - ComponentReqDetails compInstOriginDetails, User modifier, ComponentTypeEnum containerComponentTypeEnum, - boolean isHighestLevel) throws IOException, Exception { - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(compInstOriginDetails); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, modifier, containerDetails.getUniqueId(), containerComponentTypeEnum); - return createResourceInstanceResponse; - } - - private void changeResourceLifecycleState(ResourceReqDetails resourceDetails, String userUserId, - LifeCycleStatesEnum lifeCycleStates) throws Exception { - RestResponse response = LifecycleRestUtils.changeResourceState(resourceDetails, userUserId, lifeCycleStates); - LifecycleRestUtils.checkLCS_Response(response); - } - - private void createAtomicResource(ResourceReqDetails resourceDetails) throws Exception { - RestResponse createResourceResponse = ResourceRestUtils.createResource(resourceDetails, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceResponse); - - } - - private void createVF(ResourceReqDetails resourceDetails) throws Exception { - createVF(resourceDetails, sdncDesignerDetails); - - } - - private void createVF(ResourceReqDetails resourceDetails, User sdncModifier) throws Exception { - RestResponse createVfResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifier); - ResourceRestUtils.checkCreateResponse(createVfResponse); - } - - private void createService(ServiceReqDetails serviceDetails) throws Exception { - createService(serviceDetails, sdncDesignerDetails); - } - - private void createService(ServiceReqDetails serviceDetails, User sdncModifier) throws Exception { - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifier); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - } - - private void importVfWithArtifacts(ImportReqDetails resourceDetailsVF_01) throws Exception { - String payloadName = "VF_RI2_G4_withArtifacts.csar"; - Path path = Paths.get(rootPath + "/src/main/resources/ci/VF_RI2_G4_withArtifacts.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetailsVF_01.setPayloadData(payloadData); - - resourceDetailsVF_01.setPayloadName(payloadName); - resourceDetailsVF_01.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetailsVF_01, sdncDesignerDetails); - BaseRestUtils.checkCreateResponse(createResource); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/LifeCycleExternalAPI.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/LifeCycleExternalAPI.java deleted file mode 100644 index 510d8076be..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/LifeCycleExternalAPI.java +++ /dev/null @@ -1,270 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.externalapi; - -import java.io.IOException; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.codehaus.jettison.json.JSONException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceAssetStructure; -import org.openecomp.sdc.ci.tests.datatypes.ResourceExternalReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceAssetStructure; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtilsExternalAPI; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum; -import org.testng.Assert; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class LifeCycleExternalAPI extends ComponentBaseTest{ - @Rule - public static final TestName name = new TestName(); - protected Gson gson = new Gson(); - - public LifeCycleExternalAPI() { - super(name, LifeCycleExternalAPI.class.getName()); - } - - @BeforeMethod - public void setup() { - AtomicOperationUtils.createDefaultConsumer(true); - } - - @Test - public void testReseourceSuccsesfullTransition() throws Exception{ - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("ciResource1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(createResource.getResponse(), ResourceAssetStructure.class); - BaseRestUtils.checkCreateResponse(createResource); - - //CHECKIN - testResourceTransitionOfLifeCycle(parsedCreatedResponse,defaultUser, - LifeCycleStatesEnum.CHECKIN,null); - //testAudit(defaultUser,parsedCreatedResponse,"0.1",LifeCycleStatesEnum.CHECKOUT.name(),"201","OK"); - - //CERTIFICATIONREQUEST - testResourceTransitionOfLifeCycle(parsedCreatedResponse,defaultUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST,null); - - //CERTIFICATIONREQUEST - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.TESTER), - LifeCycleStatesEnum.STARTCERTIFICATION,null); - - //CERTIFICATIONREQUEST - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.TESTER), - LifeCycleStatesEnum.CERTIFY,"1.0"); - } - - @Test - public void testVFCMTSuccsesfullTransitionDesigner() throws Exception{ - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails resourceDetails = ElementFactory.getDefaultResourceByType("ci1", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - RestResponse restResponse = ResourceRestUtilsExternalAPI.createResource(resourceDetails, defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(restResponse.getResponse(), ResourceAssetStructure.class); - - BaseRestUtils.checkCreateResponse(restResponse); - - //CHECKIN - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CHECKIN,null); - - //CERTIFICATIONREQUEST - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CERTIFY,"1.0"); - } - - @Test - public void testVFCMTSuccsesfullTransitionTester() throws Exception{ - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails resourceDetails = ElementFactory.getDefaultResourceByType("ci1", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - RestResponse restResponse = ResourceRestUtilsExternalAPI.createResource(resourceDetails, defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(restResponse.getResponse(), ResourceAssetStructure.class); - - BaseRestUtils.checkCreateResponse(restResponse); - - //CHECKIN - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CHECKIN,null); - - //CERTIFICATIONREQUEST - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.TESTER), - LifeCycleStatesEnum.CERTIFY,"1.0"); - } - - @Test - public void testVFCMTFailSubmitForTesting() throws Exception{ - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceExternalReqDetails resourceDetails = ElementFactory.getDefaultResourceByType("ci1", ResourceCategoryEnum.TEMPLATE_MONITORING_TEMPLATE, defaultUser.getUserId(), ResourceTypeEnum.VFCMT.toString()); - - RestResponse restResponse = ResourceRestUtilsExternalAPI.createResource(resourceDetails, defaultUser); - ResourceAssetStructure parsedCreatedResponse = gson.fromJson(restResponse.getResponse(), ResourceAssetStructure.class); - - BaseRestUtils.checkCreateResponse(restResponse); - - //CHECKIN - testResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CHECKIN,null); - - //CERTIFICATIONREQUEST - testFailResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CERTIFICATIONREQUEST,400,ActionStatus.RESOURCE_VFCMT_LIFECYCLE_STATE_NOT_VALID.name(),Arrays.asList(LifeCycleStatesEnum.CERTIFICATIONREQUEST.getState())); - - //CERTIFICATIONREQUEST - testFailResourceTransitionOfLifeCycle(parsedCreatedResponse,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.STARTCERTIFICATION,400,ActionStatus.RESOURCE_VFCMT_LIFECYCLE_STATE_NOT_VALID.name(),Arrays.asList(LifeCycleStatesEnum.STARTCERTIFICATION.getState())); - } - - //@Test - public void testServiceSuccsesfullTransition() throws Exception{ - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setName("ciService1"); - RestResponse createService = ServiceRestUtils.createService(serviceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - ServiceAssetStructure parsedCreatedService = gson.fromJson(createService.getResponse(), ServiceAssetStructure.class); - BaseRestUtils.checkCreateResponse(createService); - - //CHECKIN - testServiceTransitionOfLifeCycle(serviceDetails, parsedCreatedService,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CHECKIN,null); - - //CERTIFICATIONREQUEST - testServiceTransitionOfLifeCycle(serviceDetails, parsedCreatedService,ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - LifeCycleStatesEnum.CERTIFICATIONREQUEST,null); - - //CERTIFICATIONREQUEST - testServiceTransitionOfLifeCycle(serviceDetails, parsedCreatedService,ElementFactory.getDefaultUser(UserRoleEnum.TESTER), - LifeCycleStatesEnum.STARTCERTIFICATION,null); - - //CERTIFICATIONREQUEST - testServiceTransitionOfLifeCycle(serviceDetails, parsedCreatedService,ElementFactory.getDefaultUser(UserRoleEnum.TESTER), - LifeCycleStatesEnum.CERTIFY,"1.0"); - } - - private void testFailResourceTransitionOfLifeCycle(ResourceAssetStructure parsedCreatedResponse, User user, - LifeCycleStatesEnum lifeCycleStatesEnum,int errorCode, String error,List<String> variables) throws IOException, JSONException { - RestResponse response = LifecycleRestUtils.changeExternalResourceState(parsedCreatedResponse.getUuid(),user, lifeCycleStatesEnum); - AssertJUnit.assertNotNull("check response object is not null", response); - AssertJUnit.assertNotNull("check error code exists in response", response.getErrorCode()); - AssertJUnit.assertEquals("Check response code is succses", errorCode, response.getErrorCode().intValue()); - - ErrorValidationUtils.checkBodyResponseOnError(error, variables,response.getResponse()); - } - - private void testResourceTransitionOfLifeCycle(ResourceAssetStructure parsedCreatedResponse, User user, - LifeCycleStatesEnum lifeCycleStatesEnum,String version) throws IOException { - RestResponse response = LifecycleRestUtils.changeExternalResourceState(parsedCreatedResponse.getUuid(),user, lifeCycleStatesEnum); - AssertJUnit.assertNotNull("check response object is not null", response); - AssertJUnit.assertNotNull("check error code exists in response", response.getErrorCode()); - AssertJUnit.assertEquals("Check response code is succses", 201, response.getErrorCode().intValue()); - ResourceAssetStructure parsedMetadata = gson.fromJson(response.getResponse(), ResourceAssetStructure.class); - - Assert.assertEquals(parsedMetadata.getUuid(),parsedCreatedResponse.getUuid()); - Assert.assertEquals(parsedMetadata.getInvariantUUID(),parsedCreatedResponse.getInvariantUUID()); - Assert.assertEquals(parsedMetadata.getName(),parsedCreatedResponse.getName()); - if (version==null){ - Assert.assertEquals(parsedMetadata.getVersion(),parsedCreatedResponse.getVersion()); - } else { - Assert.assertEquals(parsedMetadata.getVersion(),version); - } - Assert.assertEquals(parsedMetadata.getResourceType(),parsedCreatedResponse.getResourceType()); - Assert.assertEquals(parsedMetadata.getLifecycleState(),lifeCycleStatesEnum.getComponentState()); - Assert.assertEquals(parsedMetadata.getLastUpdaterUserId(),user.getUserId()); - Assert.assertEquals(parsedMetadata.getLastUpdaterFullName(),user.getFullName()); - } - - private void testServiceTransitionOfLifeCycle(ServiceReqDetails resourceDetails, - ServiceAssetStructure parsedCreatedResponse, User user, LifeCycleStatesEnum lifeCycleStatesEnum,String version) throws IOException { - RestResponse response = LifecycleRestUtils.changeExternalServiceState(resourceDetails,user, lifeCycleStatesEnum); - AssertJUnit.assertNotNull("check response object is not null", response); - AssertJUnit.assertNotNull("check error code exists in response", response.getErrorCode()); - AssertJUnit.assertEquals("Check response code is succses", 201, response.getErrorCode().intValue()); - ServiceAssetStructure parsedMetadata = gson.fromJson(response.getResponse(), ServiceAssetStructure.class); - - Assert.assertEquals(parsedMetadata.getUuid(),parsedCreatedResponse.getUuid()); - Assert.assertEquals(parsedMetadata.getInvariantUUID(),parsedCreatedResponse.getInvariantUUID()); - Assert.assertEquals(parsedMetadata.getName(),parsedCreatedResponse.getName()); - if (version==null){ - Assert.assertEquals(parsedMetadata.getVersion(),parsedCreatedResponse.getVersion()); - } else { - Assert.assertEquals(parsedMetadata.getVersion(),version); - } - Assert.assertEquals(parsedMetadata.getLifecycleState(),lifeCycleStatesEnum.getComponentState()); - Assert.assertEquals(parsedMetadata.getLastUpdaterUserId(),user.getUserId()); - } - - private void testAudit(User modifier,ResourceAssetStructure resource,String prevVersion,String prevLifecycle, - String errorCode, String error) throws Exception{ - DbUtils.cleanAllAudits(); - - //ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(currResource.getActionStatus().name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - String auditAction = "ChangeLyfecycleByAPI"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(modifier.getUserId()); - expectedResourceAuditJavaObject.setModifierName(modifier.getFullName()); - expectedResourceAuditJavaObject.setResourceName(resource.getName()); - expectedResourceAuditJavaObject.setResourceType("Resource"); - expectedResourceAuditJavaObject.setPrevVersion(prevVersion); - expectedResourceAuditJavaObject.setCurrVersion(resource.getVersion()); - expectedResourceAuditJavaObject.setPrevState(prevLifecycle); - expectedResourceAuditJavaObject.setCurrState(resource.getLifecycleState()); - expectedResourceAuditJavaObject.setStatus(errorCode); -// List<String> variables = (currResource.getErrorParams() != null ? currResource.getErrorParams() : new ArrayList<String>()); -// String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(error); - Map <AuditingFieldsKeysEnum, String> body = new HashMap<>(); - body.put(AuditingFieldsKeysEnum.AUDIT_RESOURCE_NAME, resource.getName()); - AuditValidationUtils.validateAuditExternalChangeLifecycle(expectedResourceAuditJavaObject, auditAction,body); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/UserAPIs.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/UserAPIs.java deleted file mode 100644 index 3083188fa3..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/externalapi/UserAPIs.java +++ /dev/null @@ -1,468 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.externalapi; - -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.lang.reflect.Type; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Random; -import java.util.Set; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.portalsdk.core.restful.domain.EcompRole; -import org.openecomp.portalsdk.core.restful.domain.EcompUser; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.EcompUserRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.UserRestUtils; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; - -public class UserAPIs extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public UserAPIs() { - super(name, UserAPIs.class.getName()); - } - - public User adminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - - @Test - public void createUserAllPosibleRoles() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - - List<EcompRole> allRoles = getAllRoles(); - - for (EcompRole ecompRole2 : allRoles) { - try { - - ///get list of users - List<EcompUser> allusersList = getAllusersList(); - int sizeBeforeChange = allusersList.size(); - - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) ecompRole2.getId()); - ecompRole.setName(ecompRole2.getName()); - System.out.println(ecompRole2.getName()); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - ///get list of users verify list size changed - allusersList = getAllusersList(); - int sizeAfterChange = allusersList.size(); - - assertTrue("List is Equel" , sizeBeforeChange != sizeAfterChange ); - pushUser = EcompUserRestUtils.pushUser(ecompUser); - - } finally { - deleteUser(ecompUser.getLoginId()); - } - - } - - } - - @Test - public void createSameUserTwiceTest() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - try { - - ///get list of users - List<EcompUser> allusersList = getAllusersList(); - int sizeBeforeChange = allusersList.size(); - - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - ///get list of users verify list size changed - allusersList = getAllusersList(); - int sizeAfterChange = allusersList.size(); - - assertTrue("List is Equel" , sizeBeforeChange != sizeAfterChange ); - pushUser = EcompUserRestUtils.pushUser(ecompUser); - - } finally { - deleteUser(ecompUser.getLoginId()); - } - - } - - @Test - public void createSameUserTwiceDiffrentDataTest() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - try { - ///get list of users - List<EcompUser> allusersList = getAllusersList(); - int sizeBeforeChange = allusersList.size(); - - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - ///get list of users verify list size changed - allusersList = getAllusersList(); - int sizeAfterChange = allusersList.size(); - - assertTrue("List is Equel" , sizeBeforeChange != sizeAfterChange ); - - //update role - ecompRole.setId((long) 2); - ecompRole.setName("DESIGNER"); - setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - - pushUser = EcompUserRestUtils.pushUser(ecompUser); - - } finally { - deleteUser(ecompUser.getLoginId()); - } - - } - - @Test - public void updateUserRoleTest() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - try { - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - List<EcompRole> userRolesBefore = getUserRoles(ecompUser); - - //update role - ecompRole = new EcompRole(); - ecompRole.setId((long) 2); - ecompRole.setName("DESIGNER"); - List<EcompRole> list= new ArrayList<EcompRole>(); - list.add(ecompRole); - - EcompUserRestUtils.pushUserRoles(ecompUser.getLoginId(), list); - - List<EcompRole> userRolesAfter = getUserRoles(ecompUser); - - assertFalse("role wasn't changed", userRolesBefore.equals(userRolesAfter)); - } finally { - deleteUser(ecompUser.getLoginId()); - } - - } - - @Test - public void addUserCreateResource() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - Resource resource = new Resource(); - - try { - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 2); - ecompRole.setName("DESIGNER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - UserRoleEnum.DESIGNER.setUserId(ecompUser.getLoginId()); - resource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - } finally { - ResourceRestUtils.deleteResource(resource.getUniqueId(), adminUser.getUserId()); - deleteUser(ecompUser.getLoginId()); - } - - } - - @Test - public void changeUserRoleWithCheckOutResource() throws Exception { - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - Resource resource = new Resource(); - try { - - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 2); - ecompRole.setName("DESIGNER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - UserRoleEnum.DESIGNER.setUserId(ecompUser.getLoginId()); - resource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - //update role - ecompRole = new EcompRole(); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - List<EcompRole> list= new ArrayList<EcompRole>(); - list.add(ecompRole); - - RestResponse pushUserRoles = EcompUserRestUtils.pushUserRoles(ecompUser.getLoginId(), list); -// assertTrue("wrong response code :" , pushUserRoles.getErrorCode() == BaseRestUtils.STATUS_CODE_ALREADY_EXISTS); - - } finally { - ResourceRestUtils.deleteResource(resource.getUniqueId(), adminUser.getUserId()); - deleteUser(ecompUser.getLoginId()); - } - } - - @Test - public void changeUserRoleWithStartTestingResource() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - Resource resource= new Resource(); - - try { - //create user - ecompUser.setLoginId(getUser()); - ecompRole.setId((long) 2); - ecompRole.setName("DESIGNER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - UserRoleEnum.DESIGNER.setUserId(ecompUser.getLoginId()); - - resource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.STARTCERTIFICATION, true); - - - //update role - ecompRole = new EcompRole(); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - List<EcompRole> list= new ArrayList<EcompRole>(); - list.add(ecompRole); - - RestResponse pushUserRoles = EcompUserRestUtils.pushUserRoles(ecompUser.getLoginId(), list); - BaseRestUtils.checkSuccess(pushUserRoles); - - } finally { - ResourceRestUtils.deleteResource(resource.getUniqueId(), adminUser.getUserId()); - deleteUser(ecompUser.getLoginId()); - } - } - - @Test - public void fillAllEcompFields() throws Exception { - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - try { - - ///get list of users - List<EcompUser> allusersList = getAllusersList(); - int sizeBeforeChange = allusersList.size(); - - //create user - ecompUser.setLoginId(getUser()); - ecompUser.setOrgId((long) 123); - ecompUser.setManagerId("ci4321"); - ecompUser.setFirstName("firstName"); - ecompUser.setMiddleInitial("middleInitial"); - ecompUser.setLastName("lastName"); - ecompUser.setPhone("phone"); - ecompUser.setEmail("email@email.com"); - ecompUser.setHrid("hrid"); - ecompUser.setOrgUserId("orgUserId"); - ecompUser.setOrgCode("orgCode"); - ecompUser.setOrgManagerUserId("ci1234"); - ecompUser.setJobTitle("jobTitle"); - ecompUser.setActive(true); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - ///get list of users verify list size changed - allusersList = getAllusersList(); - int sizeAfterChange = allusersList.size(); - - assertTrue("List is Equel" , sizeBeforeChange != sizeAfterChange ); - - } finally { - - deleteUser(ecompUser.getLoginId()); - } - } - - @Test - public void missingMandatoryFieldRole() throws Exception { - - EcompUser ecompUser = new EcompUser(); - try { - ///get list of users - List<EcompUser> allusersList = getAllusersList(); - int sizeBeforeChange = allusersList.size(); - - //create user - ecompUser.setLoginId(getUser()); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - BaseRestUtils.checkSuccess(pushUser); - - ///get list of users verify list size changed - allusersList = getAllusersList(); - int sizeAfterChange = allusersList.size(); - - assertTrue("List is Equel" , sizeBeforeChange != sizeAfterChange ); - - } finally { - deleteUser(ecompUser.getLoginId()); - } - } - - @Test - public void missingMandatoryFieldATTid() throws Exception { - - EcompUser ecompUser = new EcompUser(); - EcompRole ecompRole = new EcompRole(); - try { - - //create user - ecompUser.setLoginId(""); - ecompRole.setId((long) 1); - ecompRole.setName("TESTER"); - Set<EcompRole> setRoles = new HashSet<EcompRole>(); - setRoles.add(ecompRole); - ecompUser.setRoles(setRoles); - RestResponse pushUser = EcompUserRestUtils.pushUser(ecompUser); - assertTrue("wrong response code :" , pushUser.getErrorCode() == BaseRestUtils.STATUS_CODE_INVALID_CONTENT); - - } finally { - deleteUser(ecompUser.getLoginId()); - } - - - } - - private List<EcompRole> getUserRoles(EcompUser ecompUser) throws IOException { - RestResponse userRoles = EcompUserRestUtils.getUserRoles(ecompUser.getLoginId()); - Type listType = new TypeToken<List<EcompRole>>() {}.getType(); - List<EcompRole> roleList = new Gson().fromJson(userRoles.getResponse(), listType); - return roleList; - } - - private void deleteUser(String userId) throws IOException { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - defaultUser.setUserId(userId); - - UserRestUtils.deleteUser(defaultUser, adminUser, true); - } - - private List<EcompUser> getAllusersList() throws IOException { - RestResponse allUsers = EcompUserRestUtils.getAllUsers(); - - Type listType = new TypeToken<List<EcompUser>>() {}.getType(); - List<EcompUser> usersList = new Gson().fromJson(allUsers.getResponse(), listType); - - return usersList; - } - - private List<EcompRole> getAllRoles() throws IOException { - RestResponse allRoles = EcompUserRestUtils.getAllAvailableRoles(); - - Type listType = new TypeToken<List<EcompRole>>() {}.getType(); - List<EcompRole> availableRoles = new Gson().fromJson(allRoles.getResponse(), listType); - - return availableRoles; - } - - private String getUser() { - - String returnMe = "ci"+ new BigInteger(getRandomNumber(4)); - System.out.println(returnMe); - - - return returnMe; - } - - private static Random rnd = new Random(); - - public static String getRandomNumber(int digCount) { - StringBuilder sb = new StringBuilder(digCount); - for(int i=0; i < digCount; i++) - sb.append((char)('0' + rnd.nextInt(10))); - return sb.toString(); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/BasicHttpAuthenticationTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/BasicHttpAuthenticationTest.java deleted file mode 100644 index b820c7d803..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/BasicHttpAuthenticationTest.java +++ /dev/null @@ -1,441 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -//US505653 -package org.openecomp.sdc.ci.tests.execute.general; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedAuthenticationAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ConsumerRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.util.ValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class BasicHttpAuthenticationTest extends ComponentBaseTest { - - protected static final String AUTH_FAILED_INVALID_AUTHENTICATION_HEADER = "AUTH_FAILED_INVALID_AUTHENTICATION_HEADER"; - - protected static final String AUTH_SUCCESS = "AUTH_SUCCESS"; - - protected static final String AUTH_FAILED_INVALID_PASSWORD = "AUTH_FAILED_INVALID_PASSWORD"; - - protected static final String AUTH_FAILED_USER_NOT_FOUND = "AUTH_FAILED_USER_NOT_FOUND"; - - protected static final String AUTH_REQUIRED = "AUTH_REQUIRED"; - - protected static final String WWW_AUTHENTICATE = "WWW-Authenticate"; - - // user ci password 123456 - // protected final String authorizationHeader = "Basic Y2k6MTIzNDU2"; - // user ci password 123456 - protected final String USER = "ci"; - - protected final String PASSWORD = "123456"; - - protected final String SALT = "2a1f887d607d4515d4066fe0f5452a50"; - - protected final String HASHED_PASSWORD = "0a0dc557c3bf594b1a48030e3e99227580168b21f44e285c69740b8d5b13e33b"; - - protected User sdncAdminUserDetails; - - protected ConsumerDataDefinition consumerDataDefinition; - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - protected User sdncUserDetails; - - protected ArtifactReqDetails deploymentArtifact; - - protected ExpectedAuthenticationAudit expectedAuthenticationAudit; - - protected final String auditAction = "HttpAuthentication"; - - protected String expectedDownloadServiceUrl; - protected String expectedDownloadResourceUrl; - protected ComponentInstanceReqDetails componentInstanceReqDetails; - - @Rule - public static TestName name = new TestName(); - - public BasicHttpAuthenticationTest() { - super(name, BasicHttpAuthenticationTest.class.getName()); - } - - @BeforeMethod - public void init() throws Exception { - - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - Resource resourceObject = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - resourceDetails = new ResourceReqDetails(resourceObject); - Service serviceObject = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - serviceDetails = new ServiceReqDetails(serviceObject); - - deploymentArtifact = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(deploymentArtifact, - sdncUserDetails, resourceDetails.getUniqueId()); - AssertJUnit.assertTrue("add HEAT artifact to resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - - componentInstanceReqDetails = ElementFactory.getDefaultComponentInstance(); - // certified resource - response = LifecycleRestUtils.certifyResource(resourceDetails); - AssertJUnit.assertTrue("certify resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - - // add resource instance with HEAT deployment artifact to the service - componentInstanceReqDetails.setComponentUid(resourceDetails.getUniqueId()); - response = ComponentInstanceRestUtils.createComponentInstance(componentInstanceReqDetails, sdncUserDetails, - serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE); - AssertJUnit.assertTrue("response code is not 201, returned: " + response.getErrorCode(), - response.getErrorCode() == 201); - expectedAuthenticationAudit = new ExpectedAuthenticationAudit(); - - // RestResponse addDeploymentArtifactResponse = - // ArtifactRestUtils.addInformationalArtifactToService(deploymentArtifact, - // sdncUserDetails, serviceDetails.getUniqueId()); - // assertEquals("didn't succeed to upload deployment artifact", 200, - // addDeploymentArtifactResponse.getErrorCode().intValue()); - // - // downloadUrl = - // String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - // ValidationUtils.convertToSystemName(serviceDetails.getServiceName()), - // serviceDetails.getVersion(), - // ValidationUtils.normalizeFileName(deploymentArtifact.getArtifactName())); - - expectedDownloadResourceUrl = String.format(Urls.DISTRIB_DOWNLOAD_RESOURCE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceDetails.getVersion(), - ValidationUtils.convertToSystemName(resourceDetails.getName()), resourceDetails.getVersion(), - ValidationUtils.normalizeFileName(deploymentArtifact.getArtifactName())); - expectedDownloadResourceUrl = expectedDownloadResourceUrl.substring("/sdc/".length(), - expectedDownloadResourceUrl.length()); - - expectedDownloadServiceUrl = String.format(Urls.DISTRIB_DOWNLOAD_SERVICE_ARTIFACT_RELATIVE_URL, - ValidationUtils.convertToSystemName(serviceDetails.getName()), serviceDetails.getVersion(), - ValidationUtils.normalizeFileName(deploymentArtifact.getArtifactName())); - expectedDownloadServiceUrl = expectedDownloadServiceUrl.substring("/sdc/".length(), - expectedDownloadServiceUrl.length()); - - sdncAdminUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - consumerDataDefinition = createConsumer(); - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - ; - - RestResponse createResponse = ConsumerRestUtils.createConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkCreateResponse(createResponse); - - } - - @AfterMethod - public void tearDown() throws Exception { - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - ; - } - - @Test - public void sendAuthenticatedRequestTest_success() throws Exception, Exception { - DbUtils.cleanAllAudits(); - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(USER, PASSWORD); - // RestResponse restResponse = - // ArtifactRestUtils.downloadServiceArtifact(serviceDetails, - // deploymentArtifact, sdncUserDetails, authorizationHeader); - RestResponse restResponse = ArtifactRestUtils.downloadResourceArtifact(serviceDetails, resourceDetails, - deploymentArtifact, sdncUserDetails, authorizationHeader); - AssertJUnit.assertEquals("Check response code after download artifact", 200, - restResponse.getErrorCode().intValue()); - AssertJUnit.assertFalse(restResponse.getHeaderFields().containsKey(HttpHeaderEnum.WWW_AUTHENTICATE.getValue())); - - validateAuditAuthentication(USER, AUTH_SUCCESS, ComponentTypeEnum.RESOURCE); - - } - - protected void validateAuditAuthentication(String userName, String AuthStatus, ComponentTypeEnum compType) - throws Exception { - if (compType.equals(ComponentTypeEnum.RESOURCE)) { - expectedAuthenticationAudit = new ExpectedAuthenticationAudit(expectedDownloadResourceUrl, userName, - auditAction, AuthStatus); - } else { - expectedAuthenticationAudit = new ExpectedAuthenticationAudit(expectedDownloadServiceUrl, userName, - auditAction, AuthStatus); - } - AuditValidationUtils.validateAuthenticationAudit(expectedAuthenticationAudit); - } - - protected ConsumerDataDefinition createConsumer() { - ConsumerDataDefinition consumer = new ConsumerDataDefinition(); - consumer.setConsumerName(USER); - consumer.setConsumerSalt(SALT); - consumer.setConsumerPassword(HASHED_PASSWORD); - return consumer; - - } - - @Test - public void sendAuthenticatedRequestWithoutHeadersTest() throws Exception, Exception { - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, new HashMap<String, String>()); - assertEquals("Check response code after download artifact", 401, restResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.AUTH_REQUIRED.name(), new ArrayList<String>(), - restResponse.getResponse()); - assertTrue(restResponse.getHeaderFields().containsKey(WWW_AUTHENTICATE)); - List<String> getAuthenticateHeader = restResponse.getHeaderFields().get(WWW_AUTHENTICATE); - assertEquals("www-authenticate header contains more then one value", 1, getAuthenticateHeader.size()); - assertTrue(getAuthenticateHeader.get(0).equals("Basic realm=" + "\"ASDC\"")); - - validateAuditAuthentication("", AUTH_REQUIRED, ComponentTypeEnum.SERVICE); - } - - @Test - public void sendAuthenticatedRequestTest_userIsNotProvsioned() throws Exception, Exception { - String userName = "shay"; - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(userName, "123456"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 403, restResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.AUTH_FAILED.name(), new ArrayList<String>(), - restResponse.getResponse()); - assertFalse(restResponse.getHeaderFields().containsKey(WWW_AUTHENTICATE)); - - validateAuditAuthentication(userName, AUTH_FAILED_USER_NOT_FOUND, ComponentTypeEnum.SERVICE); - } - - @Test - public void sendAuthenticatedRequestTest_userIsNull() throws Exception, Exception { - String userName = ""; - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(userName, "123456"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 403, restResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.AUTH_FAILED.name(), new ArrayList<String>(), - restResponse.getResponse()); - assertFalse(restResponse.getHeaderFields().containsKey(WWW_AUTHENTICATE)); - - validateAuditAuthentication(userName, AUTH_FAILED_USER_NOT_FOUND, ComponentTypeEnum.SERVICE); - } - - @Test - public void sendAuthenticatedRequestTest_passwordIsNull() throws Exception, Exception { - String userName = "ci"; - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(userName, ""); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 403, restResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.AUTH_FAILED.name(), new ArrayList<String>(), - restResponse.getResponse()); - assertFalse(restResponse.getHeaderFields().containsKey(WWW_AUTHENTICATE)); - - validateAuditAuthentication(userName, AUTH_FAILED_INVALID_PASSWORD, ComponentTypeEnum.SERVICE); - } - - @Test - public void sendAuthenticatedRequestTest_passowrdIsNotValidated() throws Exception, Exception { - String userCi = "ci"; - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(userCi, "98765"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 403, restResponse.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.AUTH_FAILED.name(), new ArrayList<String>(), - restResponse.getResponse()); - assertFalse(restResponse.getHeaderFields().containsKey(HttpHeaderEnum.WWW_AUTHENTICATE.getValue())); - - validateAuditAuthentication(userCi, AUTH_FAILED_INVALID_PASSWORD, ComponentTypeEnum.SERVICE); - } - - @Test - public void sendAuthenticatedRequestTest_InvalidHeader() throws Exception, Exception { - String userCredentials = USER + ":" + PASSWORD; - byte[] encodeBase64 = Base64.encodeBase64(userCredentials.getBytes()); - String encodedUserCredentials = new String(encodeBase64); - Map<String, String> authorizationHeader = new HashMap<String, String>(); - authorizationHeader.put(HttpHeaderEnum.AUTHORIZATION.getValue(), encodedUserCredentials); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 400, restResponse.getErrorCode().intValue()); - assertFalse(restResponse.getHeaderFields().containsKey(HttpHeaderEnum.WWW_AUTHENTICATE.getValue())); - - validateAuditAuthentication("", AUTH_FAILED_INVALID_AUTHENTICATION_HEADER, ComponentTypeEnum.SERVICE); - } - - @Test(enabled = false) - public void sendTwoAuthenticatedRequestsTest() throws Exception, Exception { - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(USER, PASSWORD); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - - RestResponse secondRestResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after second download artifact", 200, - secondRestResponse.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void sendAuthenticatedRequestTest_userValidation_1() throws Exception, Exception { - - ConsumerDataDefinition consumer = new ConsumerDataDefinition(); - consumer.setConsumerName("cI2468"); - consumer.setConsumerPassword(HASHED_PASSWORD); - consumer.setConsumerSalt(SALT); - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - - RestResponse createResponse = ConsumerRestUtils.createConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkCreateResponse(createResponse); - - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(consumer.getConsumerName(), - PASSWORD); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - - deleteResponse = ConsumerRestUtils.deleteConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - } - - // ECOMP Consumer Name - UTF-8 string up to 255 characters containing the - // following characters : ( maybe to limit 4-64 chars ? ) - // Lowercase characters {a-z} - // Uppercase characters {A-Z} - // Numbers {0-9} - // Dash {-}; this character is not supported as the first character in the - // user name - // Period {.}; this character is not supported as the first character in the - // user name - // Underscore {_} - // @Ignore("add manually user:password 24-!68:123456 to - // users-configuration.yaml in runtime") - @Test(enabled = false) - public void sendAuthenticatedRequestTest_userValidation_2() throws Exception, Exception { - ConsumerDataDefinition consumer = new ConsumerDataDefinition(); - consumer.setConsumerName("24-!68"); - consumer.setConsumerPassword(HASHED_PASSWORD); - consumer.setConsumerSalt(SALT); - RestResponse deleteResponse = ConsumerRestUtils.deleteConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - - RestResponse createResponse = ConsumerRestUtils.createConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkCreateResponse(createResponse); - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader(consumer.getConsumerName(), - PASSWORD); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - - deleteResponse = ConsumerRestUtils.deleteConsumer(consumer, sdncAdminUserDetails); - BaseRestUtils.checkStatusCode(deleteResponse, "delete operation filed", false, 404, 200); - } - - // this is invalide becouse we do not use the : any more - // @Ignore("can't exectue, yaml file does not allow to enter more then one - // colon continuously (\":\") ") - @Test(enabled = false) - public void sendAuthenticatedRequestTest_userValidation_3() throws Exception, Exception { - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader("a:", "123456"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - } - - // - // * ECOMP Consumer Password - expected to be SHA-2 256 encrypted value ( - // SALT + "real" password ) => maximal length 256 bytes = 32 characters - // Before storing/comparing please convert upper case letter to lower. - // The "normalized" encrypted password should match the following format : - // [a-z0-9] - // @Ignore("add manually user:password 2468:123:456 to - // users-configuration.yaml in runtime") - @Test(enabled = false) - public void sendAuthenticatedRequestTest_passwordValidation_1() throws Exception, Exception { - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader("A1", "123:456"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - } - - // * ECOMP Consumer Password - expected to be SHA-2 256 encrypted value ( - // SALT + "real" password ) => maximal length 256 bytes = 32 characters - // Before storing/comparing please convert upper case letter to lower. - // The "normalized" encrypted password should match the following format : - // [a-z0-9] - @Test(enabled = false) - // @Ignore("add manually user:password 2468:Sq123a456B to - // users-configuration.yaml in runtime") - public void sendAuthenticatedRequestTest_passwordValidation_2() throws Exception, Exception { - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader("B2", "Sq123a456B"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - } - - // * ECOMP Consumer Password - expected to be SHA-2 256 encrypted value ( - // SALT + "real" password ) => maximal length 256 bytes = 32 characters - // Before storing/comparing please convert upper case letter to lower. - // The "normalized" encrypted password should match the following format : - // [a-z0-9] - @Test - // @Ignore("add C3:111T-0-*# to file") - public void sendAuthenticatedRequestTest_passwordValidation_3() throws Exception, Exception { - Map<String, String> authorizationHeader = BaseRestUtils.addAuthorizeHeader("C3", "111T-0-*#"); - RestResponse restResponse = ArtifactRestUtils.downloadServiceArtifact(serviceDetails, deploymentArtifact, - sdncUserDetails, authorizationHeader); - assertEquals("Check response code after download artifact", 200, restResponse.getErrorCode().intValue()); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/FeProxyTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/FeProxyTest.java deleted file mode 100644 index e4f7d396be..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/FeProxyTest.java +++ /dev/null @@ -1,53 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.general; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.CategoryRestUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - -public class FeProxyTest extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public FeProxyTest() { - super(name, FeProxyTest.class.getName()); - } - - @Test - public void testFeProxy() throws Exception { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - RestResponse allCategoriesTowardsFe = CategoryRestUtils.getAllCategoriesTowardsFe(defaultUser, - BaseRestUtils.RESOURCE_COMPONENT_TYPE); - AssertJUnit.assertEquals("Check response code after get categories towards FE", 200, - allCategoriesTowardsFe.getErrorCode().intValue()); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/ManageEcompConsumerCredentials.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/ManageEcompConsumerCredentials.java deleted file mode 100644 index 12390eb2fc..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/ManageEcompConsumerCredentials.java +++ /dev/null @@ -1,1419 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.general; - -import static org.testng.AssertJUnit.assertEquals; - -import java.util.HashMap; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.elements.ConsumerDataDefinition; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedEcomConsumerAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ConsumerRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class ManageEcompConsumerCredentials extends ComponentBaseTest { - - protected static final String ADD_ECOMP_USER_CREDENTIALS = "AddECOMPUserCredentials"; - protected static final String DELETE_ECOMP_USER_CREDENTIALS = "DeleteECOMPUserCredentials"; - protected static final String GET_ECOMP_USER_CREDENTIALS = "GetECOMPUserCredentials"; - - public static final String contentTypeHeaderData = "application/json"; - public static final String acceptHeaderData = "application/json"; - - public static final int STATUS_CODE_SUCCESS = 200; - public static final int STATUS_CODE_SUCSESS_CREATED = 201; - public static final int STATUS_CODE_SUCCESS_DELETE_GET = 200; - public static final int STATUS_CODE_INVALID_CONTENT = 400; - public static final int STATUS_CODE_MISSING_DATA = 400; - public static final int STATUS_CODE_MISSING_INFORMATION = 403; - public static final int STATUS_CODE_RESTRICTED_ACCESS = 403; - - public static final int STATUS_CODE_NOT_FOUND = 404; - public static final int STATUS_CODE_RESTRICTED_OPERATION = 409; - - protected static Gson gson = new Gson(); - protected ConsumerDataDefinition consumerDataDefinition; - protected User sdncAdminUserDetails; - protected User sdncDesignerUserDetails; - protected User sdncTesterUserDetails; - protected User sdncGovernorUserDetails; - protected User sdncOpsUserDetails; - - public ManageEcompConsumerCredentials() { - super(name, ManageEcompConsumerCredentials.class.getName()); - } - - @Rule - public static TestName name = new TestName(); - - protected String salt = "123456789012345678901234567890ab"; - protected String password = "123456789012345678901234567890ab123456789012345678901234567890ab"; - protected String ecompUser = "benny"; - - protected Long consumerDetailsLastupdatedtime; - - @BeforeMethod - public void init() throws Exception { - sdncAdminUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncDesignerUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncTesterUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncGovernorUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - sdncOpsUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - - consumerDataDefinition = new ConsumerDataDefinition(); - consumerDataDefinition.setConsumerName(ecompUser); - consumerDataDefinition.setConsumerPassword(password); - consumerDataDefinition.setConsumerSalt(salt); - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - - } - - // US563681 manage ECOMP consumer credentials - DELETE/GET - @Test - public void deleteEcompCredentialsMethodDelete() throws Exception { - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - AssertJUnit.assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - AssertJUnit.assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - // DbUtils.deleteFromEsDbByPattern("_all"); - DbUtils.cleanAllAudits(); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - AssertJUnit.assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS_DELETE_GET, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCCESS_DELETE_GET); - // Get Consumer to verify that consumer user does not exist - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - AssertJUnit.assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - } - - //// US561728 CREATE ECOMP consumer credentials - @Test - public void createEcompCredentialsMethodPost() throws Exception { - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - // Validate actual consumerData to returned from response - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - } - - @Test(enabled = false) - public void createEcompCredentialsUserAlreayExist() throws Exception { - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - - // Create consumer which already exists with different password and Salt - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerPassword("zxcvb"); - consumerDataDefinition.setConsumerSalt("1234567890qwertyuiop1234567890as"); - createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer with new data - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsByDesigner() throws Exception { // HttpCspUserId - // header - // contains - // Designer - // UserId - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncDesignerUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_RESTRICTED_OPERATION, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncDesignerUserDetails, ActionStatus.RESTRICTED_OPERATION); - } - - @Test - public void createEcompCredentialsByTester() throws Exception { // HttpCspUserId - // header - // contains - // Tester - // UserId - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncTesterUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_RESTRICTED_OPERATION, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncTesterUserDetails, ActionStatus.RESTRICTED_OPERATION); - } - - @Test - public void createEcompCredentialsByOps() throws Exception { // HttpCspUserId - // header - // contains - // OPS - // UserId - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, sdncOpsUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_RESTRICTED_OPERATION, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncOpsUserDetails, ActionStatus.RESTRICTED_OPERATION); - } - - @Test - public void createEcompCredentialsByGovernor() throws Exception { // HttpCspUserId - // header - // contains - // Governor - // UserId - // Create - // Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncGovernorUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_RESTRICTED_OPERATION, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncGovernorUserDetails, ActionStatus.RESTRICTED_OPERATION); - } - - @Test - public void createEcompCredentialsByNoExistingIUser() throws Exception { - User noSdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - noSdncUserDetails.setRole("blabla"); - noSdncUserDetails.setUserId("bt750h"); - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, noSdncUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_RESTRICTED_OPERATION, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_ACCESS.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser( - consumerDataDefinition.getConsumerName() + "," + consumerDataDefinition.getConsumerSalt().toLowerCase() - + "," + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("")); - expectedEcomConsumerAuditJavaObject.setModifier("(" + noSdncUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - // user name - @Test - public void createEcompCredentialsUserNameIsNull() throws Exception { - consumerDataDefinition.setConsumerName(null); // SVC4528 - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_DATA, - createConsumerRest.getErrorCode().intValue()); - // verify taht consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerSalt().toLowerCase() + "," - + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer name")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsUserNameIsEmpty() throws Exception { - consumerDataDefinition.setConsumerName(""); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerSalt().toLowerCase() + "," - + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer name")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsUserNameIsNotUTF8() throws Exception { - consumerDataDefinition.setConsumerName("×‘× ×™"); // SVC4528 - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void createEcompCredentialsUserNameMaxLength() throws Exception { - consumerDataDefinition.setConsumerName( - "_ABCD-.abcdqwertyuiopasdfghjklzxcvbnmqw1234567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890pf34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfgghjklqwertyuiopzaiutrewasdfghjklqwertyuiopzasxcdferf123456.-"); // SVC4528 - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Validate actual consumerData to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameExceedMaxLength() throws Exception { - consumerDataDefinition.setConsumerName( - "_ABCD-.abcdqwertyuiopasdfghjklzxcvbnmqw1234567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890pf34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfgghjklqwertyuiopzaiutrewasdfghjklqwertyuiopzasxcdferf123456.--"); // SVC4528 - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.EXCEEDS_LIMIT, "Consumer name", "255"); - } - - @Test - public void createEcompCredentialsUserNameLastCharIsDash() throws Exception { // allowed - consumerDataDefinition.setConsumerName("ABCD34567890pf34567890poiutrew-"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject , Validate actual consumerData - // to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameLastCharIsPeriod() throws Exception { - consumerDataDefinition.setConsumerName("ABCD34567890pf34567890poiutrew."); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject , Validate actual consumerData - // to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameLastCharIsUnderscore() throws Exception { - consumerDataDefinition.setConsumerName("ABCD34567890pf34567890poiutrew_"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject , Validate actual consumerData - // to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameFirstCharIsUnderscore() throws Exception { - consumerDataDefinition.setConsumerName("_ABCD34567890pf34567890poiutre"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject , Validate actual consumerData - // to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameFirstCharIsPeriod() throws Exception { - consumerDataDefinition.setConsumerName(".ABCD34567890pf34567890poiutre"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_CONTENT_PARAM, "Consumer name"); - } - - @Test - public void createEcompCredentialsUserNameFirstCharIsDash() throws Exception { // Not - // allowed - consumerDataDefinition.setConsumerName("-ABCD34567890pf34567890poiutre"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_CONTENT_PARAM, "Consumer name"); - } - - /// Password - @Test - public void createEcompCredentialsPasswordIsNull() throws Exception { - consumerDataDefinition.setConsumerPassword(null); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_DATA, - createConsumerRest.getErrorCode().intValue()); - // verify taht consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt().toLowerCase()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer password")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsPasswordIsEmpty() throws Exception { - consumerDataDefinition.setConsumerPassword(""); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_DATA, - createConsumerRest.getErrorCode().intValue()); - // verify taht consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt().toLowerCase()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer password")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsPasswordMaxLength() throws Exception { // password - // must - // be - // 64 - // chars - consumerDataDefinition.setConsumerPassword("123456789012345678901234567890ab123456789012345678901234567890ab"); - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - // Validate actual consumerData to returned from response - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - // Delete Consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsPasswordExceeedMaxLength() throws Exception { // password - // must - // be - // 64 - // chars - consumerDataDefinition.setConsumerPassword("123456789012345678901234567890ab123456789012345678901234567890ab1"); - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_LENGTH, "Consumer password", "64"); - } - - @Test - public void createEcompCredentiaPasswordValid() throws Exception { - // Password Contains lowercase/uppercase characters and numbers - - // convert upper case letter to lower - consumerDataDefinition.setConsumerPassword("ABCabc1234567890POImnb12345678901234567890POIUzxcvbNMASDFGhjkl12"); - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - - } - - //// Salt - @Test - public void createEcompCredentialsSaltIsNull() throws Exception { - // Length must be 32 characters - consumerDataDefinition.setConsumerSalt(null); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_DATA, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerPassword().toLowerCase()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - - } - - @Test - public void createEcompCredentialsSaltIsEmpty() throws Exception { - consumerDataDefinition.setConsumerSalt(""); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_DATA, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerPassword().toLowerCase()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsSaltLengthLessThan32() throws Exception { - consumerDataDefinition.setConsumerSalt("123456789012345678901234567890a"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_LENGTH, "Consumer salt"); - - } - - // Bug - @Test - public void createEcompCredentialsSaltLengthMoreThan32() throws Exception { // Length - // must - // be - // 32 - // characters - // - - // SVC4529 - // "Error: - // Invalid - // Content. - // %1 - // exceeds - // limit - // of - // %2 - // characters." - consumerDataDefinition.setConsumerSalt("123456789012345678901234567890abc"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_LENGTH, "Consumer salt"); - - } - - @Test - public void createEcompCredentialsSaltUppercaseCharacters() throws Exception { - // Contains uppercase characters– exception invalid content - consumerDataDefinition.setConsumerSalt("123456789012345678901234567890AB"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // verify that consumer didn't created - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT_PARAM.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt() + "," + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject - .setModifier(sdncAdminUserDetails.getFullName() + "(" + sdncAdminUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - // UserId (UserId is taken from USER_ID header) - - @Test - public void createEcompCredentialsHttpCspUserIdIsEmpty() throws Exception { - // UserId is taken from USER_ID header - sdncAdminUserDetails.setUserId(""); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt() + "," + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject.setModifier(""); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsHttpCspUserIdIsNull() throws Exception { // UserId - // is - // taken - // from - // USER_ID - // header - sdncAdminUserDetails.setUserId(null); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt() + "," + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject.setModifier(""); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - @Test - public void createEcompCredentialsHttpCspUserIdHeaderIsMissing() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumerHttpCspAtuUidIsMissing(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName() + "," - + consumerDataDefinition.getConsumerSalt() + "," + consumerDataDefinition.getConsumerPassword()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("Consumer salt")); - expectedEcomConsumerAuditJavaObject.setModifier(""); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - ADD_ECOMP_USER_CREDENTIALS); - } - - // add UserId in json body - @Test - public void createEcompCredentiaJsonBodyContainLastModfierAtuid() throws Exception { - // Add UserId (not admin) to json - we will ignore and create the user - HashMap<String, String> jsonMap = new HashMap<String, String>(); - jsonMap.put("consumerName", "benny"); - jsonMap.put("consumerPassword", "123456789012345678901234567890ab123456789012345678901234567890ab"); - jsonMap.put("consumerSalt", "123456789012345678901234567890ab"); - jsonMap.put("lastModfierAtuid", "cs0008"); // designer - Gson gson = new Gson(); - ConsumerDataDefinition consumer = gson.fromJson(jsonMap.toString(), ConsumerDataDefinition.class); - - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumer, sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Validate actual consumerData to returned from response - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumer, getConsumerDataObject); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumer, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumer, sdncAdminUserDetails, - STATUS_CODE_SUCSESS_CREATED); - // Delete consumer - ConsumerRestUtils.deleteConsumer(consumer, sdncAdminUserDetails); - } - - @Test - public void createEcompCredentialsUserNameNotAllowedCharacters() throws Exception { - char invalidChars[] = { '`', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '+', '=', '<', '>', '?', '/', - '"', ':', '}', ']', '[', '{', '|', '\\', ' ', '\t', '\n' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName(invalidChars[i] + "ABCdef123"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_CONTENT_PARAM, "Consumer name"); - } - } - - @Test - public void createEcompCredentialsPasswordIsInvalid() throws Exception { - char invalidChars[] = { '`', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '+', '=', '<', '>', '?', '/', - '"', ':', '}', ']', '[', '{', '|', '\\', ' ', '\t', '\n' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerPassword( - "ABC" + invalidChars[i] + "ABCabc1234567890POImnb12345678901234567890POIUzxcvbNMASDFGhj"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_CONTENT_PARAM, "Consumer password"); - } - } - - @Test - public void createEcompCredentialsSaltNotAllowedCharacters() throws Exception { // Salt - // must - // be - // 32 - // chars - char invalidChars[] = { '`', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '+', '=', '<', '>', '?', '/', - '"', ':', '}', ']', '[', '{', '|', '\\', ' ', '\t', '\n' }; - for (int i = 0; i < invalidChars.length; i++) { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerSalt(invalidChars[i] + "1234567890123456789012345678901"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_INVALID_CONTENT, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.createEcompConsumerAuditFailure(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.INVALID_CONTENT_PARAM, "Consumer salt"); - } - } - - @Test - public void createEcompCredentialsPasswordEncoded() throws Exception { - consumerDataDefinition.setConsumerPassword("0a0dc557c3bf594b1a48030e3e99227580168b21f44e285c69740b8d5b13e33b"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - // Validate actual consumerData to returned from response - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(ADD_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCSESS_CREATED); - } - - // - - @Test - public void deleteEcompUserAlreayDeleted() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete ECOMP consumer - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS_DELETE_GET, - deleteConsumerRest.getErrorCode().intValue()); - // Try to delete ECOMP consumer already deleted - DbUtils.deleteFromEsDbByPattern("_all"); - deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void deleteEcompUserByTester() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncTesterUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncTesterUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Verify that consumer is not deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void deleteEcompUserByOps() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncOpsUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncOpsUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Verify that consumer is not deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void deleteEcompUserByGovernor() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncGovernorUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncGovernorUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Verify that consumer is not deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void deleteEcompUserByDesigner() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncDesignerUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncDesignerUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Verify that consumer is not deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void deleteEcompUserByNoExistingIUser() throws Exception { - User noSdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - noSdncUserDetails.setRole("blabla"); - noSdncUserDetails.setUserId("bt750h"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, noSdncUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_ACCESS, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_ACCESS.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(ADD_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("")); - expectedEcomConsumerAuditJavaObject.setModifier("(" + noSdncUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - DELETE_ECOMP_USER_CREDENTIALS); - // Verify that consumer is not deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void deleteEcompCredentialsUserDoesNotExist() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - - } - - @Test - public void deleteEcompCredentialsUserNameIsNull() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName(null); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void deleteEcompCredentialsUserNameMaxLength() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName( - "_BCD-.abcdqwertyuiopasdfghjklzxcvbnmqw1234567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890pf34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfgghjklqwertyuiopzaiutrewasdfghjklqwertyuiopzasxcdferf123456.--"); // SVC4528 - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void deleteEcompCredentialsUserNameExceedMaxLength() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName( - "_XXXBCD-.abcdqwertyuiopasdfghjklzxcvbnmqw1234567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890pf34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfgghjklqwertyuiopzaiutrewasdfghjklqwertyuiopzasxcdferf123456.--"); // SVC4528 - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void deleteEcompCredentialsHttpCspUserIdHeaderIsMissing() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse createConsumerRest = ConsumerRestUtils.deleteConsumerHttpCspAtuUidIsMissing(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_MISSING_INFORMATION, - createConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(DELETE_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc()); - expectedEcomConsumerAuditJavaObject.setModifier(""); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - DELETE_ECOMP_USER_CREDENTIALS); - } - - @Test - public void deleteEcompCredentialsNameIsUpperCase() throws Exception { - consumerDataDefinition.setConsumerName("benny"); - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete consumer - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName("BENNY"); - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - deleteConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(DELETE_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - // Get Consumer to verify that consumer user was not deleted - consumerDataDefinition.setConsumerName("benny"); - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - } - - @Test - public void getEcompCredentialsMethodGet() throws Exception { - // Create Consumer - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - // Validate actual consumerData to returned from response - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - DbUtils.deleteFromEsDbByPattern("_all"); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCCESS_DELETE_GET); - // Delete consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void getEcompUserAlreayDeleted() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - // Delete ECOMP consumer - RestResponse deleteConsumerRest = ConsumerRestUtils.deleteConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS_DELETE_GET, - deleteConsumerRest.getErrorCode().intValue()); - DbUtils.deleteFromEsDbByPattern("_all"); - // Try to get ECOMP consumer already deleted - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void getEcompUserByTester() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer by Tester user - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncTesterUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncTesterUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Get Consumer by Admin - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void getEcompUserByOps() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer by Ops user - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncOpsUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncOpsUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Get Consumer by Admin - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void getEcompUserByGovernor() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer by Ops user - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncGovernorUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncGovernorUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Get Consumer by Admin - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void getEcompUserByDesigner() throws Exception { - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // Get Consumer by Designer user - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncDesignerUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_OPERATION, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncDesignerUserDetails, ActionStatus.RESTRICTED_OPERATION); - // Get Consumer by Admin - getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } - - @Test - public void getEcompUserByNoExistingIUser() throws Exception { - User noSdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - noSdncUserDetails.setRole("blabla"); - noSdncUserDetails.setUserId("bt750h"); - // Get Consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, noSdncUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_RESTRICTED_ACCESS, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_ACCESS.name()); - ExpectedEcomConsumerAudit expectedEcomConsumerAuditJavaObject = new ExpectedEcomConsumerAudit(); - expectedEcomConsumerAuditJavaObject.setAction(GET_ECOMP_USER_CREDENTIALS); - expectedEcomConsumerAuditJavaObject.setEcomUser(consumerDataDefinition.getConsumerName()); - expectedEcomConsumerAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedEcomConsumerAuditJavaObject.setDesc(errorInfo.getAuditDesc("")); - expectedEcomConsumerAuditJavaObject.setModifier("(" + noSdncUserDetails.getUserId() + ")"); - AuditValidationUtils.validateEcompConsumerAudit(expectedEcomConsumerAuditJavaObject, - GET_ECOMP_USER_CREDENTIALS); - } - - @Test - public void getEcompCredentialsUserDoesNotExist() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - - } - - @Test - public void getEcompCredentialsUserNameIsNull() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - consumerDataDefinition.setConsumerName(null); - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_NOT_FOUND, - getConsumerRest.getErrorCode().intValue()); - // Audit validation - AuditValidationUtils.deleteEcompConsumerAuditFailure(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, ActionStatus.ECOMP_USER_NOT_FOUND, consumerDataDefinition.getConsumerName()); - } - - @Test - public void getEcompCredentialsUserNameMaxLength() throws Exception { - consumerDataDefinition.setConsumerName( - "_ABCD-.abcdqwertyuiopasdfghjklzxcvbnmqw1234567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfg34567890pf34567890poiutrewasdfghjklqwertyuiopzaiutrewasdfgghjklqwertyuiopzaiutrewasdfghjklqwertyuiopzasxcdferf123456.-"); // SVC4528 - RestResponse createConsumerRest = ConsumerRestUtils.createConsumer(consumerDataDefinition, - sdncAdminUserDetails); - assertEquals("Check response code after create Consumer", STATUS_CODE_SUCSESS_CREATED, - createConsumerRest.getErrorCode().intValue()); - // parse updated response to javaObject - ConsumerDataDefinition getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(createConsumerRest); - // Validate actual consumerData to returned from response - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Get Consumer - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse getConsumerRest = ConsumerRestUtils.getConsumer(consumerDataDefinition, sdncAdminUserDetails); - assertEquals("Check response code after get Consumer", STATUS_CODE_SUCCESS, - getConsumerRest.getErrorCode().intValue()); - getConsumerDataObject = ConsumerRestUtils.parseComsumerResp(getConsumerRest); - ConsumerRestUtils.validateConsumerReqVsResp(consumerDataDefinition, getConsumerDataObject); - // Audit validation - AuditValidationUtils.ecompConsumerAuditSuccess(GET_ECOMP_USER_CREDENTIALS, consumerDataDefinition, - sdncAdminUserDetails, STATUS_CODE_SUCCESS_DELETE_GET); - // Delete consumer - ConsumerRestUtils.deleteConsumer(consumerDataDefinition, sdncAdminUserDetails); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/UuidTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/UuidTest.java deleted file mode 100644 index acb7e15c6c..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/general/UuidTest.java +++ /dev/null @@ -1,104 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.general; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.List; -import java.util.UUID; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.common.api.Constants; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - -public class UuidTest extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public UuidTest() { - super(name, UuidTest.class.getName()); - config = Config.instance(); - } - - @Test - public void testE2EUuidHeaderReturnedAndPreserved() throws IOException { - UUID randomUUID = UUID.randomUUID(); - String uuidStr = randomUUID.toString(); - RestResponse allTagsTowardsCatalogFe = CatalogRestUtils.getAllCategoriesTowardsCatalogFeWithUuid(uuidStr); - AssertJUnit.assertEquals(allTagsTowardsCatalogFe.getErrorCode(), new Integer(200)); - List<String> list = allTagsTowardsCatalogFe.getHeaderFields().get(Constants.X_ECOMP_REQUEST_ID_HEADER); - // check that header is returned - AssertJUnit.assertTrue(list != null && !list.isEmpty()); - String receivedUuid = list.get(0); - // Check that same uuid returned - AssertJUnit.assertEquals(uuidStr, receivedUuid); - } - - @Test - public void testUuidHeaderGeneratedBe() throws IOException { - RestResponse allTagsTowardsCatalogBe = CatalogRestUtils.getAllCategoriesTowardsCatalogBe(); - List<String> list = allTagsTowardsCatalogBe.getHeaderFields().get(Constants.X_ECOMP_REQUEST_ID_HEADER); - // check that response was OK - assertEquals(allTagsTowardsCatalogBe.getErrorCode(), new Integer(200)); - // check that header is returned - assertTrue(list != null && !list.isEmpty()); - String uuid = list.get(0); - // Check there is no conversion error - UUID.fromString(uuid); - } - - @Test - public void testE2EOptionsNoUuid() throws IOException { - RestResponse allTagsTowardsCatalogFe = ResourceRestUtils.sendOptionsTowardsCatalogFeWithUuid(); - assertEquals(allTagsTowardsCatalogFe.getErrorCode(), new Integer(200)); - List<String> list = allTagsTowardsCatalogFe.getHeaderFields().get(Constants.X_ECOMP_REQUEST_ID_HEADER); - // check that header is returned (generated by BE) - assertTrue(list != null && !list.isEmpty()); - String receivedUuid = list.get(0); - // Check there is no conversion error - UUID.fromString(receivedUuid); - } - - @Test - public void testE2EMethodNotAllowedWithUuid() throws IOException { - UUID randomUUID = UUID.randomUUID(); - String uuidStr = randomUUID.toString(); - RestResponse allTagsTowardsCatalogFe = ResourceRestUtils - .putAllCategoriesTowardsCatalogFeWithUuidNotAllowed(uuidStr); - assertEquals(allTagsTowardsCatalogFe.getErrorCode(), new Integer(405)); - List<String> list = allTagsTowardsCatalogFe.getHeaderFields().get(Constants.X_ECOMP_REQUEST_ID_HEADER); - // check that header is returned (generated by BE) - assertTrue(list != null && !list.isEmpty()); - String receivedUuid = list.get(0); - // Check that same uuid returned - assertEquals(uuidStr, receivedUuid); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/CsarUtilsTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/CsarUtilsTest.java deleted file mode 100644 index a58ec18840..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/CsarUtilsTest.java +++ /dev/null @@ -1,646 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.Map; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.common.util.YamlToObjectConverter; -import org.testng.annotations.Test; -import org.yaml.snakeyaml.Yaml; - -public class CsarUtilsTest extends ComponentBaseTest { - - public static final String ASSET_TOSCA_TEMPLATE = "assettoscatemplate"; - - @Rule - public static TestName name = new TestName(); - - public CsarUtilsTest() { - super(name, CsarUtilsTest.class.getName()); - } - - @Test(enabled = true) - public void createServiceCsarBasicTest() throws Exception { - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - - Resource resourceVF = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.VENDOR_LICENSE, resourceVF, UserRoleEnum.DESIGNER, - true, true); - resourceVF = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceVF, service, UserRoleEnum.DESIGNER, true); - - service = (Service) AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, service); - - csarBasicValidation(service, downloadCSAR); - } - - @Test(enabled = true) - public void createResourceCsarBasicTest() throws Exception { - - Resource resourceVF = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - resourceVF = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, resourceVF); - - csarBasicValidation(resourceVF, downloadCSAR); - - validateVFCsar(resourceVF, downloadCSAR, 1, 0, 0, 0, 0, 0, 0); - - - } - - @Test(enabled = true) - public void createServiceCsarInclDeploymentArtTest() throws Exception { - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - - Resource resourceVF1 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - Resource resourceVF2 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - resourceVF1 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - resourceVF2 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF2, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceVF1, service, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceVF2, service, UserRoleEnum.DESIGNER, true); - - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.YANG_XML, service, UserRoleEnum.DESIGNER, true, true); - - service = (Service) AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, service); - - csarBasicValidation(service, downloadCSAR); - - validateServiceCsar(resourceVF1, resourceVF2, service, downloadCSAR, 3, 3, 1, 0); - } - - @Test(enabled = true) - public void createResourceCsarInclDeploymentArtTest() throws Exception { - - Resource resourceVF1 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.YANG_XML, resourceVF1, UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_ARTIFACT, resourceVF1, UserRoleEnum.DESIGNER, true, true); - - resourceVF1 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, resourceVF1); - - csarBasicValidation(resourceVF1, downloadCSAR); - - validateVFCsar(resourceVF1, downloadCSAR, 1, 0, 1, 1, 0, 0, 0); - } - - @Test(enabled = true) - public void createResourceCsarInclInformationalArtTest() throws Exception { - - Resource resourceVF1 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.YANG_XML, resourceVF1, UserRoleEnum.DESIGNER, false, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceVF1, UserRoleEnum.DESIGNER, false, true); - - resourceVF1 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, resourceVF1); - - csarBasicValidation(resourceVF1, downloadCSAR); - - validateVFCsar(resourceVF1, downloadCSAR, 1, 0, 0, 0, 1, 1, 0); - } - - @Test(enabled = true) - public void createServiceCsarNotMandatoryMetadataFieldsTest() throws Exception { - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - service.setServiceType("serviceTypeTest"); - service.setServiceRole("serviceRoleTest"); - ServiceRestUtils.updateService(new ServiceReqDetails(service), sdncModifierDetails); - - Resource resourceVF1 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - Resource resourceVF2 = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - - resourceVF1 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - resourceVF2 = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF2, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceVF1, service, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceVF2, service, UserRoleEnum.DESIGNER, true); - - service = (Service) AtomicOperationUtils.changeComponentState(service, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, service); - - csarBasicValidation(service, downloadCSAR); - - validateServiceCsar(resourceVF1, resourceVF2, service, downloadCSAR, 3, 3, 0, 0); - } - - @Test(enabled = true) - public void createResourceCsarNotMandatoryMetadataFieldsTest() throws Exception { - - Resource resourceVF = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - resourceVF.setResourceVendorModelNumber("modelNumberTest"); - ResourceRestUtils.updateResourceMetadata(new ResourceReqDetails(resourceVF), sdncModifierDetails, resourceVF.getUniqueId()); - - resourceVF = (Resource) AtomicOperationUtils - .changeComponentState(resourceVF, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true).getLeft(); - - byte[] downloadCSAR = downloadCSAR(sdncModifierDetails, resourceVF); - - csarBasicValidation(resourceVF, downloadCSAR); - - validateVFCsar(resourceVF, downloadCSAR, 1, 0, 0, 0, 0, 0, 0); - - - } - - - private void csarBasicValidation(Component mainComponent, byte[] downloadCSAR) { - try (ByteArrayInputStream ins = new ByteArrayInputStream(downloadCSAR); - ZipInputStream zip = new ZipInputStream(ins);) { - - String resourceYaml = null; - byte[] buffer = new byte[1024]; - ZipEntry nextEntry = zip.getNextEntry(); - StringBuffer sb = new StringBuffer(); - int len; - - while ((len = zip.read(buffer)) > 0) { - sb.append(new String(buffer, 0, len)); - } - assertTrue(nextEntry.getName().equals("csar.meta")); - - readNextEntry(sb, len, buffer, zip); - - nextEntry = zip.getNextEntry(); - assertTrue(nextEntry.getName().equals("TOSCA-Metadata/TOSCA.meta")); - - readNextEntry(sb, len, buffer, zip); - nextEntry = zip.getNextEntry(); - resourceYaml = sb.toString(); - - YamlToObjectConverter yamlToObjectConverter = new YamlToObjectConverter(); - ArtifactDefinition artifactDefinition = mainComponent.getToscaArtifacts().get(ASSET_TOSCA_TEMPLATE); - String fileName = artifactDefinition.getArtifactName(); - assertEquals("Tosca-Template file name: ", "Definitions/" + fileName, nextEntry.getName()); - assertTrue("Tosca template Yaml validation: ", yamlToObjectConverter.isValidYaml(resourceYaml.getBytes())); - - ins.close(); - zip.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - private void validateServiceCsar(Component certifiedVFC1, Component certifiedVFC2, Service fetchedService, - byte[] resultByte, int toscaEntryIndexToPass, int generatorEntryIndexToPass, - int deploymentArtifactIndexToPass, int informationalArtifactIndexToPass) { - - // TODO Test to validate everything is right (comment out after testing) - /*try { - FileUtils.writeByteArrayToFile(new File("c:/TestCSAR/" + fetchedService.getName() + ".zip"), resultByte); - } catch (IOException e) { - // Auto-generated catch block - e.printStackTrace(); - }*/ - - try (ByteArrayInputStream ins = new ByteArrayInputStream(resultByte); - ZipInputStream zip = new ZipInputStream(ins);) { - - String resourceYaml = null; - byte[] buffer = new byte[1024]; - ZipEntry nextEntry = zip.getNextEntry(); - StringBuffer sb = new StringBuffer(); - int len; - - while ((len = zip.read(buffer)) > 0) { - sb.append(new String(buffer, 0, len)); - } - assertTrue(nextEntry.getName().equals("csar.meta")); - readNextEntry(sb, len, buffer, zip); - nextEntry = zip.getNextEntry(); - assertTrue(nextEntry.getName().equals("TOSCA-Metadata/TOSCA.meta")); - readNextEntry(sb, len, buffer, zip); - - - YamlToObjectConverter yamlToObjectConverter = new YamlToObjectConverter(); - - int toscaEntryIndex = 0; - int generatorEntryIndex = 0; - int deploymentArtifactIndex = 0; - int informationalArtifactIndex = 0; - String fileName = null; - ArtifactDefinition artifactDefinition; - Component componentToValidate = null; - - artifactDefinition = fetchedService.getToscaArtifacts().get(ASSET_TOSCA_TEMPLATE); - String serviceFileName = artifactDefinition.getArtifactName(); - artifactDefinition = certifiedVFC1.getToscaArtifacts().get(ASSET_TOSCA_TEMPLATE); - String vfc1FileName = artifactDefinition.getArtifactName(); - artifactDefinition = certifiedVFC2.getToscaArtifacts().get(ASSET_TOSCA_TEMPLATE); - String vfc2FileName = artifactDefinition.getArtifactName(); - - while ((nextEntry = zip.getNextEntry()) != null) { - sb.setLength(0); - - while ((len = zip.read(buffer)) > 0) { - sb.append(new String(buffer, 0, len)); - } - - String entryName = nextEntry.getName(); - - resourceYaml = sb.toString(); - if (entryName.contains(serviceFileName)) { - componentToValidate = fetchedService; - fileName = "Definitions/" + serviceFileName; - - assertEquals("Validate entry Name", (fileName), nextEntry.getName()); - assertTrue(yamlToObjectConverter.isValidYaml(resourceYaml.getBytes())); - validateContent(resourceYaml, componentToValidate); - ++toscaEntryIndex; - continue; - } - - if (entryName.contains(vfc1FileName)) { - componentToValidate = certifiedVFC1; - fileName = "Definitions/" + vfc1FileName; - - assertEquals("Validate entry Name", (fileName), nextEntry.getName()); - assertTrue(yamlToObjectConverter.isValidYaml(resourceYaml.getBytes())); - validateContent(resourceYaml, componentToValidate); - ++toscaEntryIndex; - continue; - } - if (entryName.contains(vfc2FileName)) { - componentToValidate = certifiedVFC2; - fileName = "Definitions/" + vfc2FileName; - - assertEquals("Validate entry Name", (fileName), nextEntry.getName()); - assertTrue(yamlToObjectConverter.isValidYaml(resourceYaml.getBytes())); - validateContent(resourceYaml, componentToValidate); - ++toscaEntryIndex; - continue; - } - - if (entryName.startsWith("Artifacts/Deployment/MODEL_INVENTORY_PROFILE") && entryName.contains("AAI")) { - ++generatorEntryIndex; - continue; - } - - if (entryName.contains(".xml") && entryName.startsWith("Artifacts/Deployment/") && !entryName.contains("AAI")) { - ++deploymentArtifactIndex; - continue; - } - - if (entryName.contains(".xml") && entryName.startsWith("Artifacts/Informational/") && !entryName.contains("AAI")) { - ++informationalArtifactIndex; - continue; - } - - assertTrue("Unexpected entry: " + entryName, true); - } - assertEquals("Validate amount of entries", toscaEntryIndexToPass, toscaEntryIndex); - assertEquals("Validate amount of generated AAI artifacts", generatorEntryIndexToPass, generatorEntryIndex); - assertEquals("Validate amount of Deployment artifacts entries", deploymentArtifactIndexToPass, - deploymentArtifactIndex); - assertEquals("Validate amount of Informational artifacts entries", informationalArtifactIndexToPass, - informationalArtifactIndex); - - ins.close(); - zip.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - private void validateVFCsar(Component certifiedVF, byte[] resultByte, int toscaEntryIndexToPass, - int ymlDeploymentArtifactIndexToPass, int xmlDeploymentArtifactIndexToPass, int heatDeploymentArtifactIndexToPass, - int ymlInformationalArtifactIndexToPass, int xmlInformationalArtifactIndexToPass, int heatInformationalArtifactIndexToPass) { - - // TODO Test to validate everything is right (comment out after testing) - /*try { - FileUtils.writeByteArrayToFile(new File("c:/TestCSAR/" + fetchedService.getName() + ".zip"), resultByte); - } catch (IOException e) { - // Auto-generated catch block - e.printStackTrace(); - }*/ - - try (ByteArrayInputStream ins = new ByteArrayInputStream(resultByte); - ZipInputStream zip = new ZipInputStream(ins);) { - - String resourceYaml = null; - byte[] buffer = new byte[1024]; - ZipEntry nextEntry = zip.getNextEntry(); - StringBuffer sb = new StringBuffer(); - int len; - - while ((len = zip.read(buffer)) > 0) { - sb.append(new String(buffer, 0, len)); - } - - assertTrue(nextEntry.getName().equals("csar.meta")); - - readNextEntry(sb, len, buffer, zip); - nextEntry = zip.getNextEntry(); - assertTrue(nextEntry.getName().equals("TOSCA-Metadata/TOSCA.meta")); - - readNextEntry(sb, len, buffer, zip); - - YamlToObjectConverter yamlToObjectConverter = new YamlToObjectConverter(); - - int toscaEntryIndex = 0; - int ymlDeploymentArtifactsIndex = 0; - int xmlDeploymentArtifactsIndex = 0; - int heatDeploymentArtifactIndex = 0; - int ymlInformationalArtifactsIndex = 0; - int xmlInformationalArtifactsIndex = 0; - int heatInformationalArtifactIndex = 0; - String fileName = null; - ArtifactDefinition artifactDefinition; - Component componentToValidate = null; - - artifactDefinition = certifiedVF.getToscaArtifacts().get(ASSET_TOSCA_TEMPLATE); - String vfFileName = artifactDefinition.getArtifactName(); - - while ((nextEntry = zip.getNextEntry()) != null) { - - readNextEntry(sb, len, buffer, zip); - - String entryName = nextEntry.getName(); - - resourceYaml = sb.toString(); - if (entryName.contains(vfFileName)) { - componentToValidate = certifiedVF; - fileName = "Definitions/" + vfFileName; - - assertEquals("Validate entry Name", (fileName), nextEntry.getName()); - assertTrue(yamlToObjectConverter.isValidYaml(resourceYaml.getBytes())); - validateContent(resourceYaml, componentToValidate); - ++toscaEntryIndex; - continue; - } - - if (entryName.contains(".xml") && entryName.contains("YANG_XML")) { - if(entryName.startsWith("Artifacts/Deployment")){ - ++xmlDeploymentArtifactsIndex; - continue; - }else if(entryName.startsWith("Artifacts/Informational")){ - ++xmlInformationalArtifactsIndex; - continue; - } - } - - if (entryName.contains(".sh") && entryName.contains("HEAT_ARTIFACT")) { - if(entryName.startsWith("Artifacts/Deployment")){ - ++heatDeploymentArtifactIndex; - continue; - }else if(entryName.startsWith("Artifacts/Informational")){ - ++heatInformationalArtifactIndex; - continue; - } - } - - if ((entryName.contains(".yml") || entryName.contains(".yaml")) && entryName.contains("HEAT")) { - if(entryName.startsWith("Artifacts/Deployment")){ - ++ymlDeploymentArtifactsIndex; - continue; - }else if(entryName.startsWith("Artifacts/Informational")){ - ++ymlInformationalArtifactsIndex; - continue; - } - } - - if(entryName.contains("Definitions/") && entryName.contains("template-interface.yml")){ - validateInterfaceContent(resourceYaml, certifiedVF); - continue; - } - if(entryName.contains("Definitions/")) { - if(isImportsFileValidation(entryName)) - continue; - } - - assertTrue("Unexpected entry: " + entryName, false); - } - - //Definitions folder - assertEquals("Validate amount of entries", toscaEntryIndexToPass, toscaEntryIndex); - - //Deployment folder - assertEquals("Validate amount of YAML Deployment artifacts", ymlDeploymentArtifactIndexToPass, ymlDeploymentArtifactsIndex); - assertEquals("Validate amount of XML Deployment artifacts", xmlDeploymentArtifactIndexToPass, - xmlDeploymentArtifactsIndex); - assertEquals("Validate amount of HEAT Deployment artifacts", heatDeploymentArtifactIndexToPass, - heatDeploymentArtifactIndex); - - //Informational folder - assertEquals("Validate amount of YAML Informational artifacts", ymlInformationalArtifactIndexToPass, ymlInformationalArtifactsIndex); - assertEquals("Validate amount of XML Informational artifacts", xmlInformationalArtifactIndexToPass, - xmlInformationalArtifactsIndex); - assertEquals("Validate amount of HEAT Informational artifacts", heatInformationalArtifactIndexToPass, - heatInformationalArtifactIndex); - - ins.close(); - zip.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - private void validateContent(String content, Component component) { - Yaml yaml = new Yaml(); - - InputStream inputStream = new ByteArrayInputStream(content.getBytes()); - @SuppressWarnings("unchecked") - Map<String, Object> load = (Map<String, Object>) yaml.load(inputStream); - @SuppressWarnings("unchecked") - Map<String, Object> metadata = (Map<String, Object>) load.get("metadata"); - assertNotNull(metadata); - - String name = (String) metadata.get("name"); - assertNotNull(name); - assertEquals("Validate component name", component.getName(), name); - - String invariantUUID = (String) metadata.get("invariantUUID"); - assertNotNull(invariantUUID); - assertEquals("Validate component invariantUUID", component.getInvariantUUID(), invariantUUID); - - String UUID = (String) metadata.get("UUID"); - assertNotNull(UUID); - assertEquals("Validate component UUID", component.getUUID(), UUID); - - String type = (String) metadata.get("type"); - assertNotNull(type); - if (component.getComponentType().equals(ComponentTypeEnum.SERVICE)) { - assertEquals("Validate component type", component.getComponentType().getValue(), type); - String serviceType = (String) metadata.get("serviceType"); - assertNotNull(serviceType); - assertEquals("Validate service type", ((Service )component).getServiceType(), serviceType); - String serviceRole = (String) metadata.get("serviceRole"); - assertNotNull(serviceRole); - assertEquals("Validate service role", ((Service )component).getServiceRole(), serviceRole); - } else { - assertEquals("Validate component type", ((Resource) component).getResourceType(), - ResourceTypeEnum.valueOf(type)); - String resourceVendorModelNumber = (String) metadata.get("resourceVendorModelNumber"); - assertNotNull(resourceVendorModelNumber); - assertEquals("Validate resource vendor model number", ((Resource )component).getResourceVendorModelNumber(), resourceVendorModelNumber); - } - } - - private byte[] downloadCSAR(User sdncModifierDetails, Component createdComponent) throws Exception { - - String artifactUniqeId = createdComponent.getToscaArtifacts().get("assettoscacsar").getUniqueId(); - RestResponse getCsarResponse = null; - - switch (createdComponent.getComponentType()) { - case RESOURCE: - getCsarResponse = ArtifactRestUtils.downloadResourceArtifactInternalApi(createdComponent.getUniqueId(), - sdncModifierDetails, artifactUniqeId); - break; - case SERVICE: - getCsarResponse = ArtifactRestUtils.downloadServiceArtifactInternalApi(createdComponent.getUniqueId(), - sdncModifierDetails, artifactUniqeId); - break; - default: - break; - } - - assertNotNull(getCsarResponse); - BaseRestUtils.checkSuccess(getCsarResponse); - - ArtifactUiDownloadData artifactUiDownloadData = ResponseParser.parseToObject(getCsarResponse.getResponse(), - ArtifactUiDownloadData.class); - - assertNotNull(artifactUiDownloadData); - - byte[] fromUiDownload = artifactUiDownloadData.getBase64Contents().getBytes(); - byte[] decodeBase64 = Base64.decodeBase64(fromUiDownload); - - return decodeBase64; - } - - private void validateInterfaceContent(String content, Component component) { - Yaml yaml = new Yaml(); - - InputStream inputStream = new ByteArrayInputStream(content.getBytes()); - @SuppressWarnings("unchecked") - Map<String, Object> load = (Map<String, Object>) yaml.load(inputStream); - @SuppressWarnings("unchecked") - Map<String, Object> node_types = (Map<String, Object>) load.get("node_types"); - assertNotNull(node_types); - - String toscaInterfaceName = node_types.keySet().stream().filter(p -> p.startsWith("org.openecomp.")).findAny().get(); - Map<String, Object> toscaInterface = (Map<String, Object>) node_types.get(toscaInterfaceName); - assertNotNull(toscaInterface); - String derived_from = (String) toscaInterface.get("derived_from"); - assertNotNull(derived_from); - assertEquals("Validate derived from generic", component.getDerivedFromGenericType(), derived_from); - - } - - private void readNextEntry(StringBuffer sb, int len, byte[] buffer, ZipInputStream zip) throws IOException { - sb.setLength(0); - - while ((len = zip.read(buffer)) > 0) { - sb.append(new String(buffer, 0, len)); - } - } - - private boolean isImportsFileValidation(String fileName) { - - switch(fileName){ - case "Definitions/artifacts.yml": - case "Definitions/capabilities.yml": - case "Definitions/data.yml": - case "Definitions/groups.yml": - case "Definitions/interfaces.yml": - case "Definitions/nodes.yml": - case "Definitions/policies.yml": - case "Definitions/relationships.yml": - return true; - - } - return false; - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ExportToscaTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ExportToscaTest.java deleted file mode 100644 index 828326e3da..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ExportToscaTest.java +++ /dev/null @@ -1,657 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.openecomp.sdc.ci.tests.utils.ToscaParserUtils.downloadAndParseToscaTemplate; - -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Optional; -import java.util.stream.Collectors; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.ComponentInstInputsMap; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstanceInput; -import org.openecomp.sdc.be.model.ComponentInstancePropInput; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.GroupDefinition; -import org.openecomp.sdc.be.model.GroupProperty; -import org.openecomp.sdc.be.model.InputDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.tosca.ToscaPropertyType; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.InputsRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils; -import org.openecomp.sdc.common.api.Constants; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; - -public class ExportToscaTest extends ComponentBaseTest { - @Rule - public static TestName name = new TestName(); - String rootPath = System.getProperty("user.dir"); - private static final String CSARS_PATH = "/src/test/resources/CI/csars/"; - public static String userDefinedNodeYaml = "CustomVL.yml"; - - public ExportToscaTest() { - super(name, ExportToscaTest.class.getName()); - } - - @DataProvider(name = "vfModuleCsar") - public static Object[][] csarNames() { - return new Object[][] { { "VSPPackage", true }, { "csar_1", true }, { "noArtifact", false }, {"noVfModule", false} }; -// return new Object[][] { { "VSPPackage", true }, { "csar_1", true }, { "noArtifact", false } }; - } - - @Test(dataProvider = "vfModuleCsar") - public void exportVfModuleTest(String csarname, boolean includeGroups) throws Exception { - System.out.println("run for csar " + csarname); - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, csarname); - - validateGroupsInResource(sdncModifierDetails, createdResource, includeGroups); - } - - @Test(dataProvider = "vfModuleCsar") - public void exportVfModuleInstanceTest(String csarname, boolean includeGroups) throws Exception { - System.out.println("run for csar " + csarname); - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource - Resource createdResource = createVfFromCSAR(sdncModifierDetails, csarname); - - // change state to check in - RestResponse checkinState = LifecycleRestUtils.changeComponentState(createdResource, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - - // 2 create service - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // 3 create vf instance in service - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(createdResource); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - List<GroupDefinition> groupsInResource = createdResource.getGroups(); - int vfModuleCount = 0; - List<GroupDefinition> vfModulesInRes = groupsInResource.stream().filter(g -> g.getType().equals(Constants.DEFAULT_GROUP_VF_MODULE)).collect(Collectors.toList()); - - ComponentInstance componentInstance = service.getComponentInstances().get(0); - String normalizedName = componentInstance.getNormalizedName(); - - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, service); - assertNotNull(load); - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - Map<String, Object> groups = (Map<String, Object>) topology_template.get("groups"); - if (includeGroups) { - assertNotNull(vfModulesInRes); - assertNotNull(groups); - - assertEquals("Validate count of vf module instances", vfModulesInRes.size(), groups.size()); - - vfModulesInRes.forEach(modInRes -> { - validateVfModuleVsInstance(normalizedName, groups, modInRes); - }); - }else{ - assertNull(groups); - } - } - - private void validateVfModuleVsInstance(String normalizedName, Map<String, Object> groups, GroupDefinition modInRes) { - String instName = normalizedName + ".." + modInRes.getName(); - Map<String, Object> group = (Map<String, Object>) groups.get(instName); - assertNotNull(group); - - String type = (String) group.get("type"); - assertNotNull(type); - assertEquals("Validate group instance type", modInRes.getType(), type); - - Map<String, Object> metadata = (Map<String, Object>) group.get("metadata"); - assertNotNull(metadata); - - String invariantUUID = (String) metadata.get("vfModuleModelInvariantUUID"); - String name = (String) metadata.get("vfModuleModelName"); - String UUID = (String) metadata.get("vfModuleModelUUID"); - String version = (String) metadata.get("vfModuleModelVersion"); - - String customizationUUID = (String) metadata.get("vfModuleModelCustomizationUUID"); - assertNotNull("Validate group instance customizationUUID", customizationUUID); - - assertEquals("Validate group instance InvariantUUID", modInRes.getInvariantUUID(), invariantUUID); - assertEquals("Validate group instance name", modInRes.getName(), name); - assertEquals("Validate group instance UUID", modInRes.getGroupUUID(), UUID); - assertEquals("Validate group instance version", modInRes.getVersion(), version); - - Map<String, Object> propertiesInInst = (Map<String, Object>) group.get("properties"); - assertNotNull(propertiesInInst); - - List<GroupProperty> propertiesInGroup = modInRes.convertToGroupProperties(); - // property isBase not exist in tosca - assertEquals("Validate group instance properties size", propertiesInGroup.size() - 1, propertiesInInst.size()); - propertiesInGroup.forEach(propInGroup -> { - String propName = propInGroup.getName(); - if (!propName.equals("isBase")) { - Object propValue = propertiesInInst.get(propName); - String valueInGroup = propInGroup.getValue(); - if (valueInGroup != null && !valueInGroup.isEmpty()) { - assertNotNull(propValue); - assertEquals("Validate group instance property value for " + propName, valueInGroup, propValue.toString()); - } else { - assertNull(propValue); - } - } - }); - } - - private void validateGroupsInResource(User sdncModifierDetails, Resource createdResource, boolean includeGroups) throws Exception { - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, createdResource); - assertNotNull(load); - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - Map<String, Object> groups = (Map<String, Object>) topology_template.get("groups"); - if (includeGroups) { - assertNotNull(groups); - List<GroupDefinition> groupsOrigin = createdResource.getGroups(); - - assertEquals("Validate groups size", groupsOrigin.size(), groups.size()); - for (GroupDefinition group : groupsOrigin) { - Map<String, Object> groupTosca = (Map<String, Object>) groups.get(group.getName()); - assertNotNull(groupTosca); - - Map<String, Object> metadata = (Map<String, Object>) groupTosca.get("metadata"); - assertNotNull(metadata); - - String invariantUUID; - String name; - String UUID; - String version; - Map<String, Object> properties = (Map<String, Object>) groupTosca.get("properties"); - - if (group.getType().equals(Constants.DEFAULT_GROUP_VF_MODULE)) { - invariantUUID = (String) metadata.get("vfModuleModelInvariantUUID"); - name = (String) metadata.get("vfModuleModelName"); - UUID = (String) metadata.get("vfModuleModelUUID"); - version = (String) metadata.get("vfModuleModelVersion"); - assertNotNull(properties); - - validateVfModuleProperties(createdResource, group, properties); - } else { - invariantUUID = (String) metadata.get("invariantUUID"); - name = (String) metadata.get("name"); - UUID = (String) metadata.get("UUID"); - version = (String) metadata.get("version"); - assertNull(properties); - - } - assertEquals("Validate InvariantUUID", group.getInvariantUUID(), invariantUUID); - assertEquals("Validate name", group.getName(), name); - assertEquals("Validate UUID", group.getGroupUUID(), UUID); - assertEquals("Validate version", group.getVersion(), version); - } - } else { - assertEquals(null, groups); - } - } - - private void validateVfModuleProperties(Resource createdResource, GroupDefinition group, Map<String, Object> properties) { - // vf_module_type - String vf_module_type = (String) properties.get("vf_module_type"); - List<GroupProperty> props = group.convertToGroupProperties(); - - GroupProperty isBaseProp = getGroupPropertyByName(group, Constants.IS_BASE); - assertNotNull(isBaseProp); - - String value = isBaseProp.getValue() == null ? isBaseProp.getDefaultValue() : isBaseProp.getValue(); - boolean bvalue = Boolean.parseBoolean(value); - if (bvalue) { - assertEquals("Validate vf_module_type", "Base", vf_module_type); - } else { - assertEquals("Validate vf_module_type", "Expansion", vf_module_type); - } - - // vf_module_description - String vf_module_description = (String) properties.get("vf_module_description"); - assertEquals("Validate vf_module_description", group.getDescription(), vf_module_description); - - // volume_group - Boolean volume_group = (Boolean) properties.get("volume_group"); - boolean isVolume = false; - List<String> artifactsList = group.getArtifacts(); - List<ArtifactDefinition> artifacts = new ArrayList<>(); - if (artifactsList != null && !artifactsList.isEmpty()) { - ArtifactDefinition masterArtifact = findMasterArtifact(createdResource.getDeploymentArtifacts(), artifacts, artifactsList); - if (masterArtifact.getArtifactType().equalsIgnoreCase(ArtifactTypeEnum.HEAT_VOL.getType())) { - isVolume = true; - } - } - assertEquals("Validate volume_group", isVolume, volume_group); - - // min_vf_module_instances - Integer min_vf_module_instances = (Integer) properties.get("min_vf_module_instances"); - GroupProperty minInstProp = getGroupPropertyByName(group, "min_vf_module_instances"); - assertNotNull(minInstProp); - assertEquals("Validate min_vf_module_instances", minInstProp.getValue(), min_vf_module_instances.toString()); - - // vf_module_label - String vf_module_label = (String) properties.get("vf_module_label"); - GroupProperty labelProp = getGroupPropertyByName(group, "vf_module_label"); - assertNotNull(labelProp); - assertEquals("Validate vf_module_label", labelProp.getValue(), vf_module_label); - - // vf_module_label - Integer initial_count = (Integer) properties.get("initial_count"); - GroupProperty initCountProp = getGroupPropertyByName(group, "initial_count"); - assertNotNull(initCountProp); - assertEquals("Validate initial_count", initCountProp.getValue(), initial_count.toString()); - - // max_vf_module_instances - Integer max_vf_module_instances = (Integer) properties.get("max_vf_module_instances"); - GroupProperty maxInstProp = getGroupPropertyByName(group, "max_vf_module_instances"); - assertNotNull(maxInstProp); - if (max_vf_module_instances != null) { - assertEquals("Validate max_vf_module_instances", maxInstProp.getValue(), max_vf_module_instances.toString()); - } else { - assertEquals("Validate max_vf_module_instances", maxInstProp.getValue(), max_vf_module_instances); - } - } - - private GroupProperty getGroupPropertyByName(GroupDefinition group, String name) { - List<GroupProperty> props = group.convertToGroupProperties(); - for (GroupProperty prop : props) { - if (prop.getName().equals(name)) { - return prop; - } - } - return null; - } - - @Test(enabled = true) - public void exportCsarInputsTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csar_1"); - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, createdResource); - assertNotNull(load); - - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - - Map<String, Object> inputs = (Map<String, Object>) topology_template.get("inputs"); - assertNotNull(inputs); - - List<InputDefinition> inputsFromResource = createdResource.getInputs(); - assertEquals("validate inputs size", inputsFromResource.size(), inputs.size()); - for (InputDefinition inputDef : inputsFromResource) { - Map<String, Object> inputInFile = (Map<String, Object>) inputs.get(inputDef.getName()); - assertNotNull(inputInFile); - validateInput(inputDef, inputInFile); - } - List<ComponentInstance> componentInstances = createdResource.getComponentInstances(); - Map<String, List<ComponentInstanceProperty>> componentInstancesProperties = createdResource.getComponentInstancesProperties(); - Map<String, Object> node_templates = (Map<String, Object>) topology_template.get("node_templates"); - assertNotNull(node_templates); - - JsonParser jsonParser = new JsonParser(); - - for (Entry<String, List<ComponentInstanceProperty>> entry : componentInstancesProperties.entrySet()) { - - Optional<ComponentInstance> findFirst = componentInstances.stream().filter(ci -> ci.getUniqueId().equals(entry.getKey())).findFirst(); - assertTrue(findFirst.isPresent()); - String resourceName = findFirst.get().getName(); - Map<String, Object> instance = (Map<String, Object>) node_templates.get(resourceName); - assertNotNull(instance); - Map<String, Object> properties = (Map<String, Object>) instance.get("properties"); - - for (ComponentInstanceProperty cip : entry.getValue()) { - if (cip.getValueUniqueUid() != null && !cip.getValueUniqueUid().isEmpty()) { - assertNotNull(properties); - if (cip.getValue().contains("get_input")) { - Object prop = properties.get(cip.getName()); - assertNotNull(prop); - - Gson gson = new Gson(); - String json = gson.toJson(prop); - assertEquals("validate json property", cip.getValue(), json); - } - - } - } - - } - - } - - @Test - public void importExportCsarWithJsonPropertyType() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "jsonPropertyTypeTest.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String rootPath = System.getProperty("user.dir"); - Path path = null; - byte[] data = null; - String payloadData = null; - path = Paths.get(rootPath + "/src/test/resources/CI/csars/jsonPropertyTypeTest.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setCsarUUID(payloadName); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - ComponentInstance pmaaServer = resource.getComponentInstances().stream().filter(p -> p.getName().equals("pmaa_server_0")).findAny().get(); - ComponentInstanceProperty jsonProp = resource.getComponentInstancesProperties().get(pmaaServer.getUniqueId()).stream().filter(p -> p.getType().equals(ToscaPropertyType.JSON.getType())).findAny().get(); - String jsonValue = "{\"pmaa.sb_nic\":{\"address\":{\"get_input\":\"pmaa_dpu_fixed_ip\"},\"cidr\":{\"get_input\":\"pmaa_dpu_cidr\"},\"gateway\":{\"get_input\":\"pmaa_dpu_gateway\"}}}"; - assertEquals(jsonProp.getValue(), jsonValue); - // download and compare - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, resource); - assertNotNull(load); - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - Map<String, Object> nodes = (Map<String, Object>) topology_template.get("node_templates"); - assertNotNull(nodes); - Map<String, Object> pmaaServerObj = (Map<String, Object>) nodes.get("pmaa_server_0"); - assertNotNull(pmaaServerObj); - Map<String, Object> props = (Map<String, Object>) pmaaServerObj.get("properties"); - assertNotNull(props); - Map<String, Object> jsonPropObj = (Map<String, Object>) props.get("metadata"); - assertNotNull(jsonPropObj); - Gson gson = new Gson(); - String json = gson.toJson(jsonPropObj); - assertEquals(json, jsonValue); - } - - @Test(enabled = true) - public void exportServiceInputValue() throws Exception { - // 1 create vf as certified - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csar_1"); - RestResponse checkinState = LifecycleRestUtils.changeComponentState(createdResource, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - - // 2 create service - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // 3 create vf instance in service - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(createdResource); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - // 4 download tosca template - Map<String, Object> tosca = downloadAndParseToscaTemplate(sdncModifierDetails, service); - assertNotNull(tosca); - Map<String, Object> topology_template = (Map<String, Object>) tosca.get("topology_template"); - assertNotNull(topology_template); - - // 5 validate no inputs in service - Map<String, Object> inputs = (Map<String, Object>) tosca.get("inputs"); - assertNull(inputs); - - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - ComponentInstance vfi = componentInstances.get(0); - - // 6 add instance inputs in service - RestResponse getComponentInstanceInputsResponse = InputsRestUtils.getComponentInstanceInputs(service, vfi); - BaseValidationUtils.checkSuccess(getComponentInstanceInputsResponse); - List<ComponentInstancePropInput> instanceInputs = new Gson().fromJson(getComponentInstanceInputsResponse.getResponse(), new TypeToken<ArrayList<ComponentInstancePropInput>>() { - }.getType()); - // Take only the 2 first inputs - List<ComponentInstancePropInput> inputsToAdd = instanceInputs.stream().limit(2).collect(Collectors.toList()); - - // 7 Build component instances input map to add to server - ComponentInstInputsMap buildComponentInstInputsMap = buildComponentInstInputsMap(vfi.getUniqueId(), inputsToAdd); - RestResponse addInputResponse = InputsRestUtils.addInput(service, buildComponentInstInputsMap, UserRoleEnum.DESIGNER); - BaseValidationUtils.checkSuccess(addInputResponse); - - // 8 validate inputs in service - // 8.1 download tosca template - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - tosca = downloadAndParseToscaTemplate(sdncModifierDetails, service); - assertNotNull(tosca); - topology_template = (Map<String, Object>) tosca.get("topology_template"); - assertNotNull(topology_template); - - // 8.2 validate inputs in service - inputs = (Map<String, Object>) topology_template.get("inputs"); - assertNotNull(inputs); - assertEquals(2, inputs.size()); - - // validate created inputs vs inputs in Tosca inputs section - final Map<String, Object> inputsFinal = inputs; - buildComponentInstInputsMap.getComponentInstanceInputsMap().values().forEach(listPerInstance -> { - listPerInstance.forEach(input -> { - Map<String, Object> inputInMap = (Map<String, Object>) inputsFinal.get(input.getName()); - assertNotNull(inputInMap); - }); - }); - Map<String, List<ComponentInstanceInput>> componentInstancesInputs = service.getComponentInstancesInputs(); - - // validate created inputs vs inputs in Tosca instance input value - List<ComponentInstanceInput> vfiInputs = componentInstancesInputs.get(vfi.getUniqueId()); - assertNotNull(vfiInputs); - assertEquals(2, vfiInputs.size()); - - Map<String, Object> node_templates = (Map<String, Object>) topology_template.get("node_templates"); - assertNotNull(node_templates); - - Map<String, Object> instance = (Map<String, Object>) node_templates.get(vfi.getName()); - assertNotNull(instance); - Map<String, Object> properties = (Map<String, Object>) instance.get("properties"); - assertNotNull(properties); - - vfiInputs.forEach(vfiInput -> { - Map<String, Object> inputPropValueInTosca = (Map<String, Object>) properties.get(vfiInput.getName()); - assertNotNull(inputPropValueInTosca); - String instaneInputName = (String) inputPropValueInTosca.get("get_input"); - assertNotNull(instaneInputName); - Map<String, Object> inputInMap = (Map<String, Object>) inputsFinal.get(instaneInputName); - assertNotNull(inputInMap); - }); - - } - - @Test(enabled = true) - public void exportComponentInstancesTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Resource createdResource = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, createdResource); - assertNotNull(load); - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - - Map<String, Object> node_templates = (Map<String, Object>) topology_template.get("node_templates"); - assertNotNull(node_templates); - - RestResponse getResource = ResourceRestUtils.getResource(createdResource.getUniqueId()); - BaseRestUtils.checkSuccess(getResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - List<ComponentInstance> componentInstances = resource.getComponentInstances(); - - assertEquals(componentInstances.size(), node_templates.size()); - - for (ComponentInstance ci : componentInstances) { - Map<String, Object> instance = (Map<String, Object>) node_templates.get(ci.getName()); - assertNotNull(instance); - Map<String, Object> metadata = (Map<String, Object>) instance.get("metadata"); - assertNotNull(metadata); - String customizationUUD = (String) metadata.get("customizationUUID"); - assertTrue(ci.getCustomizationUUID().equals(customizationUUD)); - } - - } - - @SuppressWarnings("unchecked") - @Test - public void extendNodeTemplateWithDefaultPropertyValuesTest() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String payloadCsarName = "ToscaTemplateCsar.csar"; - Path path = Paths.get(rootPath + CSARS_PATH + "ToscaTemplateCsar.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadCsarName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource createdResource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - Map<String, Object> load = downloadAndParseToscaTemplate(sdncModifierDetails, createdResource); - assertNotNull(load); - - Map<String, Object> nodeTemplateProperties = findNodeTemplateProperties(load, "custom_vl"); - - assertTrue(nodeTemplateProperties != null); - assertTrue(nodeTemplateProperties.get("dhcp_enabled").equals(true)); - assertTrue(nodeTemplateProperties.get("ip_version").equals(4)); - assertTrue(nodeTemplateProperties.get("vl_name").equals("customvl")); - } - - private Map<String, Object> findNodeTemplateProperties(Map<String, Object> load, String riName) { - // find properties of node template (RI) - return findToscaElement( - // find node template (RI) by name - findToscaElement( - // find node templates - findToscaElement( - // find topology template - findToscaElement(load, "topology_template"), "node_templates"), - riName), - "properties"); - } - - @SuppressWarnings("unchecked") - private Map<String, Object> findToscaElement(Map<String, Object> load, String elementName) { - return (Map<String, Object>) load.get(elementName); - } - - // ---------------------------------------- - private void validateInput(InputDefinition inputDef, Map<String, Object> inputInFile) { - assertEquals("validate input type", inputDef.getType(), (String) inputInFile.get("type")); - - if (inputDef.getDefaultValue() == null) { - assertNull(inputInFile.get("default")); - } else { - assertNotNull(inputInFile.get("default")); - String value = inputDef.getDefaultValue().replace("\"", ""); - value = value.replace(" ", ""); - String expValue = inputInFile.get("default").toString().replace(" ", ""); - assertEquals("validate input default", value, expValue); - } - assertEquals("validate input description", inputDef.getDescription(), (String) inputInFile.get("description")); - } - - public ArtifactDefinition findMasterArtifact(Map<String, ArtifactDefinition> deplymentArtifact, List<ArtifactDefinition> artifacts, List<String> artifactsList) { - for (String artifactUid : artifactsList) { - for (Entry<String, ArtifactDefinition> entry : deplymentArtifact.entrySet()) { - ArtifactDefinition artifact = entry.getValue(); - if (artifactUid.equalsIgnoreCase(artifact.getUniqueId())) { - artifacts.add(artifact); - } - - } - } - ArtifactDefinition masterArtifact = null; - for (ArtifactDefinition artifactInfo : artifacts) { - String atrifactType = artifactInfo.getArtifactType(); - if (atrifactType.equalsIgnoreCase(ArtifactTypeEnum.HEAT_VOL.getType()) || atrifactType.equalsIgnoreCase(ArtifactTypeEnum.HEAT_NET.getType())) { - masterArtifact = artifactInfo; - continue; - } - if (atrifactType.equalsIgnoreCase(ArtifactTypeEnum.HEAT.getType())) { - masterArtifact = artifactInfo; - break; - } - } - return masterArtifact; - } - - private ComponentInstInputsMap buildComponentInstInputsMap(String addToInput, List<ComponentInstancePropInput> inputs) { - Map<String, List<ComponentInstancePropInput>> map = new HashMap<>(); - map.put(addToInput, inputs); - ComponentInstInputsMap componentInstInputsMap = new ComponentInstInputsMap(); - componentInstInputsMap.setComponentInstanceInputsMap(map); - return componentInstInputsMap; - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/FilteredDataByParamsComponentServletTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/FilteredDataByParamsComponentServletTest.java deleted file mode 100644 index c1b3181600..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/FilteredDataByParamsComponentServletTest.java +++ /dev/null @@ -1,135 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertEquals; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.ui.model.UiComponentDataTransfer; -import org.openecomp.sdc.be.ui.model.UiResourceDataTransfer; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.annotations.Test; - - - -public class FilteredDataByParamsComponentServletTest extends ComponentBaseTest{ - - private static final String CSAR_NAME = "LDSA1_with_inputs.csar"; - private static final String COMPONENT_INSTANCES = "include=componentInstances"; - private static final String COMPONENT_INSTANCES_RELATIONS = "include=componentInstancesRelations"; - private static final String DEPLOYMENT_ARTIFACTS = "include=deploymentArtifacts"; - private static final String INFORMATIONAL_ARTIFACTS = "include=artifacts"; - private static final String METADATA = "include=metadata"; - public static TestName name = new TestName(); - - - - protected User designerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - public FilteredDataByParamsComponentServletTest() { - super(name, ImportCsarResourceTest.class.getName()); - } - - - @Test - public void getComponentInstancesAndComponentInstancesRelationsTest() throws Exception { - Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME); - List<String> parameters = new ArrayList<>(); - parameters.add(COMPONENT_INSTANCES); - parameters.add(COMPONENT_INSTANCES_RELATIONS); - // create UiComponentDataTransfer and parse the ComponentInstancesRelations into it - RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters); - UiComponentDataTransfer uiComponentWithComponentInstancesAndRelations = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse() , UiComponentDataTransfer.class); - - uiComponentWithComponentInstancesAndRelations.getComponentInstances().stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - resource.getComponentInstances().stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - - for (int i = 0 ; i < resource.getComponentInstances().size() ; i++){ - assertEquals(uiComponentWithComponentInstancesAndRelations.getComponentInstances().get(i).getUniqueId() ,resource.getComponentInstances().get(i).getUniqueId()); - } - assertEquals(uiComponentWithComponentInstancesAndRelations.getComponentInstancesRelations().size() , resource.getComponentInstancesRelations().size()); - } - - - @Test - public void getComponentDeploymentAndInformationalArtifacts() throws Exception { - Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME); - List<String> parameters = new ArrayList<>(); - parameters.add(DEPLOYMENT_ARTIFACTS); - parameters.add(INFORMATIONAL_ARTIFACTS); - - // create new UiComponentData transfer and parse the artifacts into it - RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters); - UiComponentDataTransfer uiComponentWithArtifacts = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse() , UiComponentDataTransfer.class); - - List<ArtifactDefinition> deploymentArtifactsFromResource = new ArrayList<ArtifactDefinition>(resource.getDeploymentArtifacts().values()); - List<ArtifactDefinition> deploymentArtifactsFromUiComponent = new ArrayList<ArtifactDefinition>(uiComponentWithArtifacts.getDeploymentArtifacts().values()); - List<ArtifactDefinition> informationalArtifactsFromResource = new ArrayList<ArtifactDefinition>(resource.getArtifacts().values()); - List<ArtifactDefinition> informationalArtifactsFromUiComponent = new ArrayList<ArtifactDefinition>(uiComponentWithArtifacts.getArtifacts().values()); - - deploymentArtifactsFromResource.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - deploymentArtifactsFromUiComponent.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - informationalArtifactsFromResource.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - informationalArtifactsFromUiComponent.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId())); - - for (int i = 0 ; i < deploymentArtifactsFromResource.size() ; i++){ - assertEquals(deploymentArtifactsFromResource.get(i).getUniqueId() , deploymentArtifactsFromUiComponent.get(i).getUniqueId()); - } - - for (int i = 0 ; i < informationalArtifactsFromResource.size() ; i++){ - assertEquals(informationalArtifactsFromResource.get(i).getUniqueId() , informationalArtifactsFromUiComponent.get(i).getUniqueId()); - } - } - - - @Test - public void getComponentMetadataTest() throws Exception { - - Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME); - List<String> parameters = new ArrayList<>(); - parameters.add(METADATA); - - // create new UiResourceDataTransfer and parse the metadata into it - RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters); - UiResourceDataTransfer uiResourceWithMetadata = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse(), UiResourceDataTransfer.class); - - // assert that the metadata is equal - assertEquals(uiResourceWithMetadata.getMetadata().getName(), resource.getName()); - assertEquals(uiResourceWithMetadata.getMetadata().getVersion() , resource.getVersion()); - assertEquals(uiResourceWithMetadata.getMetadata().getUniqueId() , resource.getUniqueId()); - assertEquals(uiResourceWithMetadata.getMetadata().getUUID(), resource.getUUID()); - } - - - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportCsarResourceTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportCsarResourceTest.java deleted file mode 100644 index f3b134f6a9..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportCsarResourceTest.java +++ /dev/null @@ -1,1829 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang.WordUtils; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.GroupDefinition; -import org.openecomp.sdc.be.model.GroupProperty; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.GroupRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ImportRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.util.ValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class ImportCsarResourceTest extends ComponentBaseTest { - private static Logger log = LoggerFactory.getLogger(ImportCsarResourceTest.class.getName()); - @Rule - public static TestName name = new TestName(); - private static final String CSARS_PATH = "/src/test/resources/CI/csars/"; - Gson gson = new Gson(); - - public ImportCsarResourceTest() { - super(name, ImportCsarResourceTest.class.getName()); - } - - private String buildAssertMessage(String expectedString, String actualString) { - return String.format("expected is : %s , actual is: %s", expectedString, actualString); - } - - /** - * - * User Story : US640615 [BE] - Extend create VF API with Import TOSCA CSAR - */ - - @Test(enabled = true) - public void createResourceFromCsarHappy() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("AF7F231969C5463F9C968570070E8877"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void emptyStringInCsarUUIDFieldTest() throws Exception { - String emptyString = ""; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(emptyString); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(null, resource.getComponentInstances()); - - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(emptyString, resource.getCsarUUID()), resource.getCsarUUID() == emptyString); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(emptyString, getResource.getCsarUUID()), getResource.getCsarUUID() == emptyString); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void createResourceFromScratchTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(null, resource.getComponentInstances()); - - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(null, resource.getCsarUUID()), resource.getCsarUUID() == null); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(null, getResource.getCsarUUID()), getResource.getCsarUUID() == null); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void fileNotCsarTypeTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("valid_vf_zip"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_NOT_FOUND.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void missingToscaMetadataFolderTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("toscaFolderNotExists"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void missingToscaMetaFileTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("toscaMetaFileNotExists"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void toscaMetaFileOutsideTheFolderTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("toscaMetaOutsideTheFolder"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void caseSensitiveTest_1() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("caseSensitiveTest_1"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void caseSensitiveTest_2() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("caseSensitiveTest_2"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void missingOneLineInToscaMetaFileTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("missingOneLineInToscaMeta"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void noCSARVersionTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("noCSARVersion"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void noCreatedByValueTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("noCreatedByValue"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void noEntryDefinitionsValueTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("noEntryDefinitionsValue"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void noTOSCAMetaFileVersionValueTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("noTOSCAMetaFileVersionValue"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void invalidCsarVersionInMetaFileTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("invalidCsarVersion"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - - resourceDetails.setCsarUUID("invalidCsarVersion2"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - - resourceDetails.setCsarUUID("invalidCsarVersion3"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - - resourceDetails.setCsarUUID("invalidCsarVersion4"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - - resourceDetails.setCsarUUID("invalidCsarVersion5"); - createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - - } - - @Test(enabled = true) - public void validCsarVersionInMetaFileTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("validCsarVersion"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void underscoreInToscaMetaFileVersionNameTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("underscoreInsteadOfDash"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void missingEntryDefintionInMetaFileTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("missingEntryDefintionPair"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = false) - public void noNewLineAfterBLock0Test() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("noNewLineAfterBLock0"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void moreThanOneYamlFileTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("moreThenOneYamlFile"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void moreThanOneMetaFileTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("moreThanOneMetaFile"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void csarNotContainsYamlAndMetaFilesTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("notContainYamlAndMetaFiles"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void csarNotContainsYamlFileTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("notContainYamlFile"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - variables.add("Definitions/tosca_mock_vf.yaml"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.YAML_NOT_FOUND_IN_CSAR.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void missingCsarFileTest() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("abc"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_NOT_FOUND.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void longNamesInToscaMetaFileTest_1() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("longNamesInToscaMetaFile1"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void longNamesInToscaMetaFileTest_2() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("longNamesInToscaMetaFile2"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void longNamesInToscaMetaFileTest_3() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("longNamesInToscaMetaFile3"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void longNamesInToscaMetaFileTest_4() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("longNamesInToscaMetaFile4"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void longNamesInToscaMetaFileTest_5() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("longNamesInToscaMetaFile5"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - // possible to have more than four lines in block 0 - // @Test (enabled = true) - public void fiveLinesAsBlock0Test() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - resourceDetails.setCsarUUID("fiveLinesAsBlock0"); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - List<String> variables = new ArrayList<String>(); - variables.add(resourceDetails.getCsarUUID()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.CSAR_INVALID_FORMAT.name(), variables, createResource.getResponse()); - } - - @Test(enabled = true) - public void lifecycleChangingToResourceFromCsarTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("valid_vf"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertTrue("0.1".equals(resource.getVersion())); - assertTrue(LifeCycleStatesEnum.CHECKOUT.getComponentState().equals(resource.getLifecycleState().toString())); - - String designerUserId = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER).getUserId(); - String testerUserId = ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getUserId(); - String csarUniqueId = resourceDetails.getUniqueId(); - assertNotNull(csarUniqueId); - - RestResponse lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUserId, LifeCycleStatesEnum.STARTCERTIFICATION); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUserId, LifeCycleStatesEnum.CERTIFY); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - - resource = ResponseParser.parseToObjectUsingMapper(lifecycleChangeResponse.getResponse(), Resource.class); - Map<String, String> allVersions = resource.getAllVersions(); - assertEquals(2, allVersions.keySet().size()); - assertEquals(2, allVersions.values().size()); - Set<String> keySet = allVersions.keySet(); - assertTrue(keySet.contains("1.0")); - assertTrue(keySet.contains("1.1")); - } - - @Test(enabled = true) - public void csarWithJsonPromEnvTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VSPPackageJsonProp.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - } - - @Test(enabled = true) - public void uploadArtifactToResourceFromCsarTest() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("valid_vf"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - User designer = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultArtifact("firstArtifact"); - String firstArtifactLabel = artifactDetails.getArtifactLabel(); - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, designer, resourceDetails.getUniqueId()); - ArtifactRestUtils.checkSuccess(addInformationalArtifactToResource); - RestResponse getResourceResponse = ResourceRestUtils.getResource(resourceDetails.getUniqueId()); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - Map<String, ArtifactDefinition> informationalArtifacts = resource.getArtifacts(); - assertEquals(1, informationalArtifacts.keySet().size()); - Set<String> keySet = informationalArtifacts.keySet(); - assertTrue(keySet.contains(firstArtifactLabel.toLowerCase())); - Collection<ArtifactDefinition> values = informationalArtifacts.values(); - assertEquals(1, values.size()); - Iterator<ArtifactDefinition> iterator = values.iterator(); - while (iterator.hasNext()) { - ArtifactDefinition actualArtifact = iterator.next(); - assertTrue(firstArtifactLabel.equals(actualArtifact.getArtifactDisplayName())); - } - - RestResponse lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designer.getUserId(), LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designer.getUserId(), LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - - ArtifactReqDetails artifactDetails2 = ElementFactory.getDefaultArtifact("secondArtifact"); - artifactDetails2.setArtifactName("secondArtifact"); - addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails2, designer, resourceDetails.getUniqueId()); - ArtifactRestUtils.checkSuccess(addInformationalArtifactToResource); - - getResourceResponse = ResourceRestUtils.getResource(resourceDetails.getUniqueId()); - resource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - informationalArtifacts = resource.getArtifacts(); - assertEquals(2, informationalArtifacts.keySet().size()); - keySet = informationalArtifacts.keySet(); - assertTrue(keySet.contains(firstArtifactLabel.toLowerCase())); - assertTrue(keySet.contains(artifactDetails2.getArtifactLabel().toLowerCase())); - values = informationalArtifacts.values(); - assertEquals(2, values.size()); - ArtifactDefinition[] actualArtifacts = values.toArray(new ArtifactDefinition[2]); - assertTrue(firstArtifactLabel.equals(actualArtifacts[0].getArtifactDisplayName())); - assertTrue(artifactDetails2.getArtifactLabel().equals(actualArtifacts[1].getArtifactDisplayName())); - } - - /* - * // @Test (enabled = true) public void createUpdateImportResourceFromCsarArtifactsWereNotChangedTest() throws Exception { // User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); // //back original scar RestResponse - * copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); BaseRestUtils.checkSuccess(copyRes); - * - * // resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); // RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); resourceDetails.setName("test5"); - * resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); resourceDetails.setCsarVersion("1"); // String invariantUUID = resource.getInvariantUUID(); // // RestResponse changeResourceState = - * LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); // assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - * - * // BaseRestUtils.checkSuccess(copyRes); // //change name (temporary) resourceDetails.setCsarVersion("2"); resourceDetails.setName("test6"); createResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - * resourceDetails.getUniqueId()); Resource updatedResource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); Map<String, ArtifactDefinition> updatedArtifacts = updatedResource.getDeploymentArtifacts(); for - * (Entry<String, ArtifactDefinition> artifactEntry : resource.getDeploymentArtifacts().entrySet()) { if (updatedArtifacts.containsKey(artifactEntry.getKey())) { ArtifactDefinition currArt = updatedArtifacts.get(artifactEntry.getKey()); - * assertEquals(currArt.getArtifactVersion(), artifactEntry.getValue().getArtifactVersion()); assertEquals(currArt.getArtifactUUID(), artifactEntry.getValue().getArtifactUUID()); assertEquals(currArt.getArtifactChecksum(), - * artifactEntry.getValue().getArtifactChecksum()); } } // resourceDetails = ElementFactory.getDefaultResource(); // resourceDetails.setName("test5"); // resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); } - */ - - @Test(enabled = true) - public void createImportResourceFromCsarDissotiateArtifactFromGroupTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - - // create new resource from Csar - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - String invariantUUID = resource.getInvariantUUID(); - - // add artifact from metadata (resource metadata should be updated) - // RestResponse addInformationalArtifactToResource = - // ArtifactRestUtils.addInformationalArtifactToResource(ElementFactory.getDefaultArtifact(), - // sdncModifierDetails, resourceDetails.getUniqueId()); - // ArtifactRestUtils.checkSuccess(addInformationalArtifactToResource); - resourceDetails.setName("test4"); - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(invariantUUID, resource.getInvariantUUID()); - - // wrong RI (without node types, resource shouldn't be updated) - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_dissociate.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - // change name (temporary) - resourceDetails.setName("test4"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(invariantUUID, resource.getInvariantUUID()); - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - @Test(enabled = true) - public void createImportResourceFromCsarNewgroupTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - - // create new resource from Csar - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - String invariantUUID = resource.getInvariantUUID(); - - // update scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_UpdateToscaAndArtifacts.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails.setName("test2"); - // change resource metaData (resource should be updated) - resourceDetails.setDescription("It is new description bla bla bla"); - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - assertEquals(invariantUUID, resource.getInvariantUUID()); - - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - @Test(enabled = true) - public void createImportResourceFromCsarGetGroupTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // RestResponse copyRes = - // copyCsarRest(sdncModifierDetails,"VF_RI2_G4_withArtifacts_a.csar","VF_RI2_G4_withArtifacts.csar"); - - // create new resource from Csar - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("VSPPackage"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - String invariantUUID = resource.getInvariantUUID(); - List<GroupDefinition> groups = resource.getGroups(); - - GroupDefinition groupWithArtifact = groups.stream().filter(p -> p.getArtifacts() != null && !p.getArtifacts().isEmpty()).findFirst().get(); - - RestResponse groupRest = GroupRestUtils.getGroupById(resource, groupWithArtifact.getUniqueId(), sdncModifierDetails); - BaseRestUtils.checkSuccess(groupRest); - - GroupDefinition groupWithoutArtifact = groups.stream().filter(p -> p.getArtifacts() == null || p.getArtifacts().isEmpty()).findFirst().get(); - - groupRest = GroupRestUtils.getGroupById(resource, groupWithoutArtifact.getUniqueId(), sdncModifierDetails); - BaseRestUtils.checkSuccess(groupRest); - } - - @Test(enabled = true) - public void createImportResourceFromCsarUITest() throws Exception { - RestResponse getResource = null; - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "valid_vf.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String rootPath = System.getProperty("user.dir"); - Path path = null; - byte[] data = null; - String payloadData = null; - - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - // create new resource from Csar - resourceDetails.setCsarUUID(payloadName); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - RestResponse changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change composition (resource should be updated) - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_b.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - // change name - resourceDetails.setName("test1"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(2, resource.getComponentInstances().size()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change name - resourceDetails.setName("test2"); - // change resource metaData (resource should be updated) - resourceDetails.setDescription("It is new description bla bla bla"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(2, resource.getComponentInstances().size()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // wrong RI (without node types, resource shouldn't be updated) - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_c.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - // change name - resourceDetails.setName("test3"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.INVALID_NODE_TEMPLATE, "Definitions/tosca_mock_vf.yaml", "nodejs", "tosca.nodes.Weber"); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(null, resource); - getResource = ResourceRestUtils.getResourceByNameAndVersion(sdncModifierDetails.getUserId(), "test3", resourceDetails.getVersion()); - BaseRestUtils.checkErrorResponse(getResource, ActionStatus.RESOURCE_NOT_FOUND, "test3"); - - // create new resource from other Csar - resourceDetails = ElementFactory.getDefaultImportResource(); - path = Paths.get(rootPath + "/src/main/resources/ci/VF_RI2_G4_withArtifacts.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setName("test4"); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // wrong RI (with node types) resource shouldn't be created - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts_b.csar"); - path = Paths.get(rootPath + "/src/main/resources/ci/VF_RI2_G4_withArtifacts_b.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName("VF_RI2_G4_withArtifacts_b.csar"); - resourceDetails.setName("test5"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.INVALID_NODE_TEMPLATE, "Definitions/VF_RI2_G1.yaml", "ps04_port_0", "org.openecomp.resource.cp.nodes.heat.network.neutron.Portur"); - } - - @Test(enabled = true) - public void createUpdateImportResourceFromCsarUITest() throws Exception { - RestResponse getResource = null; - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "valid_vf.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String rootPath = System.getProperty("user.dir"); - Path path = null; - byte[] data = null; - String payloadData = null; - - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - // create new resource from Csar - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - RestResponse changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change composition and update resource - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_b.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setUniqueId(resource.getUniqueId()); - // change name - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(2, resource.getComponentInstances().size()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change name - resourceDetails.setName("test2"); - // change resource metaData (resource should be updated) - resourceDetails.setDescription("It is new description bla bla bla"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(2, resource.getComponentInstances().size()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // try to update resource with wrong RI (without node types, resource - // shouldn't be updated) - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_c.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - // change name - resourceDetails.setName("test3"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkErrorResponse(updateResource, ActionStatus.INVALID_NODE_TEMPLATE, "Definitions/tosca_mock_vf.yaml", "nodejs", "tosca.nodes.Weber"); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(null, resource); - getResource = ResourceRestUtils.getResourceByNameAndVersion(sdncModifierDetails.getUserId(), "test3", resourceDetails.getVersion()); - BaseRestUtils.checkErrorResponse(getResource, ActionStatus.RESOURCE_NOT_FOUND, "test3"); - } - - @Test(enabled = true) - public void createUpdateImportResourceFromCsarTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = null; - RestResponse getResource = null; - ResourceReqDetails resourceDetails = null; - RestResponse updateResource = null; - RestResponse createResource = null; - Resource resource = null; - RestResponse changeResourceState = null; - - // create new resource from Csar - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_a.csar", "valid_vf.csar"); - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("valid_vf.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - String invariantUUID = resource.getInvariantUUID(); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change composition and update resource - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_b.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - // change name - resourceDetails.setName("test1"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(2, resource.getComponentInstances().size()); - assertEquals(invariantUUID, resource.getInvariantUUID()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_a.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - - // change name - resourceDetails.setName("test2"); - // change resource metaData and update resource - resourceDetails.setDescription("It is new description bla bla bla"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - assertEquals(invariantUUID, resource.getInvariantUUID()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_a.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - - // try to update resource with wrong RI (without node types, resource - // shouldn't be updated) - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_c.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - // change name (temporary) - resourceDetails.setName("test3"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkErrorResponse(updateResource, ActionStatus.INVALID_NODE_TEMPLATE, "Definitions/tosca_mock_vf.yaml", "nodejs", "tosca.nodes.Weber"); - - getResource = ResourceRestUtils.getResourceByNameAndVersion(sdncModifierDetails.getUserId(), "test3", resourceDetails.getVersion()); - BaseRestUtils.checkErrorResponse(getResource, ActionStatus.RESOURCE_NOT_FOUND, "test3"); - getResource = ResourceRestUtils.getResourceByNameAndVersion(sdncModifierDetails.getUserId(), "test2", resourceDetails.getVersion()); - BaseRestUtils.checkSuccess(getResource); - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_a.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - - // create new resource from Csar - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // scar with wrong RI - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_b.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - // wrong RI (with node types) resource shouldn't be created - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkErrorResponse(updateResource, ActionStatus.INVALID_NODE_TEMPLATE, "Definitions/VF_RI2_G1.yaml", "ps04_port_0", "org.openecomp.resource.cp.nodes.heat.network.neutron.Portur"); - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - @Test(enabled = true) - public void createUpdateImportResourceFromCsarWithArtifactsTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = null; - ResourceReqDetails resourceDetails = null; - RestResponse updateResource = null; - RestResponse createResource = null; - Resource resource = null; - RestResponse changeResourceState = null; - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts.csar"); - resourceDetails.setCsarVersion("1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - // create new resource from Csar - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - List<String> requiredArtifactsOld = resource.getDeploymentArtifacts().get("heat5").getRequiredArtifacts(); - assertTrue(requiredArtifactsOld != null && !requiredArtifactsOld.isEmpty() && requiredArtifactsOld.size() == 3); - assertTrue(requiredArtifactsOld.contains("hot-nimbus-pcm-volumes_v1.0.yaml")); - assertTrue(requiredArtifactsOld.contains("nested-pcm_v1.0.yaml")); - assertTrue(requiredArtifactsOld.contains("hot-nimbus-oam-volumes_v1.0.yaml")); - - // update scar with new artifacts - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_updated.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - resourceDetails.setCsarVersion("2"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - - List<String> requiredArtifactsNew = resource.getDeploymentArtifacts().get("heat5").getRequiredArtifacts(); - assertTrue(requiredArtifactsNew != null && !requiredArtifactsNew.isEmpty() && requiredArtifactsNew.size() == 3); - assertTrue(requiredArtifactsNew.contains("hot-nimbus-swift-container_v1.0.yaml")); - assertTrue(requiredArtifactsNew.contains("hot-nimbus-oam-volumes_v1.0.yaml")); - assertTrue(requiredArtifactsNew.contains("nested-oam_v1.0.yaml")); - - // back original scar - copyRes = copyCsarRest(sdncModifierDetails, "VF_RI2_G4_withArtifacts_a.csar", "VF_RI2_G4_withArtifacts.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - @Test(enabled = true) - public void createUpdateImportWithPropertiesFromCsarUITest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "valid_vf.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String rootPath = System.getProperty("user.dir"); - Path path = null; - byte[] data = null; - String payloadData = null; - - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - // create new resource from Csar - resourceDetails.setCsarUUID(payloadName); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - RestResponse changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change composition (add new RI with specified property values) - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_d.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - // change name - resourceDetails.setName("test1"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(6, resource.getComponentInstances().size()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - // change composition (add new specified property values to existing RI) - path = Paths.get(rootPath + "/src/main/resources/ci/valid_vf_f.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - // change name - resourceDetails.setName("test2"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(6, resource.getComponentInstances().size()); - - } - - public static RestResponse copyCsarRest(User sdncModifierDetails, String sourceCsarUuid, String targetCsarUuid) throws Exception { - - Config config = Utils.getConfig(); - String url = String.format(Urls.COPY_CSAR_USING_SIMULATOR, config.getCatalogBeHost(), config.getCatalogBePort(), sourceCsarUuid, targetCsarUuid); - String userId = sdncModifierDetails.getUserId(); - Map<String, String> headersMap = prepareHeadersMap(userId); - HttpRequest http = new HttpRequest(); - - RestResponse copyCsarResponse = http.httpSendPost(url, "dummy", headersMap); - if (copyCsarResponse.getErrorCode() != 200) { - return null; - } - return copyCsarResponse; - - } - - public static RestResponse getCsarRest(User sdncModifierDetails, String sourceCsarUuid) throws Exception { - - Config config = Utils.getConfig(); - String url = String.format(Urls.GET_CSAR_USING_SIMULATOR, config.getCatalogBeHost(), config.getCatalogBePort(), sourceCsarUuid); - String userId = sdncModifierDetails.getUserId(); - Map<String, String> headersMap = prepareHeadersMap(userId); - HttpRequest http = new HttpRequest(); - - RestResponse copyCsarResponse = http.httpSendGet(url, headersMap); - if (copyCsarResponse.getErrorCode() != 200) { - return null; - } - return copyCsarResponse; - - } - - @Test(enabled = true) - public void updateResourceFromCsarHappy() throws Exception { - RestResponse copyRes = copyCsarRest(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), "valid_vf_a.csar", "valid_vf.csar"); - BaseRestUtils.checkSuccess(copyRes); - // create - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("valid_vf"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getResource(resource.getUniqueId()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - - } - - @Test(enabled = true) - public void createResourceFromCsarWithGroupsHappy() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroups"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - assertEquals("verify there are 2 groups", 2, resource.getGroups().size()); - - Map<String, String> compNameToUniqueId = resource.getComponentInstances().stream().collect(Collectors.toMap(p -> p.getName(), p -> p.getUniqueId())); - - // Verify 2 members on group1 - // members: [ app_server, mongo_server ] - String[] membersNameGroup1 = { "app_server", "mongo_server" }; - verifyMembersInResource(resource, compNameToUniqueId, "group1", membersNameGroup1); - // Verify 4 members on group2 - // members: [ mongo_db, nodejs, app_server, mongo_server ] - String[] membersNameGroup2 = { "app_server", "mongo_server", "mongo_db", "nodejs" }; - verifyMembersInResource(resource, compNameToUniqueId, "group2", membersNameGroup2); - - // Check OUT - resourceDetails.setUniqueId(resource.getUniqueId()); - RestResponse changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - changeResourceState = LifecycleRestUtils.changeResourceState(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - - Resource checkedOutResource = ResponseParser.parseToObjectUsingMapper(changeResourceState.getResponse(), Resource.class); - compNameToUniqueId = checkedOutResource.getComponentInstances().stream().collect(Collectors.toMap(p -> p.getName(), p -> p.getUniqueId())); - - // Verify 2 members on group1 - // members: [ app_server, mongo_server ] - verifyMembersInResource(checkedOutResource, compNameToUniqueId, "group1", membersNameGroup1); - // Verify 4 members on group2 - // members: [ mongo_db, nodejs, app_server, mongo_server ] - verifyMembersInResource(checkedOutResource, compNameToUniqueId, "group2", membersNameGroup2); - - } - - private void verifyMembersInResource(Resource resource, Map<String, String> compNameToUniqueId, String groupName, String[] membersName) { - GroupDefinition groupDefinition = resource.getGroups().stream().filter(p -> p.getName().equals(groupName)).findFirst().get(); - assertEquals("Verify number of members", membersName.length, groupDefinition.getMembers().size()); - Map<String, String> createdMembers = groupDefinition.getMembers(); - Arrays.asList(membersName).forEach(p -> { - assertTrue("check member name exist", createdMembers.containsKey(p)); - }); - - verifyMembers(createdMembers, compNameToUniqueId); - } - - @Test(enabled = true) - public void createResourceFromCsarWithGroupsAndPropertiesHappy() throws Exception { - - RestResponse importNewGroupTypeByName = ImportRestUtils.importNewGroupTypeByName("myHeatStack1", UserRoleEnum.ADMIN); - // BaseRestUtils.checkCreateResponse(importNewGroupTypeByName); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsWithProps"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - - assertEquals("verify there are 2 groups", 2, resource.getGroups().size()); - - Map<String, String> compNameToUniqueId = resource.getComponentInstances().stream().collect(Collectors.toMap(p -> p.getName(), p -> p.getUniqueId())); - - // Verify 2 members on group1 - // members: [ app_server, mongo_server ] - List<GroupDefinition> groupDefinition1 = resource.getGroups().stream().filter(p -> p.getName().equals("group1")).collect(Collectors.toList()); - assertEquals("Verify number of members", 2, groupDefinition1.get(0).getMembers().size()); - Map<String, String> createdMembers = groupDefinition1.get(0).getMembers(); - verifyMembers(createdMembers, compNameToUniqueId); - - List<GroupProperty> properties = groupDefinition1.get(0).convertToGroupProperties(); - assertEquals("Verify number of members", 2, properties.size()); - - GroupProperty heatFiles = properties.stream().filter(p -> p.getName().equals("heat_files")).findFirst().get(); - assertNotNull("check heat files not empty", heatFiles); - List<String> heatFilesValue = new ArrayList<>(); - heatFilesValue.add("heat1.yaml"); - heatFilesValue.add("heat2.yaml"); - String heatFilesJson = gson.toJson(heatFilesValue); - log.debug(heatFiles.getValue()); - assertEquals("check heat files value", heatFilesJson, heatFiles.getValue()); - - GroupProperty urlCredential = properties.stream().filter(p -> p.getName().equals("url_credential")).findFirst().get(); - assertNotNull("check heat files not empty", urlCredential); - log.debug(urlCredential.getValue()); - assertEquals("check url credential", "{\"protocol\":\"protocol1\",\"keys\":{\"keya\":\"valuea\",\"keyb\":\"valueb\"}}", urlCredential.getValue()); - } - - @Test(enabled = true) - public void createResourceFromCsarWithGroupsAndPropertyInvalidValue() throws Exception { - - RestResponse importNewGroupTypeByName = ImportRestUtils.importNewGroupTypeByName("myHeatStack1", UserRoleEnum.ADMIN); - // BaseRestUtils.checkCreateResponse(importNewGroupTypeByName); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsInvalidPropertyValue"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkStatusCode(createResource, "Check bad request error", false, 400); - - } - - @Test(enabled = true) - public void createResourceFromCsarWithGroupsAndInvalidPropertyName() throws Exception { - - RestResponse importNewGroupTypeByName = ImportRestUtils.importNewGroupTypeByName("myHeatStack1", UserRoleEnum.ADMIN); - // BaseRestUtils.checkCreateResponse(importNewGroupTypeByName); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsPropertyNotExist"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkStatusCode(createResource, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.GROUP_PROPERTY_NOT_FOUND, "url_credential111", "group1", "org.openecomp.groups.MyHeatStack1"); - - } - - @Test(enabled = true) - public void createResourceFromCsarGroupTypeNotExist() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsInvalidGroupType"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkStatusCode(createResource, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.GROUP_TYPE_IS_INVALID, "org.openecomp.groups.stamGroupType"); - - } - - @Test(enabled = true) - public void createResourceFromCsarMemberNotExist() throws Exception { - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsInvalidMember"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkStatusCode(createResource, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.GROUP_INVALID_COMPONENT_INSTANCE, "mycomp", "mygroup", ValidationUtils.normaliseComponentName(resourceDetails.getName()), "VF"); - - } - - @Test(enabled = true) - public void createResourceFromCsarMemberNotAllowed() throws Exception { - - RestResponse importNewGroupTypeByName = ImportRestUtils.importNewGroupTypeByName("myHeatStack2", UserRoleEnum.ADMIN); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csarWithGroupsNotAllowedMember"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - - BaseRestUtils.checkStatusCode(createResource, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.GROUP_INVALID_TOSCA_NAME_OF_COMPONENT_INSTANCE, "nodejs", "group1", "org.openecomp.groups.MyHeatStack2"); - - } - - @Test(enabled = true) - public void getResourceFromCsarUuidHappy() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("tam"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(6, resource.getComponentInstances().size()); - - String expectedCsarUUID = resourceDetails.getCsarUUID(); - String expectedToscaResourceName = "org.openecomp.resource.vf." + WordUtils.capitalize(resourceDetails.getName().toLowerCase()); - - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, resource.getCsarUUID()), expectedCsarUUID.equals(resource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, resource.getToscaResourceName()), expectedToscaResourceName.equals(resource.getToscaResourceName())); - - RestResponse getResourceResponse = ResourceRestUtils.getLatestResourceFromCsarUuid(resource.getCsarUUID()); - Resource getResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), Resource.class); - assertTrue("csarUUID : " + buildAssertMessage(expectedCsarUUID, getResource.getCsarUUID()), expectedCsarUUID.equals(getResource.getCsarUUID())); - assertTrue("toscaResourceName : " + buildAssertMessage(expectedToscaResourceName, getResource.getToscaResourceName()), expectedToscaResourceName.equals(getResource.getToscaResourceName())); - } - - @Test(enabled = true) - public void getResourceFromCsarResourceNotFound() throws Exception { - String csarUUID = "tam"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - - RestResponse resResponse = ResourceRestUtils.getLatestResourceFromCsarUuid(csarUUID); - - BaseRestUtils.checkStatusCode(resResponse, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(resResponse, ActionStatus.RESOURCE_FROM_CSAR_NOT_FOUND, csarUUID); - - } - - @Test(enabled = true) - public void getResourceFromMissingCsar() throws Exception { - String csarUUID = "abcdefg12345"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID(csarUUID); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - - RestResponse resResponse = ResourceRestUtils.getLatestResourceFromCsarUuid(csarUUID); - - BaseRestUtils.checkStatusCode(resResponse, "Check bad request error", false, 400); - BaseRestUtils.checkErrorResponse(resResponse, ActionStatus.RESOURCE_FROM_CSAR_NOT_FOUND, csarUUID); - - } - - @Test(enabled = true) - public void createUpdateCertifiedImportResourceFromCsarTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes = copyCsarRest(sdncModifierDetails, "valid_vf_a.csar", "valid_vf.csar"); - RestResponse updateResponse = null; - String oldName = null; - // create new resource from Csar - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("valid_vf.csar"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - String invariantUUID = resource.getInvariantUUID(); - - // change metadata - // resource name, icon, vendor name, category, template derivedFrom - oldName = resourceDetails.getName(); - resourceDetails.setName("test1"); - resourceDetails.setIcon("newicon"); - resourceDetails.setVendorName("newname"); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.VSP_ALREADY_EXISTS, "valid_vf.csar", oldName); - - updateResponse = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResponse); - - LifecycleRestUtils.certifyResource(resourceDetails); - // change metadata - // resource name, icon, vendor name, category, template derivedFrom - resourceDetails.setName("test2"); - resourceDetails.setIcon("new icon1"); - resourceDetails.setVendorName("new name1"); - resourceDetails.setDescription("bla bla bla"); - updateResponse = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResponse); - resource = ResponseParser.parseToObjectUsingMapper(updateResponse.getResponse(), Resource.class); - assertEquals(5, resource.getComponentInstances().size()); - assertEquals(invariantUUID, resource.getInvariantUUID()); - assertEquals(resource.getName(), "test1"); - assertEquals(resource.getIcon(), "newicon"); - assertEquals(resource.getVendorName(), "newname"); - assertEquals(resource.getDescription(), "bla bla bla"); - assertEquals(resource.getTags().contains("test2"), false); - } - - @Test - public void createImportRIRelationByCapNameFromCsarUITest() throws Exception { - Resource resource = ResourceRestUtils.importResourceFromCsar("vmmc_relate_by_cap_name.csar"); - // assert all relations created - assertEquals(80, resource.getComponentInstancesRelations().size()); - } - - @Test - public void createImportRIRelationByCapNameFromCsarUITest2() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "vf_relate_by_cap_name.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - String rootPath = System.getProperty("user.dir"); - Path path = null; - byte[] data = null; - String payloadData = null; - - path = Paths.get(rootPath + CSARS_PATH + "vf_relate_by_cap_name.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - // create new resource from Csar - resourceDetails.setCsarUUID(payloadName); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - // assert relations created: 1.by name: virtual_linkable. 2.by name: - // link - Map<String, ComponentInstance> nodes = resource.getComponentInstances().stream().collect(Collectors.toMap(n -> n.getName(), n -> n)); - Map<String, CapabilityDefinition> capabilities = nodes.get("elinenode").getCapabilities().get("tosca.capabilities.network.Linkable").stream().collect(Collectors.toMap(e -> e.getName(), e -> e)); - String cp1Uid = nodes.get("cp1node").getUniqueId(); - String cp2Uid = nodes.get("cp2node").getUniqueId(); - Map<String, List<RequirementCapabilityRelDef>> mappedByReqOwner = resource.getComponentInstancesRelations().stream().collect(Collectors.groupingBy(e -> e.getFromNode())); - assertEquals(mappedByReqOwner.get(cp1Uid).get(0).getRelationships().get(0).getRelation().getCapabilityUid(), capabilities.get("virtual_linkable").getUniqueId()); - assertEquals(mappedByReqOwner.get(cp2Uid).get(0).getRelationships().get(0).getRelation().getCapabilityUid(), capabilities.get("link").getUniqueId()); - } - - @Test(enabled = true) - public void importCsarCheckVfHeatEnv() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("csar_1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - - Map<String, ArtifactDefinition> deploymentArtifacts = resource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - // 2 lisence, 1 heat, 1 heatenv - assertEquals(4, deploymentArtifacts.size()); - - ArtifactDefinition artifactHeat = deploymentArtifacts.get("heat0"); - assertNotNull(artifactHeat); - - ArtifactDefinition artifactHeatEnv = deploymentArtifacts.get("heat0env"); - assertNotNull(artifactHeatEnv); - - assertEquals(artifactHeat.getUniqueId(), artifactHeatEnv.getGeneratedFromId()); - assertEquals("VF HEAT ENV", artifactHeatEnv.getArtifactDisplayName()); - assertEquals("HEAT_ENV", artifactHeatEnv.getArtifactType()); - assertEquals("VF Auto-generated HEAT Environment deployment artifact", artifactHeatEnv.getDescription()); - - String designerUserId = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER).getUserId(); - String testerUserId = ElementFactory.getDefaultUser(UserRoleEnum.TESTER).getUserId(); - RestResponse lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUserId, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUserId, LifeCycleStatesEnum.STARTCERTIFICATION); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - lifecycleChangeResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUserId, LifeCycleStatesEnum.CERTIFY); - LifecycleRestUtils.checkSuccess(lifecycleChangeResponse); - Resource certifiedResource = ResponseParser.parseToObjectUsingMapper(lifecycleChangeResponse.getResponse(), Resource.class); - - - User modifier = new User(); - modifier.setUserId(designerUserId); - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("newtestservice1", ServiceCategoriesEnum.MOBILITY, designerUserId); - - RestResponse serviceRes = ServiceRestUtils.createService(serviceDetails, modifier); - ResourceRestUtils.checkCreateResponse(serviceRes); - Service service = ResponseParser.parseToObjectUsingMapper(serviceRes.getResponse(), Service.class); - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory.getComponentInstance(certifiedResource); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, modifier, service.getUniqueId(), service.getComponentType()); - BaseRestUtils.checkCreateResponse(createResourceInstanceResponse); - RestResponse serviceByGet = ServiceRestUtils.getService(service.getUniqueId()); - service = ResponseParser.parseToObjectUsingMapper(serviceByGet.getResponse(), Service.class); - - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - - assertEquals(1, componentInstances.size()); - ComponentInstance ci = componentInstances.get(0); - Map<String, ArtifactDefinition> instDepArtifacts = ci.getDeploymentArtifacts(); - assertNotNull(instDepArtifacts); - ArtifactDefinition instArtifactHeat = instDepArtifacts.get("heat0"); - assertNotNull(instArtifactHeat); - - ArtifactDefinition instArtifactHeatEnv = instDepArtifacts.get("heat0env"); - assertNotNull(instArtifactHeatEnv); - assertEquals(artifactHeat.getUniqueId(), instArtifactHeatEnv.getGeneratedFromId()); - assertEquals("HEAT ENV", instArtifactHeatEnv.getArtifactDisplayName()); - assertEquals("HEAT_ENV", instArtifactHeatEnv.getArtifactType()); - - assertEquals(artifactHeat.getUniqueId(), instArtifactHeat.getUniqueId()); - //different artifacts - assertTrue( !artifactHeatEnv.getUniqueId().equals(instArtifactHeat.getUniqueId()) ); - - - } - - @Test(enabled = true) - public void createAndUpdateCsarCheckVfHeatEnv() throws Exception { - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setCsarUUID("orig2G_org"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - - Map<String, ArtifactDefinition> deploymentArtifacts = resource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - - assertEquals(13, deploymentArtifacts.size()); - - ArtifactDefinition artifactHeat = deploymentArtifacts.get("heat0"); - assertNotNull(artifactHeat); - - ArtifactDefinition artifactHeatEnv = deploymentArtifacts.get("heat0env"); - assertNotNull(artifactHeatEnv); - - assertEquals(artifactHeat.getUniqueId(), artifactHeatEnv.getGeneratedFromId()); - assertEquals("VF HEAT ENV", artifactHeatEnv.getArtifactDisplayName()); - assertEquals("HEAT_ENV", artifactHeatEnv.getArtifactType()); - assertEquals("VF Auto-generated HEAT Environment deployment artifact", artifactHeatEnv.getDescription()); - - List<GroupDefinition> groups = resource.getGroups(); - assertEquals(2, groups.size()); - GroupDefinition group1 = groups.stream().filter(p -> p.getName().contains("module-0")).findAny().get(); - GroupDefinition group2 = groups.stream().filter(p -> p.getName().contains("module-1")).findAny().get(); - assertEquals(11, group1.getArtifacts().size()); - assertEquals(3, group2.getArtifacts().size()); - - resourceDetails.setCsarUUID("orig2G_update"); - - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - - - Map<String, ArtifactDefinition> deploymentArtifactsUpd = resource.getDeploymentArtifacts(); - assertNotNull(deploymentArtifactsUpd); - - assertEquals(13, deploymentArtifactsUpd.size()); - - ArtifactDefinition artifactHeatUpd = deploymentArtifacts.get("heat0"); - assertNotNull(artifactHeatUpd); - - ArtifactDefinition artifactHeatEnvUpd = deploymentArtifacts.get("heat0env"); - assertNotNull(artifactHeatEnvUpd); - - groups = resource.getGroups(); - assertEquals(2, groups.size()); - assertEquals(7, groups.get(0).getArtifacts().size()); - assertEquals(7, groups.get(1).getArtifacts().size()); - - - } - - @Test - public void importInnerVfcWithArtifactsSucceed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String rootPath = System.getProperty("user.dir"); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - - String payloadName = "ImportArtifactsToVFC.csar"; - Path path = Paths.get(rootPath + CSARS_PATH + "ImportArtifactsToVFC.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - List<ComponentInstance> componentInstances = resource.getComponentInstances(); - List<ComponentInstance> reducedComponentInstances = componentInstances.stream() - .filter(ci->ci.getNormalizedName().contains("server_sm")) - .collect(Collectors.toList()); - assertTrue(!reducedComponentInstances.isEmpty() && reducedComponentInstances.size() == 2); - reducedComponentInstances.stream().forEach(ci->isValidArtifacts(ci)); - - payloadName = "ImportArtifactsToVFC_empty.csar"; - path = Paths.get(rootPath + CSARS_PATH + "ImportArtifactsToVFC_empty.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setName(resourceDetails.getName()+"2"); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - componentInstances = resource.getComponentInstances(); - reducedComponentInstances = componentInstances.stream() - .filter(ci->ci.getNormalizedName().contains("server_sm")) - .collect(Collectors.toList()); - assertTrue(!reducedComponentInstances.isEmpty() && reducedComponentInstances.size() == 2); - reducedComponentInstances.stream() - .forEach(ci->assertTrue( - (ci.getDeploymentArtifacts()==null || ci.getDeploymentArtifacts().isEmpty()) && - (ci.getArtifacts()==null || ci.getArtifacts().isEmpty())) - ); - } - - @SuppressWarnings("unchecked") - @Test - public void importInnerVfcWithArtifactsUpdateSucceed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String rootPath = System.getProperty("user.dir"); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - - String payloadName = "vfc_artifacts.csar"; - Path path = Paths.get(rootPath + CSARS_PATH + payloadName); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - - Map<String,String> validCreatedInformationalArtifactVersions = new HashMap<>(); - validCreatedInformationalArtifactVersions.put("GuideInfoDelete.mib","1"); - validCreatedInformationalArtifactVersions.put("GuideInfoUpdate.mib","1"); - validCreatedInformationalArtifactVersions.put("OtherInfoIgnore.mib","1"); - - Map<String,String> validCreatedDeploymentArtifactVersions = new HashMap<>(); - validCreatedDeploymentArtifactVersions.put("PollDelete.mib","1"); - validCreatedDeploymentArtifactVersions.put("PollUpdate.mib","1"); - validCreatedDeploymentArtifactVersions.put("TrapDelete.mib","1"); - validCreatedDeploymentArtifactVersions.put("TrapUpdate.mib","1"); - - Map<String,String> validUpdatedInformationalArtifactVersions = new HashMap<>(); - validUpdatedInformationalArtifactVersions.put("GuideInfoNew.mib","1"); - validUpdatedInformationalArtifactVersions.put("GuideInfoUpdate.mib","2"); - validUpdatedInformationalArtifactVersions.put("OtherInfoIgnore.mib","1"); - - Map<String,String> validUpdatedDeploymentArtifactVersions = new HashMap<>(); - validUpdatedDeploymentArtifactVersions.put("PollNew.mib","1"); - validUpdatedDeploymentArtifactVersions.put("PollUpdate.mib","2"); - validUpdatedDeploymentArtifactVersions.put("TrapNew.mib","1"); - validUpdatedDeploymentArtifactVersions.put("TrapUpdate.mib","2"); - - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - List<ComponentInstance> componentInstances = resource.getComponentInstances().stream() - .filter(ci->ci.getNormalizedName().contains("ltm_server")) - .collect(Collectors.toList()); - assertTrue(!componentInstances.isEmpty() && componentInstances.size() == 1); - ComponentInstance componentInstance = componentInstances.get(0); - assertTrue(!componentInstance.getArtifacts().isEmpty() && componentInstance.getArtifacts().size() == 3); - componentInstance.getArtifacts().values().stream() - .forEach(a->assertTrue(validCreatedInformationalArtifactVersions.containsKey(a.getArtifactName()) && - validCreatedInformationalArtifactVersions.get(a.getArtifactName()).equals(a.getArtifactVersion()))); - - assertTrue(!componentInstance.getDeploymentArtifacts().isEmpty() && componentInstance.getDeploymentArtifacts().size() == 4); - componentInstance.getDeploymentArtifacts().values().stream() - .forEach(a->assertTrue(validCreatedDeploymentArtifactVersions.containsKey(a.getArtifactName()) && - validCreatedDeploymentArtifactVersions.get(a.getArtifactName()).equals(a.getArtifactVersion()))); - - payloadName = "vfc_artifacts_update.csar"; - path = Paths.get(rootPath + CSARS_PATH + payloadName); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - - RestResponse updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - - componentInstances = resource.getComponentInstances().stream() - .filter(ci->ci.getNormalizedName().contains("ltm_server")) - .collect(Collectors.toList()); - assertTrue(!componentInstances.isEmpty() && componentInstances.size() == 1); - componentInstance = componentInstances.get(0); - assertTrue(!componentInstance.getArtifacts().isEmpty() && componentInstance.getArtifacts().size() == 3); - componentInstance.getArtifacts().values().stream() - .forEach(a->assertTrue(validUpdatedInformationalArtifactVersions.containsKey(a.getArtifactName()) && - validUpdatedInformationalArtifactVersions.get(a.getArtifactName()).equals(a.getArtifactVersion()))); - - assertTrue(!componentInstance.getDeploymentArtifacts().isEmpty() && componentInstance.getDeploymentArtifacts().size() == 4); - componentInstance.getDeploymentArtifacts().values().stream() - .forEach(a->assertTrue(validUpdatedDeploymentArtifactVersions.containsKey(a.getArtifactName()) && - validUpdatedDeploymentArtifactVersions.get(a.getArtifactName()).equals(a.getArtifactVersion()))); - - - payloadName = "vfc_artifacts_delete_all.csar"; - path = Paths.get(rootPath + CSARS_PATH + payloadName); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, resource.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - - componentInstances = resource.getComponentInstances().stream() - .filter(ci->ci.getNormalizedName().contains("ltm_server")) - .collect(Collectors.toList()); - assertTrue(!componentInstances.isEmpty() && componentInstances.size() == 1); - componentInstance = componentInstances.get(0); - assertTrue(componentInstance.getArtifacts() == null || componentInstance.getArtifacts().isEmpty()); - assertTrue(componentInstance.getDeploymentArtifacts() == null || componentInstance.getDeploymentArtifacts().isEmpty()); - } - - private void isValidArtifacts(ComponentInstance ci) { - assertTrue(!ci.getDeploymentArtifacts().isEmpty() && ci.getDeploymentArtifacts().size() == 11); - ci.getDeploymentArtifacts().values().stream() - .forEach(a->assertTrue(a.getArtifactName().startsWith("Some"))); - - assertTrue(!ci.getArtifacts().isEmpty() && ci.getArtifacts().size() == 1); - ci.getArtifacts().values().stream() - .forEach(a->assertTrue(a.getArtifactName().startsWith("Process"))); - } - - private void verifyMembers(Map<String, String> createdMembers, Map<String, String> compNameToUniqueId) { - for (Map.Entry<String, String> entry : createdMembers.entrySet()) { - String key = entry.getKey(); - String value = entry.getValue(); - String comparedValue = compNameToUniqueId.get(key); - - assertEquals("compare instance ids", comparedValue, value); - } - - } - - private static Map<String, String> prepareHeadersMap(String userId) { - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "application/json"); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), "application/json"); - if (userId != null) { - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId); - } - return headersMap; - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportGenericResourceCITest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportGenericResourceCITest.java deleted file mode 100644 index aa02a3e8c7..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportGenericResourceCITest.java +++ /dev/null @@ -1,618 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.io.IOException; -import java.nio.file.FileSystems; -import java.nio.file.Files; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -import org.apache.http.HttpStatus; -import org.apache.http.client.ClientProtocolException; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpPost; -import org.apache.http.entity.ContentType; -import org.apache.http.entity.mime.MultipartEntityBuilder; -import org.apache.http.entity.mime.content.FileBody; -import org.apache.http.entity.mime.content.StringBody; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.PropertyDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.ImportTestTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.RespJsonKeysEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.execute.TODO.ImportCapabilityTypeCITest; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.rest.ImportRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -import fj.data.Either; - -public class ImportGenericResourceCITest extends ComponentBaseTest { - private static Logger log = LoggerFactory.getLogger(ImportGenericResourceCITest.class.getName()); - private static final String FILE_NAME_MY_COMPUTE = "tosca.nodes.MyCompute"; - private static final String RESOURCE_NAME_UPDATE_COMPUTE = "userUpdateCompute"; - private static final String RESOURCE_NAME_MY_COMPUTE = "MyCompute"; - private static final String RESOURCE_NAME_USER_COMPUTE = "userCompute"; - private static final String FILE_NAME_USER_COMPUTE = "tosca.nodes.userCompute"; - private static final String FILE_NAME_USER_VFC = "Derived_VFC"; - @Rule - public static TestName name = new TestName(); - - public ImportGenericResourceCITest() { - super(name, ImportGenericResourceCITest.class.getName()); - } - - @BeforeClass - public static void beforeImportClass() throws IOException { - ImportCapabilityTypeCITest.importAllCapabilityTypes(); - // removeAllNormativeTypeResources(); - // importAllNormativeTypesResources(UserRoleEnum.ADMIN); - } - - static Config config = Config.instance(); - - public static Map<NormativeTypesEnum, Boolean> removeAllNormativeTypeResources() throws ClientProtocolException, IOException { - Map<NormativeTypesEnum, Boolean> normativeExistInDB = new HashMap<>(); - - for (NormativeTypesEnum current : NormativeTypesEnum.values()) { - Boolean existedBeforeDelete = ImportRestUtils.removeNormativeTypeResource(current); - normativeExistInDB.put(current, existedBeforeDelete); - } - return normativeExistInDB; - } - - public static Either<String, Boolean> getNormativeTypeResource(NormativeTypesEnum current) throws ClientProtocolException, IOException { - return getResource(current.getNormativeName(), "1.0"); - } - - @Test - public void importAllTestResources() throws Exception { - for (ImportTestTypesEnum currResource : ImportTestTypesEnum.values()) { - DbUtils.cleanAllAudits(); - - RestResponse importResponse = ImportRestUtils.importTestResource(currResource, UserRoleEnum.ADMIN); - // System.err.println("import Resource - // "+"<"+currResource+">"+"response: - // "+importResponse.getErrorCode()); - ImportRestUtils.validateImportTestTypesResp(currResource, importResponse); - if (currResource.getvalidateAudit() == true) { - // validate audit - String baseVersion = "1.0"; - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(currResource.getActionStatus().name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.ADMIN.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.ADMIN.getUserName()); - expectedResourceAuditJavaObject.setResourceName(currResource.getNormativeName()); - expectedResourceAuditJavaObject.setResourceType("Resource"); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(baseVersion); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.toString()); - expectedResourceAuditJavaObject.setComment(null); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - List<String> variables = (currResource.getErrorParams() != null ? currResource.getErrorParams() : new ArrayList<String>()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAuditImport(expectedResourceAuditJavaObject, auditAction); - } - } - } - - // ----------------------------------------------------------------------------------- - protected void validateMyComputeCapabilities(Map<String, Object> map) { - assertTrue(map.containsKey("capabilities")); - Map<String, Object> capabilities = (Map<String, Object>) map.get("capabilities"); - assertTrue(capabilities.containsKey("tosca.capabilities.Container")); - List<Object> hostCapList = (List<Object>) capabilities.get("tosca.capabilities.Container"); - assertFalse(hostCapList.isEmpty()); - Map<String, Object> hostCap = (Map<String, Object>) hostCapList.get(0); - validateField(hostCap, "type", "tosca.capabilities.Container"); - validateField(hostCap, "name", "host"); - validateField(hostCap, "validSourceTypes", Arrays.asList(new String[] { "tosca.nodes.SoftwareComponent" })); - - assertTrue(capabilities.containsKey("tosca.capabilities.Endpoint.Admin")); - List<Object> endPointCapList = (List<Object>) capabilities.get("tosca.capabilities.Endpoint.Admin"); - assertFalse(endPointCapList.isEmpty()); - Map<String, Object> endPointCap = (Map<String, Object>) endPointCapList.get(0); - validateField(endPointCap, "name", "endpoint"); - validateField(endPointCap, "type", "tosca.capabilities.Endpoint.Admin"); - - assertTrue(capabilities.containsKey("tosca.capabilities.OperatingSystem")); - List<Object> osCapList = (List<Object>) capabilities.get("tosca.capabilities.OperatingSystem"); - assertFalse(osCapList.isEmpty()); - Map<String, Object> osCap = (Map<String, Object>) osCapList.get(0); - validateField(osCap, "name", "os"); - validateField(osCap, "type", "tosca.capabilities.OperatingSystem"); - - assertTrue(capabilities.containsKey("tosca.capabilities.Scalable")); - List<Object> scalableCapList = (List<Object>) capabilities.get("tosca.capabilities.Scalable"); - assertFalse(scalableCapList.isEmpty()); - Map<String, Object> scalableCap = (Map<String, Object>) scalableCapList.get(0); - validateField(scalableCap, "name", "scalable"); - validateField(scalableCap, "type", "tosca.capabilities.Scalable"); - - assertTrue(capabilities.containsKey("tosca.capabilities.network.Bindable")); - List<Object> bindingCapList = (List<Object>) capabilities.get("tosca.capabilities.network.Bindable"); - assertFalse(bindingCapList.isEmpty()); - Map<String, Object> bindingCap = (Map<String, Object>) bindingCapList.get(0); - validateField(bindingCap, "name", "binding"); - validateField(bindingCap, "type", "tosca.capabilities.network.Bindable"); - - } - - protected void validateMyComputeResource(String resourceName, String resourceVersion, String expectedState) throws ClientProtocolException, IOException { - Either<String, Boolean> eitherMyCompute = getResource(resourceName, resourceVersion); - assertTrue(eitherMyCompute.isLeft()); - String testComputeYml = eitherMyCompute.left().value(); - - Map<String, Object> map = new HashMap<String, Object>(); - map = (Map<String, Object>) new Gson().fromJson(testComputeYml, map.getClass()); - - validateMyComputeBasicFields(map, resourceName, resourceVersion, expectedState); - - validateMyComputeCapabilities(map); - - validateMyComputeRequirements(map); - validateField(map, RespJsonKeysEnum.RESOURCE_VERSION.getRespJsonKeyName(), resourceVersion); - - } - - protected void validateMyComputeResource(String uid, String resourceName, String resourceVersion, String expectedState) throws ClientProtocolException, IOException { - RestResponse resourceResponse = ResourceRestUtils.getResource(uid); - ResourceRestUtils.checkSuccess(resourceResponse); - String testComputeYml = resourceResponse.getResponse(); - - // Either<String, Boolean> eitherMyCompute = getResource(resourceName, - // resourceVersion); - // assertTrue( eitherMyCompute.isLeft() ); - // String testComputeYml = eitherMyCompute.left().value(); - - Map<String, Object> map = new HashMap<String, Object>(); - map = (Map<String, Object>) new Gson().fromJson(testComputeYml, map.getClass()); - - validateMyComputeBasicFields(map, resourceName, resourceVersion, expectedState); - - validateMyComputeCapabilities(map); - - validateMyComputeRequirements(map); - validateField(map, RespJsonKeysEnum.RESOURCE_VERSION.getRespJsonKeyName(), resourceVersion); - - } - - protected void validateMyComputeResourceAfterUpdate(String uid, String resourceName, String resourceVersion, String expectedState) throws ClientProtocolException, IOException { - RestResponse resourceResponse = ResourceRestUtils.getResource(uid); - ResourceRestUtils.checkSuccess(resourceResponse); - String testComputeYml = resourceResponse.getResponse(); - - // Either<String, Boolean> eitherMyCompute = getResource(resourceName, - // resourceVersion); - // assertTrue( eitherMyCompute.isLeft() ); - - // String testComputeYml = eitherMyCompute.left().value(); - - Map<String, Object> map = new HashMap<String, Object>(); - map = (Map<String, Object>) new Gson().fromJson(testComputeYml, map.getClass()); - - validateMyComputeBasicFields(map, resourceName, resourceVersion, expectedState); - validateField(map, RespJsonKeysEnum.DESCRIPTION.getRespJsonKeyName(), "Short description"); - validateField(map, RespJsonKeysEnum.VENDOR_NAME.getRespJsonKeyName(), "UserVendor"); - validateField(map, RespJsonKeysEnum.VENDOR_RELEASE.getRespJsonKeyName(), "1.1.2"); - - // validateMyComputeCapabilities(map); - // AssertJUnit.assertTrue(map.containsKey("capabilities")); - // Map<String, Object> capabilities = (Map<String, Object>) - // map.get("capabilities"); - // AssertJUnit.assertTrue(capabilities.containsKey("host")); - // Map<String, Object> hostCap = (Map<String, Object>) - // capabilities.get("host"); - // validateField(hostCap, "type", "tosca.capabilities.Container"); - // validateField(hostCap, "validSourceTypes", Arrays.asList(new - // String[]{"tosca.nodes.SoftwareComponent"})); - // - // AssertJUnit.assertTrue(capabilities.containsKey("endpoint")); - // Map<String, Object> endPointCap = (Map<String, Object>) - // capabilities.get("endpoint"); - // validateField(endPointCap, "type", - // "tosca.capabilities.Endpoint.Admin"); - - assertTrue(map.containsKey("capabilities")); - Map<String, Object> capabilities = (Map<String, Object>) map.get("capabilities"); - assertTrue(capabilities.containsKey("tosca.capabilities.Container")); - List<Object> hostCapList = (List<Object>) capabilities.get("tosca.capabilities.Container"); - assertFalse(hostCapList.isEmpty()); - Map<String, Object> hostCap = (Map<String, Object>) hostCapList.get(0); - validateField(hostCap, "type", "tosca.capabilities.Container"); - validateField(hostCap, "name", "host"); - validateField(hostCap, "validSourceTypes", Arrays.asList(new String[] { "tosca.nodes.SoftwareComponent" })); - - assertTrue(capabilities.containsKey("tosca.capabilities.Endpoint.Admin")); - List<Object> endPointCapList = (List<Object>) capabilities.get("tosca.capabilities.Endpoint.Admin"); - assertFalse(endPointCapList.isEmpty()); - Map<String, Object> endPointCap = (Map<String, Object>) endPointCapList.get(0); - validateField(endPointCap, "name", "endpoint"); - validateField(endPointCap, "type", "tosca.capabilities.Endpoint.Admin"); - - validateMyComputeRequirements(map); - validateField(map, RespJsonKeysEnum.RESOURCE_VERSION.getRespJsonKeyName(), resourceVersion); - - } - - protected void validateMyComputeRequirements(Map<String, Object> map) { - assertTrue(map.containsKey("requirements")); - Map<String, Object> requirements = (Map<String, Object>) map.get("requirements"); - - assertTrue(requirements.containsKey("tosca.capabilities.Attachment")); - List<Object> localStorageReqList = (List<Object>) requirements.get("tosca.capabilities.Attachment"); - assertFalse(localStorageReqList.isEmpty()); - Map<String, Object> localStorageReq = (Map<String, Object>) localStorageReqList.get(0); - validateField(localStorageReq, "capability", "tosca.capabilities.Attachment"); - validateField(localStorageReq, "node", "tosca.nodes.BlockStorage"); - validateField(localStorageReq, "relationship", "tosca.relationships.AttachesTo"); - validateField(localStorageReq, "name", "local_storage"); - } - - protected void validateMyComputeBasicFields(Map<String, Object> map, String resourceName, String resourceVersion, String expectedState) { - validateField(map, RespJsonKeysEnum.IS_ABSTRACT.getRespJsonKeyName(), false); - // validateField(map, RespJsonKeysEnum.CATEGORIES.getRespJsonKeyName(), - // categoryDefinition); - // validateField(map, RespJsonKeysEnum.UNIQUE_ID.getRespJsonKeyName(), - // UniqueIdBuilder.buildResourceUniqueId(resourceName, - // resourceVersion)); - validateField(map, RespJsonKeysEnum.RESOURCE_NAME.getRespJsonKeyName(), resourceName); - validateField(map, RespJsonKeysEnum.TAGS.getRespJsonKeyName(), Arrays.asList(new String[] { resourceName })); - validateField(map, RespJsonKeysEnum.LIFE_CYCLE_STATE.getRespJsonKeyName(), expectedState); - - validateField(map, RespJsonKeysEnum.DERIVED_FROM.getRespJsonKeyName(), Arrays.asList(new String[] { "tosca.nodes.Root" })); - } - - protected static void validateField(Map<String, Object> map, String jsonField, Object expectedValue) { - if (expectedValue == null) { - assertTrue(!map.containsKey(jsonField)); - } else { - assertTrue("map does not contain field " + jsonField, map.containsKey(jsonField)); - Object foundValue = map.get(jsonField); - compareElements(expectedValue, foundValue); - } - } - - protected static void compareElements(Object expectedValue, Object foundValue) { - if (expectedValue instanceof String) { - assertTrue(foundValue instanceof String); - assertTrue(foundValue.equals(expectedValue)); - } - - else if (expectedValue instanceof Boolean) { - assertTrue(foundValue instanceof Boolean); - assertTrue(foundValue == expectedValue); - } else if (expectedValue instanceof Map) { - assertTrue(foundValue instanceof Map); - Map<String, Object> foundMap = (Map<String, Object>) foundValue; - Map<String, Object> excpectedMap = (Map<String, Object>) expectedValue; - assertTrue(foundMap.size() == excpectedMap.size()); - Iterator<String> foundkeyItr = foundMap.keySet().iterator(); - while (foundkeyItr.hasNext()) { - String foundKey = foundkeyItr.next(); - assertTrue(excpectedMap.containsKey(foundKey)); - compareElements(excpectedMap.get(foundKey), foundMap.get(foundKey)); - } - - } else if (expectedValue instanceof List) { - assertTrue(foundValue instanceof List); - List<Object> foundList = (List<Object>) foundValue; - List<Object> excpectedList = (List<Object>) expectedValue; - assertTrue(foundList.size() == excpectedList.size()); - for (int i = 0; i < foundList.size(); i++) { - compareElements(excpectedList.get(i), foundList.get(i)); - } - - } else if (expectedValue instanceof CategoryDefinition) { - assertTrue(foundValue instanceof Map); - CategoryDefinition expCat = (CategoryDefinition) expectedValue; - Map<String, Object> actCat = (Map<String, Object>) foundValue; - assertEquals(expCat.getName(), actCat.get("name")); - - // assertEquals(expCat.getSubcategories().get(0).getName(), - // actCat.get("subcategories").getName()); - } else { - assertTrue(foundValue.equals(expectedValue)); - } - } - - public static void restoreToOriginalState(Map<NormativeTypesEnum, Boolean> originalState, UserRoleEnum userRole) throws IOException { - removeAllNormativeTypeResources(); - - Iterator<Entry<NormativeTypesEnum, Boolean>> iterator = originalState.entrySet().iterator(); - while (iterator.hasNext()) { - Entry<NormativeTypesEnum, Boolean> entry = iterator.next(); - Boolean isExistBeforeDelete = entry.getValue(); - if (isExistBeforeDelete) { - importNormativeResource(entry.getKey(), userRole); - } - } - - } - - public static void importAllNormativeTypesResources(UserRoleEnum userRole) throws IOException { - for (NormativeTypesEnum currResource : NormativeTypesEnum.values()) { - Either<String, Boolean> resource = getResource(currResource.getNormativeName(), "1.0"); - if (resource.isRight()) { - importNormativeResource(currResource, userRole); - } - } - - } - - protected static Integer importNormativeResource(NormativeTypesEnum resource, UserRoleEnum userRole) throws IOException { - return importResource(resource.getFolderName(), userRole, true); - } - - protected static Integer importResource(String folderName, UserRoleEnum userRole, boolean isNormative) throws IOException { - Config config = Utils.getConfig(); - CloseableHttpResponse response = null; - MultipartEntityBuilder mpBuilder = MultipartEntityBuilder.create(); - - mpBuilder.addPart("resourceZip", new FileBody(getZipFile(folderName))); - mpBuilder.addPart("resourceMetadata", new StringBody(getJsonStringOfFile(folderName, folderName + ".json"), ContentType.APPLICATION_JSON)); - - String url = String.format(Urls.IMPORT_RESOURCE_NORMATIVE, config.getCatalogBeHost(), config.getCatalogBePort()); - if (!isNormative) { - url = String.format(Urls.IMPORT_USER_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort()); - } - - CloseableHttpClient client = HttpClients.createDefault(); - try { - HttpPost httpPost = new HttpPost(url); - httpPost.addHeader("USER_ID", userRole.getUserId()); - httpPost.setEntity(mpBuilder.build()); - response = client.execute(httpPost); - return response.getStatusLine().getStatusCode(); - } finally { - closeResponse(response); - closeHttpClient(client); - - } - } - - public static void closeHttpClient(CloseableHttpClient client) { - try { - if (client != null) { - client.close(); - } - } catch (IOException e) { - log.debug("failed to close client or response: ", e); - } - } - - public static void closeResponse(CloseableHttpResponse response) { - try { - if (response != null) { - response.close(); - } - } catch (IOException e) { - log.debug("failed to close client or response: ", e); - } - } - - protected static String getJsonStringOfFile(String folderName, String fileName) throws IOException { - String sourceDir = config.getImportResourceConfigDir(); - sourceDir += File.separator + "normative-types"; - - java.nio.file.Path filePath = FileSystems.getDefault().getPath(sourceDir + File.separator + folderName, fileName); - byte[] fileContent = Files.readAllBytes(filePath); - String content = new String(fileContent); - return content; - } - - protected static File getZipFile(String elementName) throws IOException { - String sourceDir = config.getImportResourceConfigDir(); - sourceDir += File.separator + "normative-types"; - - java.nio.file.Path filePath = FileSystems.getDefault().getPath(sourceDir + File.separator + elementName, "normative-types-new-" + elementName + ".zip"); - return filePath.toFile(); - } - - protected static String getTestJsonStringOfFile(String folderName, String fileName) throws IOException { - String sourceDir = config.getImportResourceTestsConfigDir(); - java.nio.file.Path filePath = FileSystems.getDefault().getPath(sourceDir + File.separator + folderName, fileName); - byte[] fileContent = Files.readAllBytes(filePath); - String content = new String(fileContent); - return content; - } - - protected static File getTestZipFile(String elementName) throws IOException { - String sourceDir = config.getImportResourceTestsConfigDir(); - - java.nio.file.Path filePath = FileSystems.getDefault().getPath(sourceDir + File.separator + elementName, "normative-types-new-" + elementName + ".zip"); - return filePath.toFile(); - } - - protected static Either<String, Boolean> getResource(String name, String version) throws IOException { - RestResponse resource = ResourceRestUtils.getResourceByNameAndVersion(UserRoleEnum.DESIGNER.getUserId(), name, version); - if (resource.getErrorCode() == ImportRestUtils.STATUS_CODE_GET_SUCCESS) { - return Either.left(resource.getResponse()); - // return Either.right(true); - - } - return Either.right(false); - } - - @Test - public void testImportWithRequirmentsAndCapabilities() throws IOException { - String fileName = FILE_NAME_MY_COMPUTE; - RestResponse response = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_MY_COMPUTE, UserRoleEnum.ADMIN); - Integer statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "1.0", "CERTIFIED"); - } - - @Test - public void testImportWithUpdateNormativeType() throws IOException { - String fileName = FILE_NAME_MY_COMPUTE; - RestResponse response = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_MY_COMPUTE, UserRoleEnum.ADMIN); - Integer statusCode = response.getErrorCode(); - assertTrue(String.format("Expected code %s and got code %s",ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS,statusCode),statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "1.0", "CERTIFIED"); - - // update - response = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_MY_COMPUTE, UserRoleEnum.ADMIN); - statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_UPDATE_SUCCESS); - uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "2.0", "CERTIFIED"); - - } - - @Test - public void testImportWithInvalidDefaultValue() throws IOException { - RestResponse response = ImportRestUtils.importNewResourceByName("portInvalidDefaultValue", UserRoleEnum.DESIGNER); - assertTrue(response.getErrorCode() == HttpStatus.SC_BAD_REQUEST); - } - - @Test - public void testImportUserResource() throws IOException { - String fileName = FILE_NAME_USER_COMPUTE; - RestResponse response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_USER_COMPUTE, UserRoleEnum.DESIGNER); - Integer statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "0.1", "NOT_CERTIFIED_CHECKOUT"); - - } - - @Test - public void testImportAndUpdateUserResource() throws IOException { - String fileName = FILE_NAME_USER_COMPUTE; - RestResponse response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_USER_COMPUTE, UserRoleEnum.DESIGNER); - Integer statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "0.1", "NOT_CERTIFIED_CHECKOUT"); - response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_UPDATE_COMPUTE, UserRoleEnum.DESIGNER); - statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_UPDATE_SUCCESS); - uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResourceAfterUpdate(uid, fileName, "0.1", "NOT_CERTIFIED_CHECKOUT"); - - } - - @Test - public void testImportAndUpdateChangesUserResource() throws IOException { - String fileName = FILE_NAME_USER_COMPUTE; - RestResponse response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_USER_COMPUTE, UserRoleEnum.DESIGNER); - Integer statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "0.1", "NOT_CERTIFIED_CHECKOUT"); - // Either<String, Boolean> resource = getResource(fileName, "0.1"); - // assertTrue(resource.isLeft()); - - response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_UPDATE_COMPUTE, UserRoleEnum.DESIGNER); - statusCode = response.getErrorCode(); - assertTrue(statusCode == ImportRestUtils.STATUS_CODE_UPDATE_SUCCESS); - validateMyComputeResourceAfterUpdate(uid, fileName, "0.1", "NOT_CERTIFIED_CHECKOUT"); - - } - - @Test - public void testImportCheckoutAndUpdateUserResource() throws IOException { - String fileName = FILE_NAME_USER_COMPUTE; - RestResponse response = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_USER_COMPUTE, UserRoleEnum.ADMIN); - Integer statusCode = response.getErrorCode(); - assertTrue(String.format("Expected code %s and got code %s",ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS,statusCode),statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "1.0", "CERTIFIED"); - - response = ImportRestUtils.importNewResourceByName(RESOURCE_NAME_USER_COMPUTE, UserRoleEnum.DESIGNER); - statusCode = response.getErrorCode(); - assertEquals("check response code after update resource", ImportRestUtils.STATUS_CODE_UPDATE_SUCCESS, statusCode.intValue()); - uid = ResponseParser.getUniqueIdFromResponse(response); - validateMyComputeResource(uid, fileName, "1.1", "NOT_CERTIFIED_CHECKOUT"); - - } - - @Test - public void importNormativeTypesTesterUserRole() throws Exception { - Integer statusCode = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_MY_COMPUTE, UserRoleEnum.TESTER).getErrorCode(); - assertTrue(statusCode == ImportRestUtils.RESTRICTED_OPERATION); - } - - @Test - public void importNormativeTypesDesignerUserRole() throws Exception { - Integer statusCode = ImportRestUtils.importNormativeResourceByName(RESOURCE_NAME_MY_COMPUTE, UserRoleEnum.DESIGNER).getErrorCode(); - assertTrue(statusCode == 409); - } - - @Test - public void testImportVFCDerivedFromGeneric() throws IOException { - - RestResponse response = ImportRestUtils.importNewResourceByName(FILE_NAME_USER_VFC, UserRoleEnum.ADMIN); - Integer statusCode = response.getErrorCode(); - assertTrue(String.format("Expected code %s and got code %s",ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS,statusCode),statusCode == ImportRestUtils.STATUS_CODE_IMPORT_SUCCESS); - String uid = ResponseParser.getUniqueIdFromResponse(response); - response = ResourceRestUtils.getResource(uid); - Resource VFC = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - List<PropertyDefinition> props = VFC.getProperties(); - for (PropertyDefinition prop : props) { - assertTrue(null != prop.getOwnerId() && !uid.equals(prop.getOwnerId())); - - } - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportNewResourceCITest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportNewResourceCITest.java deleted file mode 100644 index 61c846242c..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportNewResourceCITest.java +++ /dev/null @@ -1,1524 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.commons.codec.binary.Base64; -import org.apache.http.HttpStatus; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.PropertyDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceRespJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.ImportTestTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.Convertor; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ImportRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.util.GeneralUtility; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class ImportNewResourceCITest extends ComponentBaseTest { - - // public static UserUtils userUtils = new UserUtils(); - // public ResourceUtils resourceUtils = new ResourceUtils(); - // public AuditValidationUtils AuditValidationUtils = new - // AuditValidationUtils(); - // protected ArtifactUtils artifactUtils = new ArtifactUtils(); - - protected String resourceVersion = null; - protected String auditAction = null; - public User sdncModifierDetails = new User(); - protected String artifactName1 = "data_artifact1.sh"; - protected String artifactName2 = "data_artifact2.sh"; - protected String interfaze = "standard"; - protected String interfaceArtifactName = "data_interface1.sh"; - - private String SPECIAL_CHARACTERS = "~!#@~$%^*()[];:'\"|\\/"; - - public ResourceReqDetails resourceDetails = new ResourceReqDetails(); - - public Gson gson = new Gson(); - - @Rule - public static TestName name = new TestName(); - - public ImportNewResourceCITest() { - super(name, ImportNewResourceCITest.class.getName()); - } - - @BeforeMethod - public void before() throws Exception { - - // init user - sdncModifierDetails.setUserId(UserRoleEnum.ADMIN.getUserId()); - // init resource details - resourceDetails = ElementFactory.getDefaultResource("importResource4test", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, "jh0003"); - } - - @Test - public void importAllTestResources_toValidateNewAPI() throws Exception { - - for (ImportTestTypesEnum currResource : ImportTestTypesEnum.values()) { - // clean audit - DbUtils.cleanAllAudits(); - - // import testResources trough newResource API - RestResponse importResponse = ImportRestUtils.importNewResourceByName(currResource.getFolderName(), - UserRoleEnum.ADMIN); - System.err.println("import Resource " + "<" + currResource.getFolderName() + ">" + "response: " - + importResponse.getErrorCode()); - - // validate response - ImportRestUtils.validateImportTestTypesResp(currResource, importResponse); - if (currResource.getvalidateAudit() == true) { - // validate audit - // String baseVersion="0.1"; - String baseVersion = ""; - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(currResource.getActionStatus().name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.ADMIN.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.ADMIN.getUserName()); - expectedResourceAuditJavaObject.setResourceName(currResource.getNormativeName()); - expectedResourceAuditJavaObject.setResourceType("Resource"); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(baseVersion); - expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.toString()); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setComment(null); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - List<String> variables = (currResource.getErrorParams() != null ? currResource.getErrorParams() - : new ArrayList<String>()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAuditImport(expectedResourceAuditJavaObject, auditAction); - } - } - } - - protected RestResponse importNewResource(UserRoleEnum userRoleEnum) throws Exception { - - // init user - sdncModifierDetails.setUserId(userRoleEnum.getUserId()); - // init resource details - resourceDetails = ElementFactory.getDefaultResource("importResource4test", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, "jh0003"); - // clean ES DB - DbUtils.cleanAllAudits(); - // import new resource (expected checkOut state) - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4test", userRoleEnum); - return importResponse; - } - - @Test(enabled = false) - public void importUIResource() throws IOException { - String payload = "tosca_definitions_version: tosca_simple_yaml_1_0_0\r\n" + "node_types: \r\n" - + " org.openecomp.resource.importResource4test:\r\n" + " derived_from: tosca.nodes.Root\r\n" - + " description: someDesc"; - - String encodedPayload = new String(Base64.encodeBase64(payload.getBytes())); - - String json = "{\r\n" + " \"resourceName\": \"importResource4test\",\r\n" - + " \"payloadName\": \"importResource4test.yml\",\r\n" - + " \"categories\": [{\"name\": \"Application L4+\",\"normalizedName\": \"application l4+\",\"uniqueId\": \"resourceNewCategory.application l4+\",\"subcategories\": [{\"name\": \"Web Server\"}]}],\r\n" - + " \"description\": \"ResourceDescription\",\r\n" + " \"vendorName\": \"VendorName\",\r\n" - + " \"vendorRelease\": \"VendorRelease\",\r\n" + " \"contactId\": \"AT1234\",\r\n" - + " \"icon\": \"router\",\r\n" + " \"tags\": [\r\n" + " \"importResource4test\"\r\n" + " ],\r\n" - + " \"payloadData\": \"" + encodedPayload + "\"\r\n" + "}"; - - String md5 = GeneralUtility.calculateMD5Base64EncodedByString(json); - - Map<String, String> headers = new HashMap<String, String>(); - headers.put(Constants.MD5_HEADER, md5); - headers.put(Constants.USER_ID_HEADER, UserRoleEnum.ADMIN.getUserId()); - headers.put(Constants.CONTENT_TYPE_HEADER, "application/json"); - - String url = String.format(Urls.CREATE_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort()); - - HttpRequest httpUtil = new HttpRequest(); - RestResponse httpSendPost = httpUtil.httpSendPost(url, json, headers); - Integer errorCode = httpSendPost.getErrorCode(); - assertTrue(errorCode == HttpStatus.SC_CREATED); - - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_suc() throws Exception { - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - // validate response - - resourceVersion = "0.1"; - - // ResourceRespJavaObject resourceRespJavaObject = - // Convertor.constructFieldsForRespValidation(resourceDetails, - // resourceVersion); - // resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // ResourceValidationUtils.validateResp(importResponse, - // resourceRespJavaObject); - // - // //validate get response - // - // RestResponse resourceGetResponse = - // ResourceRestUtils.getResource(sdncModifierDetails, resourceVersion); - // ResourceValidationUtils.validateResp(resourceGetResponse, - // resourceRespJavaObject); - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromImport); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceRespJavaObject.getUniqueId()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // validate - ResourceValidationUtils.validateModelObjects(resourceFromImport, resourceFromGet); - - // validate audit - resourceDetails.setVersion(resourceDetails.getVersion()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - - auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void importNewResource_byTester_failed() throws Exception { - - RestResponse importResponse = importNewResource(UserRoleEnum.TESTER); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 409, importResponse.getErrorCode().intValue()); - - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existInCheckout_updateVendorName_updateCategory() throws Exception { - - // import new resource - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4testUpdateVendorNameAndCategory", - UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 200, importResponse.getErrorCode().intValue()); - - // validate response - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromImport); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceRespJavaObject.getUniqueId()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // validate - ResourceValidationUtils.validateModelObjects(resourceFromImport, resourceFromGet); - - // validate audit - resourceDetails.setVersion(resourceDetails.getVersion()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails); - - auditAction = "ResourceImport"; - resourceVersion = "0.1"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void importNewResource_perfromByAdmin_ownedBy_diffrentUser() throws Exception { - - RestResponse importResponse = importNewResource(UserRoleEnum.DESIGNER); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - // clean audit - DbUtils.cleanAllAudits(); - - importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CHECKOUT_STATE.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), importResponse.getErrorCode()); - - String[] split = resourceFromImport.getLastUpdaterFullName().split(" "); - String firstName = split[0]; - String lastName = split[1]; - List<String> variables = Arrays.asList(resourceFromImport.getName(), "resource", firstName, lastName, - resourceFromImport.getLastUpdaterUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_IN_CHECKOUT_STATE.name(), variables, - importResponse.getResponse()); - - } - - @Test - public void importNewResource_perfromByDesigner_ownedBy_diffrentUser() throws Exception { - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - // clean audit - DbUtils.cleanAllAudits(); - - importResponse = importNewResource(UserRoleEnum.DESIGNER); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CHECKOUT_STATE.name()); - assertEquals("Check response code after adding artifact", errorInfo.getCode(), importResponse.getErrorCode()); - - String[] split = resourceFromImport.getLastUpdaterFullName().split(" "); - String firstName = split[0]; - String lastName = split[1]; - List<String> variables = Arrays.asList(resourceFromImport.getName(), "resource", firstName, lastName, - resourceFromImport.getLastUpdaterUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_IN_CHECKOUT_STATE.name(), variables, - importResponse.getResponse()); - - } - - @Test(enabled = false) - public void importNewResource_nameSpace_vf() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4testVF", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResponse.getResponse()); - assertTrue(resourceRespJavaObject.getResourceType().equals(ResourceTypeEnum.VF)); - - } - - @Test - public void importNewResource_nameSpace_vfc() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4testVFC", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResponse.getResponse()); - assertTrue(resourceRespJavaObject.getResourceType().equals(ResourceTypeEnum.VFC)); - } - - @Test - public void importNewResource_nameSpace_vl() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4testVL", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResponse.getResponse()); - assertTrue(resourceRespJavaObject.getResourceType().equals(ResourceTypeEnum.VL)); - - } - - @Test - public void importNewResource_nameSpace_cp() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4testCP", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResponse.getResponse()); - assertTrue(resourceRespJavaObject.getResourceType().equals(ResourceTypeEnum.CP)); - } - - @Test - public void importNewResource_nameSpace_unknown() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4test", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResponse.getResponse()); - assertTrue(resourceRespJavaObject.getResourceType().equals(ResourceTypeEnum.VFC)); - - } - - @Test - public void importNewResource_MissingNameSpace() throws Exception { - RestResponse importResponse = ImportRestUtils.importNewResourceByName("importResource4testMissingNameSpace", - UserRoleEnum.DESIGNER); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 400, importResponse.getErrorCode().intValue()); - - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existInCheckOut() throws Exception { - - // import new resource - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in CHECKOUT state - - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 200, importResponse.getErrorCode().intValue()); - - // validate response - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromImport); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceRespJavaObject.getUniqueId()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // validate - ResourceValidationUtils.validateModelObjects(resourceFromImport, resourceFromGet); - - // validate audit - resourceDetails.setVersion(resourceDetails.getVersion()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails); - - auditAction = "ResourceImport"; - resourceVersion = "0.1"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existIn_CheckIn_state() throws Exception { - - // import new resource - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - // checkIn resource - - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in CHECKIN state - - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 200, importResponse.getErrorCode().intValue()); - - // validate response - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromImport); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceRespJavaObject.getUniqueId()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // validate - ResourceValidationUtils.validateModelObjects(resourceFromImport, resourceFromGet); - - // validate audit - resourceDetails.setVersion(resourceDetails.getVersion()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails); - - resourceVersion = "0.2"; - auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void importNewResource_existIn_Ready4cert_state_performByTester() throws Exception { - // import new resource - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - // add mandatory artifacts - // // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(checkInResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(checkInResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in CHECKIN state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.TESTER); - - // validate response - resourceVersion = resourceDetails.getVersion(); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - assertNotNull("check response object is not null after create resouce", importResponse); - assertNotNull("check error code exists in response after create resource", importResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), importResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - importResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setResourceName(""); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.TESTER.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.TESTER.getUserName()); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existIn_Ready4cert_state_performByDesigner() throws Exception { - // import new resource - - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.DESIGNER); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_SENT_FOR_CERTIFICATION.name()); - assertNotNull("check response object is not null after create resouce", importResponse); - assertNotNull("check error code exists in response after create resource", importResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), importResponse.getErrorCode()); - String[] split = resourceFromGet.getLastUpdaterFullName().split(" "); - String firstName = split[0]; - String lastName = split[1]; - List<String> variables = Arrays.asList(resourceFromGet.getName(), "resource", firstName, lastName, - resourceFromGet.getLastUpdaterUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_SENT_FOR_CERTIFICATION.name(), variables, - importResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.DESIGNER.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.DESIGNER.getUserName()); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.READY_FOR_CERTIFICATION).toString()); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existIn_Ready4cert_state_performByAdmin() throws Exception { - - // import new resource - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.ADMIN); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 200, importResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - resourceVersion = resourceDetails.getVersion(); - // resourceVersion="0.2"; - - // validate response - Resource resourceFromImport = ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - assertNotNull(resourceFromImport); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - // validate get response - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceRespJavaObject.getUniqueId()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // validate - ResourceValidationUtils.validateModelObjects(resourceFromImport, resourceFromGet); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setStatus("200"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void importNewResource_existIn_CerInProgress_state_performByTester() throws Exception { - - // import new resource - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // startCert - RestResponse startCert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertNotNull("check response object is not null after resource request start certification", startCert); - assertEquals("Check response code after checkout resource", 200, startCert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(startCert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(startCert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.TESTER); - - // validate response - resourceVersion = resourceDetails.getVersion(); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - assertNotNull("check response object is not null after create resouce", importResponse); - assertNotNull("check error code exists in response after create resource", importResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), importResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - importResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setResourceName(""); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.TESTER.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.TESTER.getUserName()); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existIn_CerInProgress_state_performByDesigner() throws Exception { - - User sdncAdminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // import new resource - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // startCert - RestResponse startCert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertNotNull("check response object is not null after resource request start certification", startCert); - assertEquals("Check response code after checkout resource", 200, startCert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(startCert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(startCert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - resourceVersion = resourceDetails.getVersion(); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.DESIGNER); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()); - assertNotNull("check response object is not null after create resouce", importResponse); - assertNotNull("check error code exists in response after create resource", importResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), importResponse.getErrorCode()); - List<String> variables = Arrays.asList(resourceDetails.getName(), "resource", sdncAdminUser.getFirstName(), - sdncAdminUser.getLastName(), sdncAdminUser.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name(), - variables, importResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.DESIGNER.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.DESIGNER.getUserName()); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.CERTIFICATION_IN_PROGRESS).toString()); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - // TODO DE171337 - @Test(enabled = false) - public void importNewResource_existIn_CerInProgress_state_performByAdmin() throws Exception { - - User sdncAdminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // import new resource - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // checkIn resource - resourceVersion = resourceDetails.getVersion(); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - // startCert - RestResponse startCert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertNotNull("check response object is not null after resource request start certification", startCert); - assertEquals("Check response code after checkout resource", 200, startCert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(startCert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(startCert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - resourceVersion = resourceDetails.getVersion(); - - // clean audit - DbUtils.cleanAllAudits(); - - // import new resource while resource already exist in other state - importResponse = ImportRestUtils.importNewResourceByName("importResource4test", UserRoleEnum.ADMIN); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name()); - assertNotNull("check response object is not null after create resouce", importResponse); - assertNotNull("check error code exists in response after create resource", importResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), importResponse.getErrorCode()); - List<String> variables = Arrays.asList(resourceDetails.getName(), "resource", sdncAdminUser.getFirstName(), - sdncAdminUser.getLastName(), sdncAdminUser.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_IN_CERT_IN_PROGRESS_STATE.name(), - variables, importResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "ResourceImport"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.ADMIN.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.ADMIN.getUserName()); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.CERTIFICATION_IN_PROGRESS).toString()); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - // TODO DE171337 - // @Test(enabled = false) - // public void - // importNewResource_existIn_Certified_state_chnage_reqAndCap_byDesigner() - // throws Exception{ - // - // // Andrey - set default artifact details - // ArtifactDefinition artifactDefinition = - // artifactUtils.constructDefaultArtifactInfo(); - // - // // import new resource - // RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - // assertNotNull("check response object is not null after import resource", - // importResponse); - // assertNotNull("check error code exists in response after import - // resource", importResponse.getErrorCode()); - // assertEquals("Check response code after import resource", 201, - // importResponse.getErrorCode().intValue()); - // String resourceId = - // ResponseParser.getUniqueIdFromResponse(importResponse); - // resourceDetails = - // ResponseParser.parseToObject(importResponse.getResponse(), - // ResourceReqDetails.class); - // resourceVersion = resourceDetails.getVersion(); - // RestResponse resourceGetResponse = - // ResourceRestUtils.getResource(sdncModifierDetails, - // resourceDetails.getUniqueId()); - // assertEquals("Check response code after get resource", 200, - // resourceGetResponse.getErrorCode().intValue()); - // Resource resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - // assertNotNull(resourceFromGet); - // - // // add mandatory artifacts - // // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - // resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - // resourceDetails.getUniqueId()); - // assertEquals("Check response code after get resource", 200, - // resourceGetResponse.getErrorCode().intValue()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - // assertNotNull(resourceFromGet); - // resourceDetails = - // ResponseParser.parseToObject(importResponse.getResponse(), - // ResourceReqDetails.class); - // resourceDetails.setVersion(resourceFromGet.getVersion()); - // - // // add artifact - // artifactDefinition.setArtifactName(artifactName1); - // ArtifactRestUtils.addInformationalArtifactToResource(resourceDetails, - // sdncModifierDetails, resourceVersion , artifactDefinition); - // - // // add artifact - // artifactDefinition.setArtifactName(artifactName2); - // resourceUtils.add_artifact(resourceDetails, sdncModifierDetails, - // resourceVersion , artifactDefinition); - // - // // add interface - // artifactDefinition.setArtifactName(interfaceArtifactName); - // ResourceRestUtils.add_interface(resourceDetails, sdncModifierDetails, - // resourceVersion , artifactDefinition); - // - // //construct fields for validation - // resourceVersion="1.0"; - // - // ResourceRespJavaObject resourceRespJavaObject = - // Convertor.constructFieldsForRespValidation(resourceDetails, - // resourceVersion); - // ArrayList<String> artifacts = new ArrayList<String>(); - // - // artifacts.add(resourceId+":"+artifactName1); - // artifacts.add(resourceId+":"+artifactName2); - // resourceRespJavaObject.setArtifacts(artifacts); - // ArrayList<String> interfaces = new ArrayList<String>(); - // - // interfaces.add(interfaze); - // resourceRespJavaObject.setInterfaces(interfaces); - // - // // checkIn resource - // resourceVersion = resourceDetails.getVersion(); - // String checkinComment = "good checkin"; - // String checkinComentJson = "{\"userRemarks\": \""+checkinComment+"\"}"; - // RestResponse checkInResponse = - // LifecycleRestUtils.changeResourceState(resourceDetails, - // sdncModifierDetails, resourceVersion, LifeCycleStatesEnum.CHECKIN, - // checkinComentJson); - // assertNotNull("check response object is not null after import resource", - // checkInResponse); - // assertEquals("Check response code after checkout resource", 200, - // checkInResponse.getErrorCode().intValue()); - // - // // req4cert resource - // RestResponse request4cert = - // LifecycleRestUtils.changeResourceState(resourceDetails, - // sdncModifierDetails, resourceVersion, - // LifeCycleStatesEnum.CERTIFICATIONREQUEST); - // assertNotNull("check response object is not null after resource request - // for certification", request4cert); - // assertEquals("Check response code after checkout resource", 200, - // request4cert.getErrorCode().intValue()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - // assertNotNull(resourceFromGet); - // resourceDetails = - // ResponseParser.parseToObject(request4cert.getResponse(), - // ResourceReqDetails.class); - // resourceDetails.setVersion(resourceFromGet.getVersion()); - // - // // startCert - // RestResponse startCert = - // LifecycleRestUtils.changeResourceState(resourceDetails, - // sdncModifierDetails, resourceVersion, - // LifeCycleStatesEnum.STARTCERTIFICATION); - // assertNotNull("check response object is not null after resource request - // start certification", startCert); - // assertEquals("Check response code after checkout resource", 200, - // startCert.getErrorCode().intValue()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(startCert.getResponse()); - // assertNotNull(resourceFromGet); - // resourceDetails = ResponseParser.parseToObject(startCert.getResponse(), - // ResourceReqDetails.class); - // resourceDetails.setVersion(resourceFromGet.getVersion()); - // - // // certify - // RestResponse certify = - // LifecycleRestUtils.changeResourceState(resourceDetails, - // sdncModifierDetails, resourceVersion, LifeCycleStatesEnum.CERTIFY); - // assertNotNull("check response object is not null after resource request - // certify", certify); - // assertEquals("Check response code after certify resource", 200, - // certify.getErrorCode().intValue()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(certify.getResponse()); - // assertNotNull(resourceFromGet); - // resourceDetails = ResponseParser.parseToObject(certify.getResponse(), - // ResourceReqDetails.class); - // resourceDetails.setVersion(resourceFromGet.getVersion()); - // - // // clean audit - // DbUtils.cleanAllAudits(); - // - // // change resource details - // - // // import new resource while resource already exist in other state - // importResponse = - // ImportRestUtils.importNewResourceByName("importResource4testUpdateWithoutReqCap", - // UserRoleEnum.ADMIN); - // assertNotNull("check response object is not null after import resource", - // importResponse); - // assertNotNull("check error code exists in response after import - // resource", importResponse.getErrorCode()); - // assertEquals("Check response code after import resource", 200, - // importResponse.getErrorCode().intValue()); - // resourceDetails = - // ResponseParser.parseToObject(importResponse.getResponse(), - // ResourceReqDetails.class); - // resourceVersion = resourceDetails.getVersion(); - // resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - // resourceDetails.getUniqueId()); - // assertEquals("Check response code after get resource", 200, - // resourceGetResponse.getErrorCode().intValue()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - // assertNotNull(resourceFromGet); - // - // // validate response - // Resource resourceFromImport = - // ResponseParser.convertResourceResponseToJavaObject(importResponse.getResponse()); - // assertNotNull(resourceFromImport); - // - // resourceDetails = - // ResponseParser.parseToObject(importResponse.getResponse(), - // ResourceReqDetails.class); - // resourceRespJavaObject = - // Convertor.constructFieldsForRespValidation(resourceDetails); - // resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // - // // validate get response - // resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - // resourceRespJavaObject.getUniqueId()); - // resourceFromGet = - // ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - // assertNotNull(resourceFromGet); - // - // // validate - // ResourceValidationUtils.validateModelObjects(resourceFromImport, - // resourceFromGet); - // - // // validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // Convertor.constructFieldsForAuditValidation(resourceDetails, - // resourceVersion); - // auditAction="ResourceImport"; - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setPrevVersion(resourceVersion); - // expectedResourceAuditJavaObject.setStatus("200"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // expectedResourceAuditJavaObject.setToscaNodeType(resourceFromGet.getToscaResourceName()); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // } - - @Test - public void importNewResource_uuidTest() throws Exception { - RestResponse importResponse = importNewResource(UserRoleEnum.ADMIN); - - assertNotNull("check response object is not null after import resource", importResponse); - assertNotNull("check error code exists in response after import resource", importResponse.getErrorCode()); - assertEquals("Check response code after import resource", 201, importResponse.getErrorCode().intValue()); - String oldUuid = ResponseParser.getValueFromJsonResponse(importResponse.getResponse(), "uuid"); - - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceVersion = resourceDetails.getVersion(); - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - Resource resourceFromGet = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - // add mandatory artifacts - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // resourceGetResponse); - resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertEquals("Check response code after get resource", 200, resourceGetResponse.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(importResponse.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - "0.1", LifeCycleStatesEnum.CHECKIN); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - String newUuid = ResponseParser.getValueFromJsonResponse(checkInResponse.getResponse(), "uuid"); - assertTrue(ResourceValidationUtils.validateUuidAfterChangingStatus(oldUuid, newUuid)); - - // req4cert resource - RestResponse request4cert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertNotNull("check response object is not null after resource request for certification", request4cert); - assertEquals("Check response code after checkout resource", 200, request4cert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(request4cert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(request4cert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - String newUuid2 = ResponseParser.getValueFromJsonResponse(request4cert.getResponse(), "uuid"); - assertTrue(ResourceValidationUtils.validateUuidAfterChangingStatus(oldUuid, newUuid2)); - - // startCert - RestResponse startCert = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertNotNull("check response object is not null after resource request start certification", startCert); - assertEquals("Check response code after checkout resource", 200, startCert.getErrorCode().intValue()); - resourceFromGet = ResponseParser.convertResourceResponseToJavaObject(startCert.getResponse()); - assertNotNull(resourceFromGet); - resourceDetails = ResponseParser.parseToObject(startCert.getResponse(), ResourceReqDetails.class); - resourceDetails.setVersion(resourceFromGet.getVersion()); - - String newUuid3 = ResponseParser.getValueFromJsonResponse(startCert.getResponse(), "uuid"); - assertTrue(ResourceValidationUtils.validateUuidAfterChangingStatus(oldUuid, newUuid3)); - - RestResponse certify = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, "0.1", - LifeCycleStatesEnum.CERTIFY); - assertNotNull("check response object is not null after import resource", certify); - assertEquals("Check response code after checkout resource", 200, certify.getErrorCode().intValue()); - - String newUuid4 = ResponseParser.getValueFromJsonResponse(certify.getResponse(), "uuid"); - assertTrue(ResourceValidationUtils.validateUuidAfterChangingStatus(oldUuid, newUuid4)); - - RestResponse checkoutResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, - "1.0", LifeCycleStatesEnum.CHECKOUT); - assertNotNull("check response object is not null after import resource", checkInResponse); - assertEquals("Check response code after checkout resource", 200, checkInResponse.getErrorCode().intValue()); - - String newUuid5 = ResponseParser.getValueFromJsonResponse(checkoutResponse.getResponse(), "uuid"); - assertFalse(ResourceValidationUtils.validateUuidAfterChangingStatus(oldUuid, newUuid5)); - } - - @Test - public void importNewResource_propertiesMapInternalUrlCredential() throws Exception { - String folderName = "validateProporties_typeMap_valueUrlCredential"; - RestResponse importResponse = ImportRestUtils.importNewResourceByName(folderName, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.parseToObjectUsingMapper(importResponse.getResponse(), Resource.class); - - List<PropertyDefinition> properties = resource.getProperties(); - assertEquals("check properties size", 3, properties.size()); - - PropertyDefinition propertyDefinition = properties.stream().filter(p -> p.getName().equals("validation_test")) - .findFirst().get(); - String defaultValue = propertyDefinition.getDefaultValue(); - - Map mapValue = gson.fromJson(defaultValue, Map.class); - assertEquals("check Map value size", 2, mapValue.size()); - checkMapValues(mapValue, "key", 1, null); - checkMapValues(mapValue, "key", 2, null); - - System.err.println("import Resource " + "<" + folderName + ">" + "response: " + importResponse.getErrorCode()); - - } - - @Test - public void importNewResource_propertiesListInternalUrlCredential() throws Exception { - String folderName = "validateProporties_typeList_valueUrlCredential"; - RestResponse importResponse = ImportRestUtils.importNewResourceByName(folderName, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.parseToObjectUsingMapper(importResponse.getResponse(), Resource.class); - - List<PropertyDefinition> properties = resource.getProperties(); - assertEquals("check properties size", 3, properties.size()); - - PropertyDefinition propertyDefinition = properties.stream().filter(p -> p.getName().equals("validation_test")) - .findFirst().get(); - String defaultValue = propertyDefinition.getDefaultValue(); - - List listValue = gson.fromJson(defaultValue, List.class); - assertEquals("check List value size", 2, listValue.size()); - checkListValues(listValue.get(0), 1, SPECIAL_CHARACTERS); - checkListValues(listValue.get(1), 2, SPECIAL_CHARACTERS); - - // Verify attributes - List<PropertyDefinition> attributes = resource.getAttributes(); - - assertEquals("check properties size", 2, attributes.size()); - - // Verify attribute from type map - PropertyDefinition attributeMapDefinition = attributes.stream() - .filter(p -> p.getName().equals("validation_test_map")).findFirst().get(); - String defaultMapValue = attributeMapDefinition.getDefaultValue(); - Map attributeMapValue = gson.fromJson(defaultMapValue, Map.class); - assertEquals("check Map value size", 2, attributeMapValue.size()); - checkMapValues(attributeMapValue, "key", 1, SPECIAL_CHARACTERS); - checkMapValues(attributeMapValue, "key", 2, SPECIAL_CHARACTERS); - - // Verify attribute from type list - PropertyDefinition attributeListDefinition = attributes.stream() - .filter(p -> p.getName().equals("validation_test_list")).findFirst().get(); - String defaultListValue = attributeListDefinition.getDefaultValue(); - - List attributeListValue = gson.fromJson(defaultListValue, List.class); - assertEquals("check List value size", 2, attributeListValue.size()); - checkListValues(attributeListValue.get(0), 1, SPECIAL_CHARACTERS); - checkListValues(attributeListValue.get(1), 2, SPECIAL_CHARACTERS); - - System.err.println("import Resource " + "<" + folderName + ">" + "response: " + importResponse.getErrorCode()); - - } - - private void checkListValues(Object object, int index, String suffix) { - - Map map = (Map) object; - assertEquals("check Map protocol value", "protocol" + index + (suffix == null ? "" : suffix), - map.get("protocol")); - assertEquals("check Map token value", "token" + index, map.get("token")); - } - - // @Test - public void importNewResource_validateProporties_typeTestDataType() throws Exception { - String folderName = "validateProporties_typeTestDataType"; - RestResponse importResponse = ImportRestUtils.importNewResourceByName(folderName, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.parseToObjectUsingMapper(importResponse.getResponse(), Resource.class); - - } - - private void checkMapValues(Map mapValue, String key, int index, String suffix) { - - Map map1 = (Map) mapValue.get(key + index); - assertEquals("check Map protocol value", "protocol" + index + (suffix == null ? "" : suffix), - map1.get("protocol")); - assertEquals("check Map token value", "token" + index, map1.get("token")); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaCapabilitiesWithProperties.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaCapabilitiesWithProperties.java deleted file mode 100644 index 3d7c81abae..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaCapabilitiesWithProperties.java +++ /dev/null @@ -1,416 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang3.tuple.ImmutablePair; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -/** - * US US730518 Story [BE] - TOSCA capabilities with properties - import "As a - * resource designer, I would like to add my VFC capabilities with properties." - * - * @author ns019t - * - */ -public class ImportToscaCapabilitiesWithProperties extends ComponentBaseTest { - @Rule - public static TestName name = new TestName(); - - Gson gson = new Gson(); - - /** - * public Constructor ImportToscaCapabilitiesWithProperties - */ - public ImportToscaCapabilitiesWithProperties() { - super(name, ImportToscaCapabilitiesWithProperties.class.getName()); - } - - /** - * String constants - */ - public static String propertyForTestName = "propertyfortest"; - public static String rootPath = System.getProperty("user.dir"); - public static String scalable = "tosca.capabilities.Scalable"; - public static String container = "tosca.capabilities.Container"; - public static String minInstances = "min_instances"; - public static String userDefinedNodeYaml = "mycompute.yml"; - - /** - * Capability Type - capability type on the graph should already have - * properties modeled on it. please verify. The import of the capability - * types should support adding those properties. when importing, validate - * name uniqueness between the capability's properties see capability - * tosca.capabilities.Container - * - * Acceptance Criteria: validate capability type properties (for example, - * compute have capability Container -> the properties of this capability - * should be in the Json response) - * - * @throws IOException - */ - @Test - public void validateCapabilityTypePropertiesSucceed() throws IOException { - User user = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse createResourceRes = ResourceRestUtils.getResourceByNameAndVersion(user.getUserId(), "Compute", - "1.0"); - BaseRestUtils.checkSuccess(createResourceRes); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(createResourceRes.getResponse()); - Map<String, List<CapabilityDefinition>> capabilities = resource.getCapabilities(); - assertEquals(capabilities.size(), 6); - - CapabilityDefinition capability = capabilities.get(scalable).get(0); - List<ComponentInstanceProperty> properties = capability.getProperties(); - assertEquals(properties.size(), 3); - assertTrue(!properties.stream().filter(p -> p.getName().equalsIgnoreCase(propertyForTestName)).findAny() - .isPresent()); - - ComponentInstanceProperty originalProperty = properties.stream() - .filter(p -> p.getName().equalsIgnoreCase(minInstances)).findAny().get(); - assertEquals(originalProperty.getType(), "integer"); - assertEquals(originalProperty.getDefaultValue(), "1"); - - capability = capabilities.get(container).get(0); - properties = capability.getProperties(); - assertEquals(properties.size(), 4); - } - - /** - * Capability Definition on VFC / CP / VL - properties can also be defined - * on the capability when the capability is declared. (property definition - * with default value) If the property name (case insensitive) already - * defined on the capability type, it overrides the capability from the - * capability type Import of VFC / CP /VL should support adding properties - * to the capability. when importing, validate name uniqueness between the - * capability's properties - * - * Acceptance Criteria: import node type with capability definition on it. - * use the attached "myCompute" - * - * @throws Exception - */ - @Test - public void importNodeTypeWithCapabilityWithPropertiesFromYmlSucceed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - RestResponse createResource = importUserDefinedNodeType(userDefinedNodeYaml, sdncModifierDetails, - resourceDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - Map<String, List<CapabilityDefinition>> capabilities = resource.getCapabilities(); - assertEquals(capabilities.size(), 6); - - CapabilityDefinition capability = capabilities.get(scalable).get(0); - List<ComponentInstanceProperty> properties = capability.getProperties(); - assertEquals(properties.size(), 4); - - ComponentInstanceProperty newProperty = properties.stream() - .filter(p -> p.getName().equalsIgnoreCase(propertyForTestName)).findAny().get(); - assertEquals(newProperty.getType(), "string"); - assertEquals(newProperty.getDescription(), "test"); - assertEquals(newProperty.getDefaultValue(), "success"); - - ComponentInstanceProperty overriddenProperty = properties.stream() - .filter(p -> p.getName().equalsIgnoreCase(minInstances)).collect(Collectors.toList()).get(0); - assertEquals(overriddenProperty.getType(), "integer"); - assertEquals(overriddenProperty.getDefaultValue(), "3"); - - } - - /** - * importNodeTypeWithCapabilityWithPropertiesFromYmlFailed - * - * @throws Exception - */ - @Test - public void importNodeTypeWithCapabilityWithPropertiesFromYmlFailed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - RestResponse createResource = importUserDefinedNodeType("mycompute_failed.yml", sdncModifierDetails, - resourceDetails); - BaseRestUtils.checkErrorMessageResponse(createResource, ActionStatus.PROPERTY_NAME_ALREADY_EXISTS); - } - - /** - * Capability Assignment (on node_template / resource instance) - should - * support assignment of the property (property value). On the resource - * instance level, value can be assigned to either properties that are - * defined on the capability type or on the capability definition. When - * importing a VF - the node_template can have capability's property value. - * It should be imported and saved on the graph Acceptance Criteria: import - * a VF that assign values to property of capability that was defined on the - * capability type - * - * @throws Exception - */ - @Test - public void importResourceWithCapabilityWithPropertiesOverridingCapTypePropertiesSucceed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "vf_with_cap_prop_override_cap_type_prop.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - Path path = Paths.get(rootPath + "/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - - List<ImmutablePair<String, String>> propertyNamesValues = new ArrayList<>(); - propertyNamesValues.add(new ImmutablePair<String, String>("num_cpus", "2")); - propertyNamesValues.add(new ImmutablePair<String, String>("mem_size", "2000 MB")); - checkResource(createResource, 8, container, "DBMS", propertyNamesValues); - - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - resourceDetails2.setCsarUUID("vf_with_cap_prop_override_cap_type_prop.csar"); - resourceDetails2.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - - checkResource(createResource, 8, container, "DBMS", propertyNamesValues); - } - - /** - * importResourceWithCapabilityWithPropertiesOverridingCapTypePropertiesFailed - * - * @throws Exception - */ - @Test - public void importResourceWithCapabilityWithPropertiesOverridingCapTypePropertiesFailed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String payloadName = "vf_with_cap_prop_override_cap_type_prop_failed.csar"; - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - Path path = Paths - .get(rootPath + "/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop_failed.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkErrorMessageResponse(createResource, ActionStatus.INVALID_PROPERTY); - - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - resourceDetails2.setCsarUUID("vf_with_cap_prop_override_cap_type_prop_failed.csar"); - resourceDetails2.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - BaseRestUtils.checkErrorMessageResponse(createResource, ActionStatus.INVALID_PROPERTY); - - } - - /** - * Capability Assignment (on node_template / resource instance) - should - * support assignment of the property (property value). On the resource - * instance level, value can be assigned to either properties that are - * defined on the capability type or on the capability definition. When - * importing a VF - the node_template can have capability's property value. - * It should be imported and saved on the graph Acceptance Criteria: import - * a VF that assign values to property of capability that was defined on the - * capability definition (on the node type) - * - * @throws Exception - */ - @Test - public void importResourceWithCapabilityWithPropertiesOverridingNodeTypeCapPropertiesSucceed() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - RestResponse createResource = importUserDefinedNodeType(userDefinedNodeYaml, sdncModifierDetails, - resourceDetails); - BaseRestUtils.checkCreateResponse(createResource); - Resource userDefinedNodeType = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), - Resource.class); - - String payloadName = "vf_with_cap_prop_override_cap_type_prop1.csar"; - resourceDetails = ElementFactory.getDefaultImportResource(); - Path path = Paths.get(rootPath + "/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - - List<ImmutablePair<String, String>> propertyNamesValues = new ArrayList<>(); - propertyNamesValues.add(new ImmutablePair<String, String>("num_cpus", "2")); - propertyNamesValues.add(new ImmutablePair<String, String>("mem_size", "2000 MB")); - checkResource(createResource, 8, container, "DBMS", propertyNamesValues); - - List<ImmutablePair<String, String>> propertyNamesValues1 = new ArrayList<>(); - propertyNamesValues1.add(new ImmutablePair<String, String>(propertyForTestName, "success_again")); - propertyNamesValues1.add(new ImmutablePair<String, String>(minInstances, "4")); - checkResource(createResource, 8, scalable, userDefinedNodeType.getName(), propertyNamesValues1); - - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - resourceDetails2.setCsarUUID("vf_with_cap_prop_override_cap_type_prop1.csar"); - resourceDetails2.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - - checkResource(createResource, 8, container, "DBMS", propertyNamesValues); - checkResource(createResource, 8, scalable, userDefinedNodeType.getName(), propertyNamesValues1); - - } - - /** - * importResourceWithCapabilityWithPropertiesOverridingNodeTypeCapPropertiesFailed - * - * @throws Exception - */ - @Test - public void importResourceWithCapabilityWithPropertiesOverridingNodeTypeCapPropertiesFailed() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - RestResponse createResource = importUserDefinedNodeType(userDefinedNodeYaml, sdncModifierDetails, - resourceDetails); - BaseRestUtils.checkCreateResponse(createResource); - - String payloadName = "vf_with_cap_prop_override_cap_type_prop1_failed.csar"; - resourceDetails = ElementFactory.getDefaultImportResource(); - Path path = Paths - .get(rootPath + "/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1_failed.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.PROPERTY_NAME_ALREADY_EXISTS, - propertyForTestName); - - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - resourceDetails2.setCsarUUID("vf_with_cap_prop_override_cap_type_prop1_failed.csar"); - resourceDetails2.setResourceType(ResourceTypeEnum.VF.name()); - createResource = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - BaseRestUtils.checkErrorResponse(createResource, ActionStatus.PROPERTY_NAME_ALREADY_EXISTS, - propertyForTestName); - } - - private RestResponse importUserDefinedNodeType(String payloadName, User sdncModifierDetails, - ImportReqDetails resourceDetails) throws Exception { - - Path path = Paths.get(rootPath + "/src/test/resources/CI/csars/" + payloadName); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VFC.name()); - return ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - } - - // TODO Tal: Since Cashing change partial resource returned that causes null - // pointer exception - // commented out till fixing - private void checkResource(RestResponse createResource, int capNum, String capType, String riName, - List<ImmutablePair<String, String>> propertyNamesValues) { - Resource resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - Map<String, List<CapabilityDefinition>> capabilities = resource.getCapabilities(); - // TODO Tal: Since Cashing change partial resource returned that causes - // null pointer exception - /* assertEquals(capabilities.size(), capNum); */ - /* - * List<CapabilityDefinition> capabilitesContainer = - * capabilities.get(capType); - */ - - ComponentInstance resourceRI = resource.getComponentInstances().stream() - .filter(ri -> ri.getComponentName().equals(riName)).collect(Collectors.toList()).get(0); - // TODO Tal: Since Cashing change partial resource returned that causes - // null pointer exception - /* - * CapabilityDefinition capabilityFromContainer = - * capabilitesContainer.stream() - * .filter(cap->cap.getOwnerId().equals(resourceRI.getUniqueId())). - * collect(Collectors.toList()).get(0); - */ - - CapabilityDefinition capabilityFromRI = resourceRI.getCapabilities().get(capType).get(0); - for (ImmutablePair<String, String> propValuePair : propertyNamesValues) { - // TODO Tal: Since Cashing change partial resource returned that - // causes null pointer exception - /* - * Map<String, ComponentInstanceProperty> propertiesFromContainer = - * capabilityFromContainer.getProperties() - * .stream().filter(p->p.getName().equalsIgnoreCase(propValuePair. - * getLeft())) .collect(Collectors.toMap(p->p.getName(), p->p)); - */ - - List<ComponentInstanceProperty> propertiesFromRI = capabilityFromRI.getProperties().stream() - .filter(p -> p.getName().equalsIgnoreCase(propValuePair.getLeft())).collect(Collectors.toList()); - // TODO Tal: Since Cashing change partial resource returned that - // causes null pointer exception - /* - * for(ComponentInstanceProperty riProp : propertiesFromRI){ - * assertTrue(propertiesFromContainer.containsKey(riProp.getName())) - * ; ComponentInstanceProperty containerProp = - * propertiesFromContainer.get(riProp.getName()); - * assertEquals(riProp.getValue(), containerProp.getValue()); - * if(riProp.getName().equals(propValuePair.getLeft())) - * assertEquals(riProp.getValue(), propValuePair.getRight()); - * - * } - */ - } - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaResourceTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaResourceTest.java deleted file mode 100644 index 7a8a764e2e..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportToscaResourceTest.java +++ /dev/null @@ -1,2893 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_CREATED; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.apache.http.client.ClientProtocolException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition; -import org.openecomp.sdc.be.datatypes.elements.SchemaDefinition; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.CapReqDef; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.CapabilityRequirementRelationship; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.PropertyDefinition; -import org.openecomp.sdc.be.model.RelationshipImpl; -import org.openecomp.sdc.be.model.RelationshipInfo; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.tosca.ToscaPropertyType; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.Decoder; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.ImportUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.common.api.ToscaNodeTypeInfo; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -/** - * - * @author Andrey + Pavel + Shay - * - */ - -public class ImportToscaResourceTest extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(ImportToscaResourceTest.class.getName()); - protected Utils utils = new Utils(); - - public ImportToscaResourceTest() { - super(name, ImportToscaResourceTest.class.getName()); - } - - public ImportReqDetails importReqDetails; - protected static User sdncUserDetails; - protected static User testerUser; - protected String testResourcesPath; - protected ResourceReqDetails resourceDetails; - private int actualNumOfReqOrCap; - - @Rule - public static TestName name = new TestName(); - - @BeforeMethod - public void before() throws Exception { - importReqDetails = ElementFactory.getDefaultImportResource(); - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - testerUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - resourceDetails = ElementFactory.getDefaultResource(); - String sourceDir = config.getResourceConfigDir(); - final String workDir = "importToscaResourceByCreateUrl"; - testResourcesPath = sourceDir + File.separator + workDir; - actualNumOfReqOrCap = 0; - } - - @DataProvider - private static final Object[][] getYmlWithInValidListProperties() throws IOException, Exception { - return new Object[][] { { "ListPropertyFalure02.yml", "[false,\"truee\"]", "boolean" }, - { "ListPropertyFalure03.yml", "[false,3]", "boolean" }, - { "ListPropertyFalure04.yml", "[false,3.56]", "boolean" }, - { "ListPropertyFalure05.yml", "[10000,3.56]", "integer" }, - { "ListPropertyFalure06.yml", "[10000,\"aaaa\"]", "integer" }, - { "ListPropertyFalure07.yml", "[10000,true]", "integer" }, - { "ListPropertyFalure08.yml", "[10.5,true]", "float" }, - { "ListPropertyFalure09.yml", "[10.5,\"asdc\"]", "float" }, // type - // float - { "ListPropertyFalure11.yml", "[10.5,\"500.0@\"]", "float" }, // property - // list - // float - // type - // contain - // @ - // in - // default - // value - { "ListPropertyFalure12.yml", "[10000,\"3#\"]", "integer" }, // property - // list - // integer - // type - // contain - // # - // in - // default - // value - { "ListPropertyFalure13.yml", "[false,\"true%\"]", "boolean" }, // property - // list - // boolean - // type - // contain - // % - // in - // default - // value - { "ListPropertyFalure14.yml", "[false,\"falsee\",true]", "boolean" }, - { "ListPropertyFalure15.yml", "[10.5,\"10.6x\",20.5,30.5]", "float" } // float - // with - // value - // 10.6x - // instead - // 10.6f - - }; - } - - @DataProvider - private static final Object[][] getYmlWithInValidMapProperties() throws IOException, Exception { - return new Object[][] { { "MapPropertyFalure02.yml", "[false,\"truee\"]", "boolean" }, - { "MapPropertyFalure03.yml", "[false,3]", "boolean" }, - { "MapPropertyFalure04.yml", "[false,3.56]", "boolean" }, - { "MapPropertyFalure05.yml", "[10000,3.56]", "integer" }, - { "MapPropertyFalure06.yml", "[10000,\"aaaa\"]", "integer" }, - { "MapPropertyFalure07.yml", "[10000,true]", "integer" }, - { "MapPropertyFalure08.yml", "[10.5,true]", "float" }, - { "MapPropertyFalure09.yml", "[10.5,\"asdc\"]", "float" }, // type - // float - { "MapPropertyFalure11.yml", "[10.5,\"500.0@\"]", "float" }, // property - // list - // float - // type - // contain - // @ - // in - // default - // value - { "MapPropertyFalure12.yml", "[10000,\"3#\"]", "integer" }, // property - // list - // integer - // type - // contain - // # - // in - // default - // value - { "MapPropertyFalure13.yml", "[false,\"true%\"]", "boolean" }, // property - // list - // boolean - // type - // contain - // % - // in - // default - // value - { "MapPropertyFalure14.yml", "[false,\"falsee\",true]", "boolean" }, - { "MapPropertyFalure15.yml", "[10.5,\"10.6x\",20.5,30.5]", "float" } // float - // with - // value - // 10.6x - // instead - // 10.6f - - }; - } - - @DataProvider - private static final Object[][] getYmlWithInValidOccurrences() throws IOException, Exception { - return new Object[][] { { "occurencyFalure01.yml" }, // requirements [2 - // , 0] - { "occurencyFalure02.yml" }, // requirements [-1, 2] - { "occurencyFalure03.yml" }, // requirements [1 ,-2] - { "occurencyFalure05.yml" }, // requirements MAX occurrences not - // exist [ 1 , ] - { "occurencyFalure06.yml" }, // requirements [ 0 , 0 ] - { "occurencyFalure08.yml" }, // requirements [ 1.0 , 2.0 ] - { "occurencyFalure09.yml" }, // requirements [ "1" , "2" ] - { "occurencyFalure10.yml" }, // requirements [ ] - { "occurencyFalure11.yml" }, // requirements [ UNBOUNDED , - // UNBOUNDED ] - { "occurencyFalure31.yml" }, // capability [ 2, 1] - { "occurencyFalure32.yml" }, // capability [-1, 2] - { "occurencyFalure33.yml" }, // capability [1, -2] - { "occurencyFalure35.yml" }, // capability MAX occurrences not - // exist [ 1 , ] - { "occurencyFalure36.yml" }, // capability [ 0 , 0 ] - { "occurencyFalure38.yml" }, // capability [ 1.0 , 2.0 ] - { "occurencyFalure39.yml" }, // capability [ "1" , "2" ] - { "occurencyFalure40.yml" }, // capability [ ] - { "occurencyFalure41.yml" } // capability [ UNBOUNDED , - // UNBOUNDED ] - }; - } - - @DataProvider - private static final Object[][] getInvalidYmlWithOccurrences() throws IOException, Exception { - return new Object[][] { { "occurencyFalure04.yml" }, // requirements MIN - // occurrences - // not exist [ , - // 1] - { "occurencyFalure07.yml" }, // requirements [ @ , 1 ] - { "occurencyFalure34.yml" }, // capability MIN occurrences not - // exist [ , 1] - { "occurencyFalure37.yml" } // capability [ 0 , # ] - - }; - } - - // US656928 - protected final String importMapPropertySuccess = "importMapPropertySuccessFlow.yml"; - protected final String importAttributeSuccess = "importAttributeSuccessFlow.yml"; - protected final String importSuccessFile = "myCompute.yml"; - protected final String derivedFromMyCompute = "derivedFromMyCompute.yml"; - protected final String importSuccessVFFile = "myComputeVF.yml"; - protected final String importNoDerivedFromFile = "myComputeDerivedFromNotExists.yml"; - protected final String importInvalidDefinitionVersionFile = "myComputeIncorrectDefenitionVersionValue.yml"; - protected final String importIncorrectNameSpaceFormatFile = "myComputeIncorrectNameSpaceFormat.yml"; - protected final String importNoDefenitionVersionFile = "myComputeNoDefenitionVersion.yml"; - protected final String importNodeTypesTwiceFile = "myComputeWithNodeTypesTwice.yml"; - protected final String importTopologyTemplateFile = "myComputeWithTopologyTemplate.yml"; - protected final String importNoContentFile = "noContent.yml"; - protected final String importWithOccurrences = "myComputeOccurencySuccess.yml"; - protected final String importListPropertyBadDefault = "importListPropertyBadDefault.yml"; - protected final String importListPropertyGoodDefault = "importListPropertyGoodDefault.yml"; - protected final String importListPropertySuccess = "importListPropertySuccessFlow.yml"; - // US631462 - protected final String importDuplicateRequirements = "importDuplicateRequirements.yml"; - protected final String importDuplicateCapability = "importDuplicateCapability.yml"; - protected final String importCapabilityNameExistsOnParent = "importCapabilityNameExistsOnParent.yml"; - protected final String importRequirementNameExistsOnParent = "importRequirementNameExistsOnParent.yml"; - protected final String importToscaResourceReqCapDerivedFromParent = "derivedFromWebAppDerivedReqCap.yml"; - protected final String missingCapInReqDef = "missingCapInReqDefinition.yml"; - protected final String missingCapInCapDef = "missingCapInCapDefinition.yml"; - - // US558432 - Support for Capability/Requirement "occurences" Import - @Test(dataProvider = "getYmlWithInValidOccurrences") - public void importToscaResourceWithOccurrencesFailuresFlow01(String ymlFileWithInvalidCapReqOccurrences) - throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFileWithInvalidCapReqOccurrences); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_OCCURRENCES.name(), new ArrayList<String>(), - importResourceResponse.getResponse()); - } - - @Test(dataProvider = "getInvalidYmlWithOccurrences") - public void importToscaResourceWithOccurrencesFailuresFlow02(String ymlFileWithInvalidCapReqOccurrences) - throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFileWithInvalidCapReqOccurrences); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_YAML_FILE.name(), new ArrayList<String>(), - importResourceResponse.getResponse()); - } - - @Test - public void importToscaResource() throws Exception { - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importSuccessFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - AssertJUnit.assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - AssertJUnit.assertTrue("validate toscaResourceName field", - resourceJavaObject.getToscaResourceName().equals(parseToscaNodeYaml.getNodeName())); - AssertJUnit.assertTrue("validate resourceType field", - resourceJavaObject.getResourceType().equals(ResourceTypeEnum.VFC)); - // find derived from resource details - // Validate resource details after import-create resource including - // capabilities, interfaces from derived_from resource - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceWithOccurrencesSuccessFlow() throws Exception { - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importWithOccurrences); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - AssertJUnit.assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - AssertJUnit.assertTrue("validate toscaResourceName field", - resourceJavaObject.getToscaResourceName().equals(parseToscaNodeYaml.getNodeName())); - AssertJUnit.assertTrue("validate resourceType field", - resourceJavaObject.getResourceType().equals(ResourceTypeEnum.VFC)); - String requirementsType = "tosca.capabilities.Attachment"; - String capabilitType = "tosca.capabilities.Endpoint.Admin"; - // Verify Occurrences of requirements and capabilities in resource - verifyRequirementsOccurrences(resourceJavaObject, requirementsType); - verifyCapabilitiesOccurrences(resourceJavaObject, capabilitType); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - // ------------------------------Success--------------------------------- - - @Test(enabled = false) - public void importToscaResourceVFResType() throws Exception { - - String resourceType = ResourceTypeEnum.VF.toString(); - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importSuccessVFFile); - // importReqDetails.setResourceType(resourceType); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - assertTrue("validate toscaResourceName field", - resourceJavaObject.getToscaResourceName().equals(parseToscaNodeYaml.getNodeName())); - assertTrue( - "validate resourceType field, expected - " + resourceType + ", actual - " - + resourceJavaObject.getResourceType(), - resourceJavaObject.getResourceType().toString().equals(resourceType)); - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - // ------------------------------Failure--------------------------------- - - @Test - public void importToscaResourceDerivedFromNotExist() throws Exception { - - String fileName = importNoDerivedFromFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - // List<String> derivedFrom = new ArrayList<String>() ; - // derivedFrom.add("hh"); - // importReqDetails.setDerivedFrom(derivedFrom); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.PARENT_RESOURCE_NOT_FOUND.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PARENT_RESOURCE_NOT_FOUND.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceIncorrectDefinitionVersion() throws Exception { - - String fileName = importInvalidDefinitionVersionFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_TOSCA_TEMPLATE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_TOSCA_TEMPLATE.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceIncorrectSpaceNameFormat() throws Exception { - - String fileName = importIncorrectNameSpaceFormatFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_RESOURCE_NAMESPACE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_RESOURCE_NAMESPACE.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceNoDefinitionVersion() throws Exception { - - String fileName = importNoDefenitionVersionFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_TOSCA_TEMPLATE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_TOSCA_TEMPLATE.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceNoContent() throws Exception { - - String fileName = importNoContentFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_RESOURCE_PAYLOAD.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_RESOURCE_PAYLOAD.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceWithTopologyTemplate() throws Exception { - - String fileName = importTopologyTemplateFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.NOT_RESOURCE_TOSCA_TEMPLATE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_RESOURCE_TOSCA_TEMPLATE.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceWithNodeTypesTwice() throws Exception { - - String fileName = importNodeTypesTwiceFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.NOT_SINGLE_RESOURCE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_SINGLE_RESOURCE.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - // failed case - uniqueness of toscaResourceName - RESOURCE_ALREADY_EXISTS - @Test - public void importToscaResourceTwice() throws Exception { - String fileName = importSuccessFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - RestResponse checkInresponse = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("checkIn resource request returned status:" + checkInresponse.getErrorCode(), - checkInresponse.getErrorCode() == 200); - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - - // import the same tosca resource with different resourceName - DbUtils.cleanAllAudits(); - - importReqDetails.setName("kuku"); - List<String> tags = new ArrayList<String>(); - tags.add(importReqDetails.getName()); - importReqDetails.setTags(tags); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_ALREADY_EXISTS.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_ALREADY_EXISTS.name(), variables, - importResourceResponse.getResponse()); - - expectedResourceAuditJavaObject = ElementFactory.getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(importReqDetails.getToscaResourceName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - - } - - @Test - public void importToscaResourceWithTheSameNameAsCreatedResourceBefore() throws Exception { - - // create resource - String fileName = importSuccessFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName(importReqDetails.getName()); - - RestResponse response = ResourceRestUtils.createResource(resourceDetails, sdncUserDetails); - int status = response.getErrorCode(); - assertEquals("create request returned status:" + status, 201, status); - assertNotNull("resource uniqueId is null:", resourceDetails.getUniqueId()); - Resource resourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - // assertNull("validate toscaResourceName field", - // resourceJavaObject.getToscaResourceName()); - - // import the same tosca resource - DbUtils.cleanAllAudits(); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESOURCE_ALREADY_EXISTS.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_ALREADY_EXISTS.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - - } - - @Test - public void importToscaResourceInvalidChecksum() throws Exception { - String fileName = importSuccessFile; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.Content_MD5.getValue(), "invalidMd5Sum"); - - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - headersMap); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - assertNotNull("check response object is not null after import tosca resource", importResourceResponse); - assertNotNull("check error code exists in response after import tosca resource", - importResourceResponse.getErrorCode()); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_RESOURCE_CHECKSUM.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_RESOURCE_CHECKSUM.name(), variables, - importResourceResponse.getResponse()); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceInvalidResType() throws Exception { - - String resourceType = "invalidResourceType"; - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importSuccessFile); - importReqDetails.setResourceType(resourceType); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - assertNotNull("check response object is not null after import resouce", importResourceResponse); - assertNotNull("check error code exists in response after import resource", - importResourceResponse.getErrorCode()); - assertEquals("Check response code after import resource", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - - List<String> variables = new ArrayList<>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, - importResourceResponse.getResponse()); - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void derivedTemplateImportedSecondResourceAsFirstImportedNodeType() throws Exception { - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importSuccessFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - assertTrue("validate toscaResourceName field", - resourceJavaObject.getToscaResourceName().equals(parseToscaNodeYaml.getNodeName())); - assertTrue( - "validate resourceType field, expected - " + importReqDetails.getResourceType() + ", actual - " - + resourceJavaObject.getResourceType(), - resourceJavaObject.getResourceType().toString().equals(importReqDetails.getResourceType())); - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - - RestResponse certifyResource = LifecycleRestUtils.certifyResource(importReqDetails); - assertTrue("certify resource request returned status:" + certifyResource.getErrorCode(), - certifyResource.getErrorCode() == 200); - - // import second resource template derived from first resource - DbUtils.cleanAllAudits(); - importReqDetails.setName("kuku"); - List<String> tags = new ArrayList<String>(); - tags.add(importReqDetails.getName()); - importReqDetails.setTags(tags); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - derivedFromMyCompute); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - parseToscaNodeYaml = utils.parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - Resource resourceJavaObject2 = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - assertTrue("validate toscaResourceName field", - resourceJavaObject2.getToscaResourceName().equals(parseToscaNodeYaml.getNodeName())); - assertTrue( - "validate resourceType field, expected - " + importReqDetails.getResourceType() + ", actual - " - + resourceJavaObject2.getResourceType(), - resourceJavaObject2.getResourceType().toString().equals(importReqDetails.getResourceType())); - - // Validate audit message - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject2 = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject2.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject2.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject2.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject2.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject2, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - - } - - @Test - public void importToscaResourceListPropertyGoodDefault() throws Exception { - - String fileName = importListPropertyGoodDefault; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - assertTrue("response code is not 201, returned :" + importResourceResponse.getErrorCode(), - importResourceResponse.getErrorCode() == 201); - - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - assertTrue("Properties size : " + resourceJavaObject.getProperties().size(), - resourceJavaObject.getProperties().size() == 1); - assertTrue("Property type : " + resourceJavaObject.getProperties().get(0).getType(), - resourceJavaObject.getProperties().get(0).getType().equals(ToscaPropertyType.LIST.getType())); - assertTrue( - "actual Default values : " + resourceJavaObject.getProperties().get(0).getDefaultValue() - + " , expected : " + "[false, true]", - resourceJavaObject.getProperties().get(0).getDefaultValue().equals("[\"false\",\"true\"]")); - - } - - @Test - public void importToscaResourceListPropertyBadDefault() throws Exception { - - String fileName = importListPropertyBadDefault; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name()); - assertEquals("Check response code after tosca resource import", errorInfo.getCode(), - importResourceResponse.getErrorCode()); - ArrayList<String> variables = new ArrayList<>(); - variables.add("my_prop"); - variables.add("list"); - variables.add("boolean"); - variables.add("[12,true]"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - importResourceResponse.getResponse()); - - } - - // Benny US580744 - Add support for TOSCA "list" type - import - - @Test - public void importToscaResourceListPropertySuccessFlow() throws Exception { - String fileName = importListPropertySuccess; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - ResourceRestUtils.checkCreateResponse(importResourceResponse); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - // Verify Properties List in resource - verifyResourcePropertiesList(resourceJavaObject); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - // DE198534 - @Test(dataProvider = "getYmlWithInValidListProperties") // invalid default - // values - public void importToscaResourceListPropertyFailureFlows(String ymlFileWithInvalidPropertyDefualtValues, - String defualtValues, String enterySchemaType) throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFileWithInvalidPropertyDefualtValues); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("my_property"); - variables.add("list"); - variables.add(enterySchemaType); - variables.add(defualtValues); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - importResourceResponse.getResponse()); - } - - // BUG DE198650 - @Test - public void importToscaResourceListPropertyNonSupportEntrySchemaType() throws Exception { - String ymlFile = "ListPropertyFalure01.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("booolean"); // property entry_schema data type - variables.add("my_boolean"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_INNER_TYPE.name(), variables, - importResourceResponse.getResponse()); - } - - // BUG DE198676 - @Test // (enabled=false) - public void importToscaResourceListPropertyNonSupportedPropertyType() throws Exception { // Not - // "list" - // type - String ymlFile = "ListPropertyFalure16.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("koko"); // property data type (koko instead list) - variables.add("my_boolean"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_TYPE.name(), variables, - importResourceResponse.getResponse()); - } - - /// US656928 - [BE] - Add support for TOSCA "map" type - Phase 1 import - @Test - public void importToscaResourceMapPropertySuccessFlow() throws Exception { - String fileName = importMapPropertySuccess; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - ResourceRestUtils.checkCreateResponse(importResourceResponse); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - // Verify Properties MAP in resource - verifyResourcePropertiesMap(resourceJavaObject); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test(dataProvider = "getYmlWithInValidMapProperties") // invalid default - // values - public void importToscaResourceMapPropertyFailureFlows(String ymlFileWithInvalidPropertyDefualtValues, - String defualtValues, String enterySchemaType) throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFileWithInvalidPropertyDefualtValues); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("my_property"); - variables.add("map"); - variables.add(enterySchemaType); - variables.add(defualtValues); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - importResourceResponse.getResponse()); - } - - @Test - public void importToscaResourceMaptPropertyNonSupportedPropertyType() throws Exception { // Not - // "Map" - // type - String ymlFile = "MapPropertyFalure16.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("koko"); // property data type (koko instead list) - variables.add("my_boolean"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_TYPE.name(), variables, - importResourceResponse.getResponse()); - } - - @Test - public void importToscaResourceMissingCapabilityInReqDefinition() throws Exception { - - String fileName = missingCapInReqDef; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_CAPABILITY_TYPE.name()); - String missingCapName = "org.openecomp.capabilities.networkInterfaceNotFound"; - BaseRestUtils.checkErrorResponse(importResourceResponse, ActionStatus.MISSING_CAPABILITY_TYPE, missingCapName); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, Arrays.asList(missingCapName)); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType("org.openecomp.resource.vSCP-03-16"); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceMissingCapabilityInCapDefinition() throws Exception { - - String fileName = missingCapInCapDef; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - logger.debug("import tosca resource response: {}", importResourceResponse.getResponseMessage()); - - // Validate audit message - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_CAPABILITY_TYPE.name()); - String missingCapName = "org.openecomp.capabilities.networkInterfaceNotFound"; - BaseRestUtils.checkErrorResponse(importResourceResponse, ActionStatus.MISSING_CAPABILITY_TYPE, missingCapName); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, Arrays.asList(missingCapName)); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType("org.openecomp.resource.vSCP-03-16"); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceDuplicateRequirements() throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importDuplicateRequirements); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("requirement"); - variables.add("local_storage"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_DUPLICATE_REQ_CAP_NAME.name(), variables, - importResourceResponse.getResponse()); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.IMPORT_DUPLICATE_REQ_CAP_NAME.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceDuplicateCapabilities() throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importDuplicateCapability); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("capability"); - variables.add("scalable"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_DUPLICATE_REQ_CAP_NAME.name(), variables, - importResourceResponse.getResponse()); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.IMPORT_DUPLICATE_REQ_CAP_NAME.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceRequirementNameExistsOnParent() throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importRequirementNameExistsOnParent); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("requirement"); - variables.add("local_storage"); - variables.add("Compute"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name(), - variables, importResourceResponse.getResponse()); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceCapabilityNameExistsOnParent() throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importCapabilityNameExistsOnParent); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertTrue(importResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add("capability"); - variables.add("binding"); - variables.add("Compute"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name(), - variables, importResourceResponse.getResponse()); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgFailure(errorInfo, variables); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - @Test - public void importToscaResourceReqCapDerivedFromParent() throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - importToscaResourceReqCapDerivedFromParent); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - BaseRestUtils.checkCreateResponse(importResourceResponse); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType("org.openecomp.resource.MyWebApp"); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - /************************ Shay ************************/ - - @Test - public void caseRequirementInsensitiveTest() throws Exception { - String fileName = "CaseInsensitiveReqTest_1.yml"; - int expectedNumOfRequirements = 2; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - importReqDetails.setRequirements(testResourcesPath, fileName, sdncUserDetails, null); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String fileName2 = "CaseInsensitiveReqTest_2.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName2); - importReqDetails.setName("secondImportedResource"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, null); - requirements = importReqDetails.getRequirements(); - requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - checkImportedAssetAssociated(importReqDetails); - - } - - private void checkImportedAssetAssociated(ImportReqDetails importDetails) throws IOException, Exception { - RestResponse importResourceResponse; - ImportReqDetails importReqDetails2 = ElementFactory.getDefaultImportResource(); - importReqDetails2 = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails2, testResourcesPath, - "BindingAsset.yml"); - importReqDetails2.setName("bindingAsset"); - importReqDetails2.setTags(Arrays.asList(importReqDetails2.getName())); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails2, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - ResourceReqDetails vf = ElementFactory.getDefaultResourceByType("VF100", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncUserDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - RestResponse createResourceResponse = ResourceRestUtils.createResource(vf, sdncUserDetails); - ResourceRestUtils.checkCreateResponse(createResourceResponse); - - LifecycleRestUtils.changeResourceState(importDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - LifecycleRestUtils.changeResourceState(importReqDetails2, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - RestResponse response = ResourceRestUtils.createResourceInstance(importDetails, sdncUserDetails, - vf.getUniqueId()); - ResourceRestUtils.checkCreateResponse(response); - ComponentInstance riCap = ResponseParser.parseToObject(response.getResponse(), ComponentInstance.class); - - response = ResourceRestUtils.createResourceInstance(importReqDetails2, sdncUserDetails, vf.getUniqueId()); - ResourceRestUtils.checkCreateResponse(response); - ComponentInstance riReq = ResponseParser.parseToObject(response.getResponse(), ComponentInstance.class); - - RestResponse getResourceBeforeAssociate = ComponentRestUtils - .getComponentRequirmentsCapabilities(sdncUserDetails, vf); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceBeforeAssociate.getResponse(), CapReqDef.class); - - String capbilityUid = capReqDef.getCapabilities().get("tosca.capabilities.network.Bindable").get(0) - .getUniqueId(); - String requirementUid = capReqDef.getRequirements().get("tosca.capabilities.network.Bindable").get(0) - .getUniqueId(); - - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - requirementDef.setFromNode(riReq.getUniqueId()); - requirementDef.setToNode(riCap.getUniqueId()); - - RelationshipInfo pair = new RelationshipInfo(); - pair.setRequirementOwnerId(riReq.getUniqueId()); - pair.setCapabilityOwnerId(riCap.getUniqueId()); - pair.setRequirement("VirtualBinding"); - RelationshipImpl relationship = new RelationshipImpl(); - relationship.setType("tosca.capabilities.network.Bindable"); - pair.setRelationships(relationship); - pair.setCapabilityUid(capbilityUid); - pair.setRequirementUid(requirementUid); - CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship(); - capReqRel.setRelation(pair); - List<CapabilityRequirementRelationship> relationships = new ArrayList<>(); - relationships.add(capReqRel); - requirementDef.setRelationships(relationships); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncUserDetails, - vf.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - } - - @Test - public void caseCapabilitiesInsensitiveTest() throws Exception { - String fileName = "CaseInsensitiveCapTest_1.yml"; - int expectedNumOfCapabilities = 6; - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setCapabilities(testResourcesPath, fileName, sdncUserDetails, null); - Map<String, Object> capabilities = importReqDetails.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String fileName2 = "CaseInsensitiveCapTest_2.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName2); - importReqDetails.setName("secondImportedResource"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setCapabilities(testResourcesPath, fileName2, sdncUserDetails, null); - capabilities = importReqDetails.getCapabilities(); - capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - - } - - @Test - public void fatherAndChildHaveDifferentRequirementsTest() throws Exception { - String fileName = "DifferentReqFromCompute.yml"; - int expectedNumOfRequirements = 3; - - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, fileName, sdncUserDetails, "Compute"); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - checkImportedAssetAssociated(importReqDetails); - } - - @Test - public void fatherHasNoRequirementsTest() throws Exception { - String fatherFileName = "CPHasNoReqCap.yml"; - String childFileName = "DerivedFromCPWithOwnReq.yml"; - int expectedNumOfRequirements = 3; - - importReqDetails.setName("father"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String derivedFromResourceName = importReqDetails.getName(); - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromResourceName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - } - - @Test - public void childHasSameReqNameAndTypeLikeFatherTest() throws Exception { - String childFileName = "SameReqAsCompute.yml"; - int expectedNumOfRequirements = 2; - - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, null); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - } - - @Test - public void childHasSameCapNameAndTypeLikeFatherTest() throws Exception { - String childFileName = "SameCapAsCompute.yml"; - int expectedNumOfCapabilities = 6; - - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setCapabilities(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - "Compute"); - Map<String, Object> capabilities = importReqDetails.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - } - - @Test - public void childGetsAllRequirementsOfFatherAndGrandfatherTest() throws Exception { - int expectedNumOfRequirements = 4; - - String fatherFileName = "DifferentReqFromCompute.yml"; - importReqDetails.setName("father"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String derivedFromName = importReqDetails.getName(); - String childFileName = "DifferentReqCapFromCompute1.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - } - - @Test - public void childOverridesGrandfatherRequirementsTest() throws Exception { - int expectedNumOfRequirements = 3; - - String fatherFileName = "DifferentReqFromCompute.yml"; - importReqDetails.setName("father"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String derivedFromName = importReqDetails.getName(); - String childFileName = "SameReqAsCompute_DerivedFromMyCompute1.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - } - - @Test - public void childAndGrandfatherHaveDifferenetReqiurementTypeTest() throws Exception { - int expectedNumOfRequirements = 3; - int expectedNumOfCapabilities = 6; - - String fatherName = "father"; - String fatherFileName = "DifferentReqFromCompute.yml"; - importReqDetails.setName(fatherName); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String fatherUniqueId = importReqDetails.getUniqueId(); - ImportReqDetails importReqDetailsFather = importReqDetails; - - String childFileName = "importRequirementNameExistsOnParent_DerivedFromMyCompute1.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_INVALID_CONTENT, importResourceResponse.getErrorCode().intValue()); - ArrayList<String> variables = new ArrayList<>(); - variables.add("requirement"); - variables.add("local_storage"); - variables.add(fatherName); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name(), - variables, importResourceResponse.getResponse()); - - importReqDetails.setUniqueId(fatherUniqueId); - - importReqDetailsFather.setRequirements(testResourcesPath, fatherFileName, sdncUserDetails, "Compute"); - Map<String, Object> requirements = importReqDetailsFather.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetailsFather, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetailsFather.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - importReqDetailsFather.setCapabilities(testResourcesPath, fatherFileName, sdncUserDetails, "Compute"); - Map<String, Object> capabilities = importReqDetailsFather.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetailsFather, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetailsFather.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - } - - @Test - public void childHasNoReqCapTest() throws Exception { - int expectedNumOfRequirements = 3; - int expectedNumOfCapabilities = 6; - - String fatherFileName = "DifferentReqFromCompute.yml"; - importReqDetails.setName("father"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String derivedFromName = importReqDetails.getName(); - String childFileName = "CPHasNoReqCap_DerivedFromMyCompute1.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - importReqDetails.setCapabilities(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> capabilities = importReqDetails.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - } - - @Test - public void fatherAndChildGetReqCapFromGrandfatherTest() throws Exception { - int expectedNumOfRequirements = 2; - int expectedNumOfCapabilities = 6; - - String fatherFileName = "MyFatherCompute_NoReqCap.yml"; - importReqDetails.setName("father"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String derivedFromName = importReqDetails.getName(); - String childFileName = "myChildCompute_NoReqCap.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - importReqDetails.setCapabilities(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> capabilities = importReqDetails.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - } - - @Test - public void reverseInheritanceTest() throws Exception { - int expectedNumOfRequirements = 2; - int expectedNumOfCapabilities = 2; - - String fatherName = "father"; - String fatherFileName = "myFatherWebApp_derviedFromDocker.yml"; - importReqDetails.setName(fatherName); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String fatherUniqueId = importReqDetails.getUniqueId(); - ImportReqDetails importReqDetailsFather = importReqDetails; - String childFileName = "myChildWebApp_DerivedFromContainer.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_INVALID_CONTENT, importResourceResponse.getErrorCode().intValue()); - ArrayList<String> variables = new ArrayList<>(); - variables.add("requirement"); - variables.add("host"); - variables.add(fatherName); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED.name(), - variables, importResourceResponse.getResponse()); - - importReqDetails.setUniqueId(fatherUniqueId); - importReqDetailsFather.setRequirements(testResourcesPath, fatherFileName, sdncUserDetails, "Root"); - Map<String, Object> requirements = importReqDetailsFather.getRequirements(); - Map<String, Object> requirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetailsFather, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), requirementsFromResponse.keySet().size()); - importReqDetailsFather.compareRequirementsOrCapabilities(requirements, requirementsFromResponse); - - importReqDetailsFather.setCapabilities(testResourcesPath, fatherFileName, sdncUserDetails, "Root"); - Map<String, Object> capabilities = importReqDetailsFather.getCapabilities(); - Map<String, Object> capabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetailsFather, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), capabilitiesFromResponse.keySet().size()); - importReqDetailsFather.compareRequirementsOrCapabilities(capabilities, capabilitiesFromResponse); - } - - // DE202329 - @Test(enabled = false) - public void requirementWithMissingTypeTest() throws Exception { - String fatherName = "father"; - String fatherFileName = "DerivedFromWebApplication_HasNoReqType.yml"; - importReqDetails.setName(fatherName); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_INVALID_CONTENT, importResourceResponse.getErrorCode().intValue()); - ArrayList<String> variables = new ArrayList<>(); - variables.add("diff"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_CAPABILITY_TYPE.name(), variables, - importResourceResponse.getResponse()); - - } - - @Test - public void TwinBrothersHaveSameReqCapTest() throws Exception { - int expectedNumOfRequirements = 4; - int expectedNumOfCapabilities = 7; - - String derivedFromName = "father"; - String fatherFileName = "DifferentReqFromCompute.yml"; - importReqDetails.setName(derivedFromName); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fatherFileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - RestResponse changeResourceState1 = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState1.getErrorCode().intValue()); - RestResponse changeResourceState2 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState2.getErrorCode().intValue()); - RestResponse changeResourceState3 = LifecycleRestUtils.changeResourceState(importReqDetails, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState3.getErrorCode().intValue()); - - String childFileName = "DifferentReqCapFromCompute1.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("child"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - childFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - Map<String, Object> childRequirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - Map<String, Object> childCapabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities - 1); - - String twinFileName = "DifferentReqCapFromCompute2.yml"; - importReqDetails = ElementFactory.getDefaultImportResource(); - importReqDetails.setName("twin"); - importReqDetails.setTags(Arrays.asList(importReqDetails.getName())); - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - twinFileName); - importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - - importReqDetails.setRequirements(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> requirements = importReqDetails.getRequirements(); - Map<String, Object> twinRequirementsFromResponse = parseReqOrCapFromResponse("requirements", importReqDetails, - expectedNumOfRequirements); - assertEquals(requirements.keySet().size(), twinRequirementsFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(requirements, twinRequirementsFromResponse); - - importReqDetails.setCapabilities(testResourcesPath, importReqDetails.getPayloadName(), sdncUserDetails, - derivedFromName); - Map<String, Object> capabilities = importReqDetails.getCapabilities(); - Map<String, Object> twinCapabilitiesFromResponse = parseReqOrCapFromResponse("capabilities", importReqDetails, - expectedNumOfCapabilities); - assertEquals(capabilities.keySet().size(), twinCapabilitiesFromResponse.keySet().size()); - importReqDetails.compareRequirementsOrCapabilities(capabilities, twinCapabilitiesFromResponse); - - assertEquals(childRequirementsFromResponse.keySet().size(), twinRequirementsFromResponse.keySet().size()); - assertEquals(childCapabilitiesFromResponse.keySet().size(), twinCapabilitiesFromResponse.keySet().size()); - } - - /* - * invariantUUID - US672129 - */ - - private void checkInvariantUuidIsImmutableInDifferentAction(ImportReqDetails importReqDetails) throws Exception { - // create resource - importReqDetails.setName("import"); - String invariantUuidDefinedByUser = "abcd1234"; - RestResponse importResourceResponse = importResourceWithRequestedInvariantUuid(importReqDetails, - invariantUuidDefinedByUser); - String invariantUUIDcreation = ResponseParser.getInvariantUuid(importResourceResponse); - assertFalse(checkInvariantUuidEqual(invariantUuidDefinedByUser, importResourceResponse)); - - // get resource - RestResponse getResource = ResourceRestUtils.getResource(importReqDetails.getUniqueId()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, getResource)); - - // checkin resource - RestResponse changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // checkout resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // checkin resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // checkout resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // checkin resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // certification request - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // start certification - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // certify - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.CERTIFY); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - String certifiedUniqueId = importReqDetails.getUniqueId(); - - // update resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceReqDetails updatedResourceReqDetails = new ResourceReqDetails(importReqDetails, - importReqDetails.getVersion()); - updatedResourceReqDetails.setDescription("updatedDescription"); - updatedResourceReqDetails.setVendorRelease("1.2.3.4"); - RestResponse updateResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceReqDetails, - sdncUserDetails, importReqDetails.getUniqueId()); - assertEquals(STATUS_CODE_SUCCESS, updateResponse.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, updateResponse)); - - // certification request - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // checkout resource - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // certification request - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // start certification - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // cancel certification - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.CANCELCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // start certification - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // failure - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, testerUser, - LifeCycleStatesEnum.FAILCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // upload artifact - changeResourceState = LifecycleRestUtils.changeResourceState(importReqDetails, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultArtifact(); - ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, sdncUserDetails, - importReqDetails.getUniqueId()); - assertEquals(STATUS_CODE_SUCCESS, changeResourceState.getErrorCode().intValue()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, changeResourceState)); - - // create instance - resourceDetails.setResourceType(ResourceTypeEnum.VF.toString()); - ResourceRestUtils.createResource(resourceDetails, sdncUserDetails); - importReqDetails.setUniqueId(certifiedUniqueId); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(importReqDetails); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncUserDetails, resourceDetails.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals(STATUS_CODE_CREATED, createResourceInstanceResponse.getErrorCode().intValue()); - getResource = ResourceRestUtils.getResource(importReqDetails.getUniqueId()); - assertTrue(checkInvariantUuidEqual(invariantUUIDcreation, getResource)); - } - - private boolean checkInvariantUuidEqual(String expectedInvariantUuid, RestResponse response) { - String invariantUUIDFromResponse = ResponseParser.getInvariantUuid(response); - return expectedInvariantUuid.equals(invariantUUIDFromResponse); - } - - @Test - public void checkCPHasImmutableInvariantUuidTest() throws Exception { - String filename = "FatherHasNoReqCap.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - filename); - checkResourceHasImmutableInvariantUuidTest(importReqDetails); - } - - @Test - public void checkVFCHasImmutableInvariantUuidTest() throws Exception { - String filename = "computeCap11.yml"; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - filename); - checkResourceHasImmutableInvariantUuidTest(importReqDetails); - } - - public void checkResourceHasImmutableInvariantUuidTest(ImportReqDetails importReqDetails) throws Exception { - // invariantUuid is null - importReqDetails.setName("first"); - RestResponse importResourceResponse = importResourceWithRequestedInvariantUuid(importReqDetails, null); - String invariantUUIDcreation = ResponseParser.getInvariantUuid(importResourceResponse); - assertNotNull(invariantUUIDcreation); - - ResourceRestUtils.deleteResource(importReqDetails.getUniqueId(), sdncUserDetails.getUserId()); - - // invariantUuid is empty - importReqDetails.setName("second"); - String invariantUuidDefinedByUser = ""; - importResourceResponse = importResourceWithRequestedInvariantUuid(importReqDetails, invariantUuidDefinedByUser); - invariantUUIDcreation = ResponseParser.getInvariantUuid(importResourceResponse); - assertNotNull(invariantUUIDcreation); - - ResourceRestUtils.deleteResource(importReqDetails.getUniqueId(), sdncUserDetails.getUserId()); - - checkInvariantUuidIsImmutableInDifferentAction(importReqDetails); - } - - private static RestResponse importResourceWithRequestedInvariantUuid(ImportReqDetails importDetails, - String invariantUuid) throws Exception { - importDetails.setInvariantUUID(invariantUuid); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importDetails, sdncUserDetails, - null); - assertEquals(STATUS_CODE_CREATED, importResourceResponse.getErrorCode().intValue()); - return importResourceResponse; - } - - private Map<String, Object> parseReqOrCapFromResponse(String parsedFieldName, ImportReqDetails importReqDetails, - int expectedNumOfReqCap) throws ClientProtocolException, IOException { - RestResponse getResource = ResourceRestUtils.getResource(importReqDetails.getUniqueId()); - assertTrue(getResource.getErrorCode().equals(STATUS_CODE_SUCCESS)); - Map<String, Object> parsedFieldFromResponseToMap = ResponseParser.getJsonValueAsMap(getResource, - parsedFieldName); - Iterator<String> iterator = parsedFieldFromResponseToMap.keySet().iterator(); - actualNumOfReqOrCap = 0; - while (iterator.hasNext()) { - String next = iterator.next(); - List<Object> object = (List<Object>) parsedFieldFromResponseToMap.get(next); - actualNumOfReqOrCap += object.size(); - } - assertEquals(expectedNumOfReqCap, actualNumOfReqOrCap); - return parsedFieldFromResponseToMap; - } - - // --------------------------------- - - private void verifyResourcePropertiesList(Resource resourceJavaObject) { // use - // importListPropertySuccessFlow.yml - boolean isPropertyAppear = false; - List<PropertyDefinition> propertiesList = resourceJavaObject.getProperties(); - for (PropertyDefinition pro : propertiesList) { - switch (pro.getName()) { - case "my_boolean": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[false,true]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "my_boolean_array": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[true,false]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "duplicate_boolean_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[true,false,true]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_values_Insensitive": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[true,false,true]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "my_integers": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[0,1000,-1000,50]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "my_integers_array": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[10,-1000,0]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "duplicate_integers_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[10,10,-1000,0]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "my_string": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("[\"asdc\",\"$?^@ecomp$!#%()_-~@+*^...;;/w#\",\"uc\"]")); - // assertTrue("Check Property default values ", - // pro.getDefaultValue().equals("[\"asdc\",\"@=~!@#$%^&*()_+=?><:-w\",\"uc\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "my_string_array": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("[\"AAA\",\"~$~#bbb%^*_-\",\"qwe\",\"1.3\",\"500\",\"true\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "duplicate_string_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("[\"asdc\",\"asdc\",\"uc\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_null_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[\"asdc\",\"uc\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_space_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[\"asdc\",\"uc\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_array_null_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("[\"aaa\",\"bbb\",\"500\"]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "my_float": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[6,1000.000001,-3.0]")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "my_float_array": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[0.01,-5.0,2.1]")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "duplicate_float_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[0.0,0.0,4.555555]")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_no_default_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "integer_no_default_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "string_no_default_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "boolean_no_default_values": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "integer_null_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[1000,2000]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "boolean_null_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[true,false]")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "float_null_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[6,-3.0]")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_space_value": - assertTrue("Check Property Type ", pro.getType().equals("list")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("[6,-3.0]")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - - } - assertTrue(isPropertyAppear); - isPropertyAppear = false; - } - - } - - private void verifyRequirementsOccurrences(Resource resourceJavaObject, String requirementsType) { - boolean isRequirementAppear = false; - // List<RequirementDefinition> requerments = - // resourceJavaObject.getRequirements().get("tosca.capabilities.Attachment"); - List<RequirementDefinition> requerments = resourceJavaObject.getRequirements().get(requirementsType); - - for (RequirementDefinition req : requerments) { - switch (req.getName()) { - case "local_storage100": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("1")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("UNBOUNDED")); - isRequirementAppear = true; - break; - case "local_storage200": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("1")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("1")); - isRequirementAppear = true; - break; - case "local_storage300": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("1")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("10")); - isRequirementAppear = true; - break; - case "local_storage400": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("1")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("10000000")); - isRequirementAppear = true; - break; - case "local_storage500": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("2")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("3")); - isRequirementAppear = true; - break; - case "local_storageNoOccurrences600": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals("1")); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals("1")); - isRequirementAppear = true; - break; - } - assertTrue(isRequirementAppear); - isRequirementAppear = false; - } - - } - - private void verifyCapabilitiesOccurrences(Resource resourceJavaObject, String capabilitType) { - boolean isCapabilityAppear = false; - // List<CapabilityDefinition> capabilities = - // resourceJavaObject.getCapabilities().get("tosca.capabilities.Endpoint.Admin"); - List<CapabilityDefinition> capabilities = resourceJavaObject.getCapabilities().get(capabilitType); - - for (CapabilityDefinition cap : capabilities) { - switch (cap.getName()) { - case "endpointNoOccurrence": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("UNBOUNDED")); - isCapabilityAppear = true; - break; - case "endpoint200": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("2")); - isCapabilityAppear = true; - break; - case "endpoint300": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("1")); - isCapabilityAppear = true; - break; - case "endpoint400": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("10")); - isCapabilityAppear = true; - break; - case "endpoint500": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("10000000")); - isCapabilityAppear = true; - break; - case "endpoint600": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("1")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("UNBOUNDED")); - isCapabilityAppear = true; - break; - case "endpoint700": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals("2")); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals("4")); - isCapabilityAppear = true; - break; - - } - assertTrue(isCapabilityAppear); - isCapabilityAppear = false; - } - - } - - private void verifyResourcePropertiesMap(Resource resourceJavaObject) { // use - // importMapPropertySuccessFlow.yml - boolean isPropertyAppear = false; - List<PropertyDefinition> propertiesList = resourceJavaObject.getProperties(); - for (PropertyDefinition pro : propertiesList) { - switch (pro.getName()) { - case "string_prop01": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"val1\",\"keyB\":\"val2\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop02": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"val1\",\"keyB\":\"val2\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop03": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"val1\",\"keyB\":\"val2\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop04": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"10\",\"keyB\":\"true\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop05": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":\"Big\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop06": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"aaaA\",\"keyB\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop07": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop08": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"\",\"keyB\":\"abcd\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop09": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\" \",\"keyB\":\"abcd\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop10": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\" aaaa\",\"keyB\":\" bbbb\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop11": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\"aaaa \",\"keyB\":\"bbbb \"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop12": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":\" aaaa \",\"keyB\":\" bbbb ccccc \"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop13": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"aaaa\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop14": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\" aaaa \"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop15": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"AbcD\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop16": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"AbcD\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop17": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"AbcD\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop18": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"AbcD\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop19": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":\"AbcD\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop20": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue() - .equals("{\"keyA\":\"aaaa\",\"keya\":\"aaaa\",\"Keya\":\"Aaaa\",\"KEYA\":\"nnnn\"}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop21": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "string_prop22": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("string")); - isPropertyAppear = true; - break; - case "integer_prop01": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":1,\"keyB\":1000}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop02": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop03": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":800,\"keyB\":-600}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop04": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":-600}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop05": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":100,\"keyB\":0}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop06": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":100,\"keyB\":0}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop07": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":100,\"keyB\":100}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop08": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":100,\"keyB\":200}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop09": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":100,\"keyB\":200}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop10": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":2222}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop11": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null,\"keyD\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop12": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "integer_prop13": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":200}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("integer")); - isPropertyAppear = true; - break; - case "boolean_prop01": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":true,\"keyB\":false,\"keyC\":false}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop02": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":true,\"keyB\":false,\"keyC\":false}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop03": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null,\"keyD\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop04": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null,\"keyD\":null}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop05": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":true,\"keyB\":false,\"keyC\":false}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop06": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":true,\"keyB\":true,\"keyC\":false}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop07": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop08": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":true,\"keyB\":false}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "boolean_prop09": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":false,\"keyB\":true}")); - assertTrue("Check entrySchema Property Type ", - pro.getSchema().getProperty().getType().equals("boolean")); - isPropertyAppear = true; - break; - case "float_prop01": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":1.2,\"keyB\":3.56,\"keyC\":33}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop02": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":0.0,\"keyB\":0.0,\"keyC\":0}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop03": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null,\"keyD\":null}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop04": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":1.2,\"keyB\":3.56,\"keyC\":33}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop05": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":33,\"keyB\":1.2,\"keyC\":3.607,\"keyD\":0}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop06": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":33,\"keyB\":1.2,\"keyC\":3.607}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop07": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":null,\"keyB\":null,\"keyC\":null,\"keyD\":null}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop08": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertEquals("Check Property default values ", pro.getDefaultValue(), null); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop09": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":0.01,\"keyB\":null}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop10": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", pro.getDefaultValue().equals("{\"keyA\":0.00020}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - case "float_prop11": - assertTrue("Check Property Type ", pro.getType().equals("map")); - assertTrue("Check Property default values ", - pro.getDefaultValue().equals("{\"keyA\":3.56,\"keyB\":33}")); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType().equals("float")); - isPropertyAppear = true; - break; - } - assertTrue(isPropertyAppear); - isPropertyAppear = false; - } - - } - - @Test - public void importToscaResourceAttributeSuccessFlow() throws Exception { - - String fileName = importAttributeSuccess; - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - fileName); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, sdncUserDetails, - null); - ResourceRestUtils.checkCreateResponse(importResourceResponse); - Resource resourceJavaObject = ResponseParser - .convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - ToscaNodeTypeInfo parseToscaNodeYaml = utils - .parseToscaNodeYaml(Decoder.decode(importReqDetails.getPayloadData())); - - HashMap<String, PropertyDefinition> attr = new HashMap<>(); - - PropertyDefinition newAttr2 = new PropertyDefinition(); - newAttr2.setName("networks"); - newAttr2.setType("map"); - newAttr2.setDefaultValue("{\"keyA\" : val1 , \"keyB\" : val2}"); - SchemaDefinition schema = new SchemaDefinition(); - PropertyDataDefinition prop = new PropertyDataDefinition(); - prop.setType("string"); - schema.setProperty(prop); - newAttr2.setSchema(schema); - attr.put("networks", newAttr2); - - PropertyDefinition newAttr1 = new PropertyDefinition(); - newAttr1.setName("public_address"); - newAttr1.setType("string"); - attr.put("public_address", newAttr1); - - PropertyDefinition newAttr3 = new PropertyDefinition(); - newAttr3.setName("ports"); - newAttr3.setDescription("this is my description"); - attr.put("ports", newAttr3); - - PropertyDefinition newAttr = new PropertyDefinition(); - newAttr.setDefaultValue("myDefault"); - newAttr.setName("private_address"); - newAttr.setStatus("supported"); - newAttr.setType("string"); - attr.put("private_address", newAttr); - - // verify Resource Attributes - validateResourceAttribute(resourceJavaObject, attr); - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ElementFactory - .getDefaultImportResourceAuditMsgSuccess(); - expectedResourceAuditJavaObject.setResourceName(importReqDetails.getName()); - expectedResourceAuditJavaObject.setModifierName(sdncUserDetails.getFullName()); - expectedResourceAuditJavaObject.setModifierUid(sdncUserDetails.getUserId()); - expectedResourceAuditJavaObject.setToscaNodeType(parseToscaNodeYaml.getNodeName()); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - AuditingActionEnum.IMPORT_RESOURCE.getName(), null, false); - } - - private void validateResourceAttribute(Resource resource, Map<String, PropertyDefinition> attr) { - List<PropertyDefinition> resList = resource.getAttributes(); - int size = resList.size(); - String attributeName; - for (int i = 0; i < size; i++) { - attributeName = resList.get(i).getName(); - assertEquals(attr.get(attributeName).getDefaultValue(), resList.get(i).getDefaultValue()); - assertEquals(attr.get(attributeName).getName(), resList.get(i).getName()); - assertEquals(attr.get(attributeName).getDescription(), resList.get(i).getDescription()); - assertEquals(attr.get(attributeName).getStatus(), resList.get(i).getStatus()); - } - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportUpdateResourseCsarTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportUpdateResourseCsarTest.java deleted file mode 100644 index 9e8b94e5a8..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ImportUpdateResourseCsarTest.java +++ /dev/null @@ -1,282 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.testng.AssertJUnit.assertTrue; - -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.List; -import java.util.regex.Pattern; - -import org.apache.commons.codec.binary.Base64; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.GroupDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.common.api.Constants; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class ImportUpdateResourseCsarTest extends ComponentBaseTest { - @Rule - public static TestName name = new TestName(); - - Gson gson = new Gson(); - public static String userDefinedNodeYaml = "mycompute2.yml"; - public static String rootPath = System.getProperty("user.dir"); - public static String csarFolderPath = "/src/test/resources/CI/csars/"; - - public ImportUpdateResourseCsarTest() { - super(name, ImportUpdateResourseCsarTest.class.getName()); - } - - @Test - public void createUpdateImportResourceFromCsarTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ImportReqDetails resourceDetails = ElementFactory.getDefaultImportResource(); - RestResponse updateResource = null; - RestResponse createResource = null; - Resource resource = null; - String payloadName = "orig2G.csar"; - String rootPath = System.getProperty("user.dir"); - Path path = Paths.get(rootPath + csarFolderPath + "orig2G.csar"); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - resourceDetails.setPayloadName(payloadName); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("orig2G.csar"); - resourceDetails.setCsarVersion("1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - // create new resource from Csar - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - // update scar with new artifacts - path = Paths.get(rootPath + csarFolderPath + "orig2G_update.csar"); - data = Files.readAllBytes(path); - payloadData = Base64.encodeBase64String(data); - resourceDetails.setDescription("update"); - resourceDetails.setCsarVersion("2"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - } - - @Test - public void createUpdateImportResourceFromCsarWithArtifactsGroupNamingTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes; - ResourceReqDetails resourceDetails; - RestResponse updateResource; - RestResponse createResource; - Resource resource; - - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "VF_RI2_G4_withArtifacts_group_naming_a.csar", "VF_RI2_G4_withArtifacts_group_naming.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("VF_RI2_G4_withArtifacts_group_naming.csar"); - resourceDetails.setCsarVersion("1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - // create new resource from Csar - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - List<GroupDefinition> groups = resource.getGroups(); - assertTrue(groups != null && groups.size() == 6); - assertTrue(groups.stream() - .filter(g -> g.getType().equals(Constants.DEFAULT_GROUP_VF_MODULE) - && !Pattern.compile(Constants.MODULE_NEW_NAME_PATTERN).matcher(g.getName()).matches()) - .count() == 0); - // update scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "VF_RI2_G4_withArtifacts_group_naming_delete_update.csar", "VF_RI2_G4_withArtifacts_group_naming.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - resourceDetails.setCsarVersion("2"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - groups = resource.getGroups(); - assertTrue(groups != null && groups.size() == 5); - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "VF_RI2_G4_withArtifacts_group_naming_a.csar", "VF_RI2_G4_withArtifacts_group_naming.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - resourceDetails.setCsarVersion("3"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - groups = resource.getGroups(); - assertTrue(groups != null && groups.size() == 6); - assertTrue(groups.stream() - .filter(g -> g.getType().equals(Constants.DEFAULT_GROUP_VF_MODULE) - && !Pattern.compile(Constants.MODULE_NEW_NAME_PATTERN).matcher(g.getName()).matches()) - .count() == 0); - } - - @Test - public void createUpdateDeleteAllRequiredArtifactsTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes; - ResourceReqDetails resourceDetails; - RestResponse updateResource; - RestResponse createResource; - Resource resource; - String artifactName = "heatnested7"; - - ImportReqDetails resourceDetails0 = ElementFactory.getDefaultImportResource(); - createResource = importUserDefinedNodeType(userDefinedNodeYaml, sdncModifierDetails, resourceDetails0); - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "orig2GV001_a.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("orig2GV001.csar"); - resourceDetails.setCsarVersion("1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - // create new resource from Csar - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - BaseRestUtils.checkCreateResponse(createResource); - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertTrue(resource.getDeploymentArtifacts().get(artifactName).getRequiredArtifacts().size() == 2); - List<GroupDefinition> groups = resource.getGroups(); - // update scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "orig2GV006-remove-all-nested-artifacts.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - resourceDetails.setCsarVersion("2"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertTrue(resource.getDeploymentArtifacts().get(artifactName).getRequiredArtifacts().size() == 0); - groups = resource.getGroups(); - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "orig2GV001_a.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - // First create from orig2GV006-remove-all-nested-artifacts.csar (without - // requiredArtifact) - // Submit for testing - // Login as tester -> Certification - // Login as designer - // then update to orig2GV008-change-nested-oam-fileContent.csar (with - // requiredArtifact) - // Expected: requiredArtifact: ["hot-nimbus-psm_v1.0.yaml", - // "hot-nimbus-swift-container_v1.0.yaml"] - // Actual: no requiredArtifact - @Test - public void createUpdateAddRequiredArtifactsTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - RestResponse copyRes; - ResourceReqDetails resourceDetails; - RestResponse updateResource; - RestResponse createResource; - Resource resource; - String artifactName = "heatnested7"; - - ImportReqDetails resourceDetails0 = ElementFactory.getDefaultImportResource(); - createResource = importUserDefinedNodeType(userDefinedNodeYaml, sdncModifierDetails, resourceDetails0); - BaseRestUtils.checkCreateResponse(createResource); - createResource = LifecycleRestUtils.certifyResource(resourceDetails0); - BaseRestUtils.checkSuccess(createResource); - - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "orig2GV006-remove-all-nested-artifacts.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - - resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setName("TEST01"); - resourceDetails.setCsarUUID("orig2GV001.csar"); - resourceDetails.setCsarVersion("1"); - resourceDetails.setResourceType(ResourceTypeEnum.VF.name()); - // create new resource from Csar - createResource = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - BaseRestUtils.checkCreateResponse(createResource); - createResource = LifecycleRestUtils.certifyResource(resourceDetails); - BaseRestUtils.checkSuccess(createResource); - - resource = ResponseParser.parseToObjectUsingMapper(createResource.getResponse(), Resource.class); - assertTrue(resource.getDeploymentArtifacts().get(artifactName).getRequiredArtifacts().size() == 0); - List<GroupDefinition> groups = resource.getGroups(); - // update scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, - "orig2GV008-change-nested-oam-fileContent.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - resourceDetails.setDescription("BLA BLA BLA"); - resourceDetails.setCsarVersion("2"); - updateResource = ResourceRestUtils.updateResource(resourceDetails, sdncModifierDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(updateResource); - resource = ResponseParser.parseToObjectUsingMapper(updateResource.getResponse(), Resource.class); - assertTrue(resource.getDeploymentArtifacts().get(artifactName).getRequiredArtifacts().size() == 2); - groups = resource.getGroups(); - // back original scar - copyRes = ImportCsarResourceTest.copyCsarRest(sdncModifierDetails, "orig2GV001_a.csar", "orig2GV001.csar"); - BaseRestUtils.checkSuccess(copyRes); - } - - private RestResponse importUserDefinedNodeType(String payloadName, User sdncModifierDetails, - ImportReqDetails resourceDetails) throws Exception { - - Path path = Paths.get(rootPath + csarFolderPath + payloadName); - byte[] data = Files.readAllBytes(path); - String payloadData = Base64.encodeBase64String(data); - resourceDetails.setPayloadData(payloadData); - - resourceDetails.setPayloadName(payloadName); - resourceDetails.setResourceType(ResourceTypeEnum.VFC.name()); - return ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ToscaTemplateVersionTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ToscaTemplateVersionTest.java deleted file mode 100644 index 4a9e9beff4..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/imports/ToscaTemplateVersionTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.openecomp.sdc.ci.tests.execute.imports; - -import static org.junit.Assert.assertEquals; - -import java.nio.file.Paths; -import java.util.Map; - -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.ToscaParserUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.ImportUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class ToscaTemplateVersionTest extends ComponentBaseTest { - - private static final String EXPECTED_EXPORT_TOSCA_VERSION = "tosca_simple_yaml_1_1"; - private static final String YML_110_VERSION = "loadBalancerTestVersion.yml"; - public static TestName name = new TestName(); - private String SOURCE_DIR; - private static String WORK_DIR = "importToscaResourceByCreateUrl"; - - public ToscaTemplateVersionTest() { - super(name, ToscaTemplateVersionTest.class.getName()); - } - - @BeforeMethod - public void setUp() throws Exception { - SOURCE_DIR = config.getResourceConfigDir(); - } - - @Test - public void verifyExportYamlVersion() throws Exception { - User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciYamlVersionTest", ServiceCategoriesEnum.MOBILITY, defaultUser.getUserId()); - RestResponse serviceResponse = ServiceRestUtils.createService(serviceDetails, defaultUser); - BaseRestUtils.checkCreateResponse(serviceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(serviceResponse.getResponse(), Service.class); - Map<String, Object> load = ToscaParserUtils.downloadAndParseToscaTemplate(defaultUser, service); - assertEquals(ToscaParserUtils.getToscaVersion(load), EXPECTED_EXPORT_TOSCA_VERSION); - } - - @Test - public void testVerifyImportYamlVersion_1_1_0() throws Exception { - String testResourcesPath = Paths.get(SOURCE_DIR, WORK_DIR).toString(); - ImportReqDetails importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(ElementFactory.getDefaultImportResource(), testResourcesPath, - YML_110_VERSION); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - null); - BaseRestUtils.checkCreateResponse(importResourceResponse); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/inputs/InputsApiTests.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/inputs/InputsApiTests.java deleted file mode 100644 index 633ce45178..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/inputs/InputsApiTests.java +++ /dev/null @@ -1,407 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.inputs; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang3.tuple.Pair; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ArtifactUiDownloadData; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstInputsMap; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstancePropInput; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.InputDefinition; -import org.openecomp.sdc.be.model.PropertyDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.InputsRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils; -import org.testng.annotations.Test; -import org.yaml.snakeyaml.Yaml; - -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; - -import fj.data.Either; - -/** - * CI-Tests for inputs - * @author il0695 - * - */ -public class InputsApiTests extends ComponentBaseTest { - - private static String inputCsar1 = "FCGI_with_inputs.csar"; - private static String inputCsar2 = "LDSA1_with_inputs.csar"; - private static User sdncDesignerDetails = null; - - @Rule - public static TestName name = new TestName(); - - /** - * Constructor - */ - public InputsApiTests() { - super(name, InputsApiTests.class.getName()); - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - } - - /** - * Create VF with inputs from CSAR file - * - * @throws Exception - */ - @Test - public void testCreateResourceInstanceWithInputsFromCsar() throws Exception { - Resource vf = AtomicOperationUtils.importResourceFromCSAR(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, inputCsar1); - assertTrue("Success creating VF from CSAR", !vf.getInputs().isEmpty()); - } - - /** - * Create service and add to it VF instance with inputs - * - * @throws Exception - */ - @Test - public void testAddVfInstanceWithInputsToService() throws Exception { - createServiceWithVFInstanceWithInputs(); - } - - /** - * General test to check most functionality of inputs - * <ul> - * <li>Create service with VF instance that has inputs)</li> - * <li>Get all inputs of VF instance</li> - * <li>Add inputs to service</li> - * <li>Get service inputs</li> - * <li>Delete service inputs</li> - * </ul> - * - * @throws Exception - */ - @Test - public void testInputsMainFunctionality() throws Exception { - Service service = createServiceWithVFInstanceWithInputs(); - int totalInputsBeforeAdd = service.getInputs().size(); - - // Get component instances - RestResponse getInstancesResponse = ComponentInstanceRestUtils.getComponentInstances(ComponentTypeEnum.SERVICE, service.getUniqueId(), sdncDesignerDetails); - BaseValidationUtils.checkSuccess(getInstancesResponse); - List<ComponentInstance> serviceInstances = new Gson().fromJson(getInstancesResponse.getResponse(), new TypeToken<ArrayList<ComponentInstance>>(){}.getType()); - - // Get all inputs of first instance - ComponentInstance vfInstance = serviceInstances.get(0); - RestResponse getComponentInstanceInputsResponse = InputsRestUtils.getComponentInstanceInputs(service, vfInstance); - BaseValidationUtils.checkSuccess(getComponentInstanceInputsResponse); - List<ComponentInstancePropInput> instanceInputs = new Gson().fromJson(getComponentInstanceInputsResponse.getResponse(), new TypeToken<ArrayList<ComponentInstancePropInput>>(){}.getType()); - - // Take only the 2 first inputs - List<ComponentInstancePropInput> inputsToAdd = instanceInputs.stream().limit(2).collect(Collectors.toList()); - - // Build component instances input map to add to server - ComponentInstInputsMap buildComponentInstInputsMap = buildComponentInstInputsMap(vfInstance.getUniqueId(), inputsToAdd); - RestResponse addInputResponse = InputsRestUtils.addInput(service, buildComponentInstInputsMap, UserRoleEnum.DESIGNER); - BaseValidationUtils.checkSuccess(addInputResponse); - - // Get service inputs count - RestResponse getComponentInputsResponse = InputsRestUtils.getComponentInputs(service); - BaseValidationUtils.checkSuccess(getComponentInputsResponse); - List<InputDefinition> serviceInputsAfterAdd = new Gson().fromJson(getComponentInputsResponse.getResponse(), new TypeToken<ArrayList<InputDefinition>>(){}.getType()); - if (serviceInputsAfterAdd.size()-totalInputsBeforeAdd!=2) { - assertTrue("Error adding inputs to service (service should have 2 inputs)", false); - } - - // Delete 1 input from service - RestResponse deleteInputFromComponentResponse = InputsRestUtils.deleteInputFromComponent(service, serviceInputsAfterAdd.get(0).getUniqueId()); - BaseValidationUtils.checkSuccess(deleteInputFromComponentResponse); - - // Get service inputs count after delete - RestResponse getComponentInputsResponseAfterDelete = InputsRestUtils.getComponentInputs(service); - BaseValidationUtils.checkSuccess(getComponentInputsResponseAfterDelete); - List<InputDefinition> serviceInputsAfterDelete = new Gson().fromJson(getComponentInputsResponseAfterDelete.getResponse(), new TypeToken<ArrayList<InputDefinition>>(){}.getType()); - if (serviceInputsAfterDelete.size()-totalInputsBeforeAdd!=1) { - assertTrue("Error deleting inputs from service (service should have 1 input)", false); - } - - assertTrue("Success testing inputs main functionality", true); - } - - /** - * Test to check deletion of inputs related to CP/VL property values - * @throws Exception - */ - @Test - public void testDeleteInputsRelatedToPropertyValues() throws Exception { - Service service = createServiceWithVLinstance(); - User user = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - String simplePropName = "network_technology"; - String complexPropName = "network_assignments"; - String propertiesName = "network_assignments#ipv6_subnet_default_assignment#ip_network_address_plan"; - String vlInstanceId = service.getComponentInstances().get(0).getUniqueId(); - - // Take a simple property type and a complex property type - List<ComponentInstanceProperty> inputsToAdd = service.getComponentInstancesProperties().get(vlInstanceId) - .stream() - .filter(p -> simplePropName.equals(p.getName()) || complexPropName.equals(p.getName())) - .collect(Collectors.toList()); - - List<ComponentInstancePropInput> propInputList = new ArrayList<>(); - for (ComponentInstanceProperty prop : inputsToAdd) { - if (simplePropName.equals(prop.getName())) { - propInputList.add(new ComponentInstancePropInput(prop)); - } else { - propInputList.add(buildComponentInstNetworkAssignmentIpv6AssignmentComplexPropertyInput(prop, propertiesName)); - } - } - // Set component instance property input map and add to inputs service - ComponentInstInputsMap componentInstInputsMap = buildComponentInstPropertyInputsMap(vlInstanceId, propInputList); - RestResponse addInputResponse = InputsRestUtils.addInput(service, componentInstInputsMap, UserRoleEnum.DESIGNER); - BaseValidationUtils.checkSuccess(addInputResponse); - - // Get the updated service - ServiceReqDetails serviceDetails = new ServiceReqDetails(service); - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, user); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - - // validate instance get_input property values in service and tosca template - ComponentInstance vlInstance = service.getComponentInstances().get(0); - String simplePropValue = "{\"get_input\":\"" + vlInstance.getNormalizedName() + "_" + simplePropName + "\"}"; - String complexPropValue = "{\"ipv6_subnet_default_assignment\":{\"ip_network_address_plan\":{\"get_input\":\"" + vlInstance.getNormalizedName() + "_" + propertiesName.replaceAll("#", "_") + "\"}}}"; - // download and compare - Map<String, Object> load = downloadAndParseServiceToscaTemplate(user, service); - validateGetInputInstancePropertyValues(load, service, simplePropName, simplePropValue, complexPropName, complexPropValue, vlInstance); - - // Delete inputs from service - RestResponse deleteInputResponse = InputsRestUtils.deleteInputFromComponent(service, service.getInputs().get(0).getUniqueId()); - BaseValidationUtils.checkSuccess(deleteInputResponse); - deleteInputResponse = InputsRestUtils.deleteInputFromComponent(service, service.getInputs().get(1).getUniqueId()); - BaseValidationUtils.checkSuccess(deleteInputResponse); - - // Get the updated service - getServiceResponse = ServiceRestUtils.getService(serviceDetails, user); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - - // download and compare (get_input property values removed) - load = downloadAndParseServiceToscaTemplate(user, service); - simplePropValue = "{}"; - complexPropValue = "{\"ipv6_subnet_default_assignment\":{\"ip_network_address_plan\":{}}}"; - validateGetInputInstancePropertyValues(load, service, simplePropName, simplePropValue, complexPropName, complexPropValue, vlInstance); - - } - - /** - * Private method to create service with VF instance that has inputs - * This is private method to be used by multiple tests - * - * @return {@link org.openecomp.sdc.be.model} - * @throws Exception - * @throws IOException - */ - private Service createServiceWithVFInstanceWithInputs() throws Exception, IOException { - // Create default service - Either<Service, RestResponse> createDefaultServiceEither = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true); - if (createDefaultServiceEither.isRight()){ - assertTrue("Error creating default service", false); - } - Service service = createDefaultServiceEither.left().value(); - - // Create VF from CSAR file - Resource vfWithInputs = AtomicOperationUtils.importResourceFromCSAR(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, inputCsar2); - - // Certify VF - Pair<Component, RestResponse> changeComponentState = AtomicOperationUtils.changeComponentState(vfWithInputs, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - assertTrue("response code is BaseRestUtils.STATUS_CODE_SUCCESS, returned :" + changeComponentState.getRight().getErrorCode(), changeComponentState.getRight().getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - // Add VF instance to service - Either<ComponentInstance, RestResponse> addComponentInstanceToComponentContainerEither = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfWithInputs, service, UserRoleEnum.DESIGNER, true); - if (addComponentInstanceToComponentContainerEither.isRight()){ - assertTrue("Error adding VF to service", false); - } - - // Get service response - ServiceReqDetails serviceDetails = new ServiceReqDetails(service); - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - - // Get VF instance from service - ComponentInstance vfInstance = service.getComponentInstances().get(0); - if (vfInstance!=null){ - assertTrue("Success creating service with VF instance", true); - } else { - assertTrue("Error creating service with VF instance", false); - } - return service; - } - - - private Service createServiceWithVLinstance() throws Exception, IOException { - // Create default service - Either<Service, RestResponse> createDefaultServiceEither = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true); - if (createDefaultServiceEither.isRight()){ - assertTrue("Error creating default service", false); - } - Service service = createDefaultServiceEither.left().value(); - - Resource vl = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, "ExtVL", "1.0"); - - // add VL instance to service - Either<ComponentInstance, RestResponse> vlInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vl, service, UserRoleEnum.DESIGNER, true); - if (vlInstDetails.isRight()){ - assertTrue("Error adding VF to service", false); - } - - // Get service response - ServiceReqDetails serviceDetails = new ServiceReqDetails(service); - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - - // Get instances from service - ComponentInstance instance = service.getComponentInstances().get(0); - if (instance != null){ - assertTrue("Success creating service with VF instance", true); - } else { - assertTrue("Error creating service with VF instance", false); - } - - return service; - } - - /** - * Return default ComponentInstInputsMap - * - * @param addToInput - * @param inputs - * @return {@link org.openecomp.sdc.be.model.ComponentInstInputsMap} - */ - private ComponentInstInputsMap buildComponentInstInputsMap (String addToInput, List<ComponentInstancePropInput> inputs) { - Map<String, List<ComponentInstancePropInput>> map = new HashMap<>(); - map.put(addToInput, inputs); - ComponentInstInputsMap componentInstInputsMap = new ComponentInstInputsMap(); - componentInstInputsMap.setComponentInstanceInputsMap(map); - return componentInstInputsMap; - } - - private ComponentInstInputsMap buildComponentInstPropertyInputsMap (String instanceId, List<ComponentInstancePropInput> props) { - Map<String, List<ComponentInstancePropInput>> map = new HashMap<>(); - map.put(instanceId, props); - ComponentInstInputsMap componentInstInputsMap = new ComponentInstInputsMap(); - componentInstInputsMap.setComponentInstancePropInput(map); - return componentInstInputsMap; - } - - - private ComponentInstancePropInput buildComponentInstNetworkAssignmentIpv6AssignmentComplexPropertyInput (ComponentInstanceProperty prop, String propertiesName) { - ComponentInstancePropInput componentInstancePropInput = new ComponentInstancePropInput(prop); - componentInstancePropInput.setPropertiesName(propertiesName); - PropertyDefinition input = new PropertyDefinition(); - input.setUniqueId("org.openecomp.datatypes.network.SubnetAssignments.datatype.ip_network_address_plan"); - input.setName("ip_network_address_plan"); - input.setParentUniqueId("org.openecomp.datatypes.network.SubnetAssignments.datatype"); - input.setType("string"); - componentInstancePropInput.setInput(input); - return componentInstancePropInput; - - } - - private Map<String, Object> downloadAndParseServiceToscaTemplate(User user, Service service) throws Exception { - String artifactUniqeId = service.getToscaArtifacts().get("assettoscatemplate").getUniqueId(); - RestResponse toscaTemplate = ArtifactRestUtils.downloadServiceArtifactInternalApi(service.getUniqueId(), user, artifactUniqeId); - BaseRestUtils.checkSuccess(toscaTemplate); - ArtifactUiDownloadData artifactUiDownloadData = ResponseParser.parseToObject(toscaTemplate.getResponse(), ArtifactUiDownloadData.class); - byte[] fromUiDownload = artifactUiDownloadData.getBase64Contents().getBytes(); - byte[] decodeBase64 = Base64.decodeBase64(fromUiDownload); - Yaml yaml = new Yaml(); - InputStream inputStream = new ByteArrayInputStream(decodeBase64); - Map<String, Object> load = (Map<String, Object>) yaml.load(inputStream); - return load; - } - - private void validateGetInputInstancePropertyValues (Map<String, Object> load, Service service, String simplePropName, String simplePropValue, String complexPropName, String complexPropValue, ComponentInstance instance) { - - String instanceName = instance.getName(); - String instanceId = instance.getUniqueId(); - ComponentInstanceProperty simpleProp = service.getComponentInstancesProperties().get(instanceId).stream().filter(p -> p.getName().equals(simplePropName)).findAny().get(); - ComponentInstanceProperty complexProp = service.getComponentInstancesProperties().get(instanceId).stream().filter(p -> p.getName().equals(complexPropName)).findAny().get(); - - assertEquals(simpleProp.getValue(), simplePropValue); - assertEquals(complexProp.getValue(), complexPropValue); - // compare with downloaded tosca template - assertNotNull(load); - Map<String, Object> topology_template = (Map<String, Object>) load.get("topology_template"); - assertNotNull(topology_template); - Map<String, Object> nodes = (Map<String, Object>) topology_template.get("node_templates"); - assertNotNull(nodes); - Map<String, Object> vlInstanceObj = (Map<String, Object>) nodes.get(instanceName); - assertNotNull(vlInstanceObj); - Map<String, Object> props = (Map<String, Object>) vlInstanceObj.get("properties"); - assertNotNull(props); - Map<String, Object> complexPropObj = (Map<String, Object>) props.get(complexPropName); - assertNotNull(complexPropObj); - Gson gson = new Gson(); - assertEquals(gson.toJson(complexPropObj), complexProp.getValue()); - - // if simpleProp has an empty value it will not be generated in the tosca map - if (!simpleProp.getValue().equals("{}")){ - Map<String, Object> simplePropObj = (Map<String, Object>) props.get(simplePropName); - assertNotNull(simplePropObj); - assertEquals(gson.toJson(simplePropObj), simpleProp.getValue()); - } - - - - - - - } - - - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/LCSbaseTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/LCSbaseTest.java deleted file mode 100644 index 84bb5421ab..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/LCSbaseTest.java +++ /dev/null @@ -1,274 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.lifecycle; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; - -import org.apache.log4j.lf5.util.ResourceUtils; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.ArtifactUtils; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.BeforeMethod; - -/** - * - * @author alitvinsky - * - * resourceDetails - create, Add Heat, certify resourceDetails1 - create - * resource, LCS - CheckOut serviceDetails - create, add RI from - * resourceDetails serviceDetails2 - create, add RI from resourceDetails - * serviceDetailsEmpty - create, LCS - CheckOut serviceDetailsEmpty2 - - * create, LCS - CheckOut - * - */ -public abstract class LCSbaseTest extends ComponentBaseTest { - - protected ResourceReqDetails resourceDetails; - protected ResourceReqDetails resourceDetails1; - protected ServiceReqDetails serviceDetails; - protected ServiceReqDetails serviceDetails2; - protected ServiceReqDetails serviceDetailsEmpty; - protected ServiceReqDetails serviceDetailsEmpty2; - protected ComponentInstanceReqDetails componentInstanceReqDetails; - protected ComponentInstanceReqDetails resourceInstanceReqDetails2; - protected User sdncDesignerDetails1; - protected User sdncDesignerDetails2; - protected static User sdncTesterDeatails1; - protected User sdncAdminDetails1; - protected ArtifactReqDetails heatArtifactDetails; - protected ArtifactReqDetails heatVolArtifactDetails; - protected ArtifactReqDetails heatNetArtifactDetails; - - protected ArtifactReqDetails defaultArtifactDetails; - protected ResourceUtils resourceUtils; - protected ArtifactUtils artifactUtils; - - // protected static ServiceUtils serviceUtils = new ServiceUtils(); - public LCSbaseTest(TestName testName, String className) { - super(testName, className); - } - - @BeforeMethod - public void before() throws Exception { - - initializeMembers(); - - createComponents(); - - } - - public void initializeMembers() throws IOException, Exception { - resourceDetails = ElementFactory.getDefaultResource(); - // resourceDetails = - // ElementFactory.getDefaultResource("myNewResource1234567890", - // NormativeTypesEnum.ROOT, ResourceServiceCategoriesEnum.ROUTERS, - // UserRoleEnum.DESIGNER.getUserId()); - resourceDetails1 = ElementFactory.getDefaultResource("secondResource", NormativeTypesEnum.ROOT); - serviceDetails = ElementFactory.getDefaultService(); - serviceDetails2 = ElementFactory.getDefaultService("newTestService2", ServiceCategoriesEnum.MOBILITY, "al1976"); - serviceDetailsEmpty = ElementFactory.getDefaultService("newEmptyService", ServiceCategoriesEnum.MOBILITY, - "al1976"); - serviceDetailsEmpty2 = ElementFactory.getDefaultService("newEmptyService2", ServiceCategoriesEnum.MOBILITY, - "al1976"); - sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncDesignerDetails2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - sdncTesterDeatails1 = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncAdminDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - heatNetArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_NET.getType()); - heatVolArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT_VOL.getType()); - componentInstanceReqDetails = ElementFactory.getDefaultComponentInstance(); - resourceInstanceReqDetails2 = ElementFactory.getDefaultComponentInstance(); - - } - - protected void createComponents() throws Exception { - - RestResponse response = ResourceRestUtils.createResource(resourceDetails1, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("resource uniqueId is null:", resourceDetails1.getUniqueId()); - - response = ResourceRestUtils.createResource(resourceDetails, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("resource uniqueId is null:", resourceDetails.getUniqueId()); - - response = ServiceRestUtils.createService(serviceDetails, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("service uniqueId is null:", serviceDetails.getUniqueId()); - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, - resourceDetails.getUniqueId()); - assertTrue("add HEAT artifact to resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - - // certified resource - response = LCSbaseTest.certifyResource(resourceDetails, sdncDesignerDetails1); - assertTrue("certify resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - - // add resource instance with HEAT deployment artifact to the service - componentInstanceReqDetails.setComponentUid(resourceDetails.getUniqueId()); - response = ComponentInstanceRestUtils.createComponentInstance(componentInstanceReqDetails, sdncDesignerDetails1, - serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE); - assertTrue("response code is not 201, returned: " + response.getErrorCode(), response.getErrorCode() == 201); - - response = ServiceRestUtils.createService(serviceDetails2, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("service uniqueId is null:", serviceDetails2.getUniqueId()); - - componentInstanceReqDetails.setComponentUid(resourceDetails.getUniqueId()); - response = ComponentInstanceRestUtils.createComponentInstance(componentInstanceReqDetails, sdncDesignerDetails1, - serviceDetails2.getUniqueId(), ComponentTypeEnum.SERVICE); - assertTrue("response code is not 201, returned: " + response.getErrorCode(), response.getErrorCode() == 201); - - response = ServiceRestUtils.createService(serviceDetailsEmpty, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("service uniqueId is null:", serviceDetailsEmpty.getUniqueId()); - - response = ServiceRestUtils.createService(serviceDetailsEmpty2, sdncDesignerDetails1); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("service uniqueId is null:", serviceDetailsEmpty2.getUniqueId()); - - DbUtils.cleanAllAudits(); - - } - - public static RestResponse certifyResource(ResourceReqDetails resourceDetails, User user) throws Exception { - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user.getUserId(), - LifeCycleStatesEnum.CHECKIN); - // if (restResponseResource.getErrorCode() == 200){ - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user.getUserId(), - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - // }else - // return restResponseResource; - sdncTesterDeatails1 = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - if (restResponseResource.getErrorCode() == 200) { - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, - sdncTesterDeatails1.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION); - } else - return restResponseResource; - if (restResponseResource.getErrorCode() == 200) { - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, - sdncTesterDeatails1.getUserId(), LifeCycleStatesEnum.CERTIFY); - } - return restResponseResource; - } - - public static RestResponse certifyService(ServiceReqDetails serviceDetails, User user) throws Exception { - RestResponse restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails, user, - LifeCycleStatesEnum.CHECKIN); - // if (restResponseService.getErrorCode() == 200){ - restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails, user, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - // }else - // return restResponseService; - - sdncTesterDeatails1 = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - if (restResponseService.getErrorCode() == 200) { - restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDeatails1, - LifeCycleStatesEnum.STARTCERTIFICATION); - } else - return restResponseService; - if (restResponseService.getErrorCode() == 200) { - restResponseService = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDeatails1, - LifeCycleStatesEnum.CERTIFY); - } - return restResponseService; - } - - protected static RestResponse raiseResourceToTargetVersion(ResourceReqDetails resourceDetails, String targetVersion, - User user) throws Exception { - return raiseResourceToTargetVersion(resourceDetails, targetVersion, null, user); - } - - protected static RestResponse raiseResourceToTargetVersion(ResourceReqDetails resourceDetails, String targetVersion, - RestResponse prevResponse, User user) throws Exception { - - String[] splitParts = targetVersion.split("\\."); - - int version = Integer.parseInt(splitParts[1]); - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - - if (prevResponse != null) { - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(prevResponse.getResponse()); - if (resourceRespJavaObject.getLifecycleState().equals(LifecycleStateEnum.CERTIFIED)) { - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, - user.getUserId(), LifeCycleStatesEnum.CHECKOUT); - } - } - - RestResponse restResponseResource = null; - for (int i = 0; i < (version - 1); i++) { - - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user, null, - LifeCycleStatesEnum.CHECKIN, checkinComentJson); - if (restResponseResource.getErrorCode() == 200) { - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user.getUserId(), - LifeCycleStatesEnum.CHECKOUT); - if (restResponseResource.getErrorCode() == 200) { - - } else - break; - - } else - break; - - } - - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user, null, - LifeCycleStatesEnum.CHECKIN, checkinComentJson); - assertEquals("Check response code ", 200, restResponseResource.getErrorCode().intValue()); - return restResponseResource; - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/ServiceCertWithoutDeploymentArtifacts.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/ServiceCertWithoutDeploymentArtifacts.java deleted file mode 100644 index 53f1fd20d5..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/lifecycle/ServiceCertWithoutDeploymentArtifacts.java +++ /dev/null @@ -1,65 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.lifecycle; - -import static org.testng.AssertJUnit.assertTrue; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.testng.annotations.Test; - -public class ServiceCertWithoutDeploymentArtifacts extends LCSbaseTest { - protected ServiceReqDetails serviceDetails; - protected User sdncDesignerDetails; - protected User sdncAdminDetails; - protected Service serviceServ; - - @Rule - public static TestName testName = new TestName(); - - public ServiceCertWithoutDeploymentArtifacts() { - super(testName, ServiceCertWithoutDeploymentArtifacts.class.getName()); - } - - @Test - /** - * checks possibility to certify service without of deployment artifacts - * @throws Exception - */ - public void testDeploymentArtifactsRestriction() throws Exception { - - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - serviceServ = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - assertTrue(serviceServ.getDeploymentArtifacts() == null || serviceServ.getDeploymentArtifacts().isEmpty()); - assertTrue(serviceServ.getComponentInstances() == null || serviceServ.getComponentInstances().isEmpty()); - serviceDetails = new ServiceReqDetails(serviceServ); - RestResponse changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/AdditionalInformationServletTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/AdditionalInformationServletTest.java deleted file mode 100644 index 1cf16978e4..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/AdditionalInformationServletTest.java +++ /dev/null @@ -1,2021 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.property; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.json.simple.parser.JSONParser; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.elements.AdditionalInfoParameterInfo; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.model.AdditionalInformationDefinition; -import org.openecomp.sdc.be.model.PropertyConstraint; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.operations.impl.PropertyOperation.PropertyConstraintDeserialiser; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.execute.resource.ResourceApiTest; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.reflect.TypeToken; - -public class AdditionalInformationServletTest extends ComponentBaseTest { - - protected Type constraintType = new TypeToken<PropertyConstraint>() { - }.getType(); - - protected Gson gson = new GsonBuilder().registerTypeAdapter(constraintType, new PropertyConstraintDeserialiser()).create(); - - @Rule - public static TestName name = new TestName(); - - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - protected JSONParser jsonParser = new JSONParser(); - - public AdditionalInformationServletTest() { - super(name, AdditionalInformationServletTest.class.getName()); - } - - // @Before - // public void deleteResources() { - // //TODO Evg : will be new API added for delete by name and version - // - // ResourceReqDetails resource = getResource(); - // User user = getUser(); - // - // try { - // String resourceName = resource.getResourceName(); - // ResourceRestUtils.deleteResourceByNameAndVersion(user, resourceName, - // "0.1"); - // ResourceRestUtils.deleteResourceByNameAndVersion(user, resourceName, - // "0.2"); - // ResourceRestUtils.deleteResourceByNameAndVersion(user, resourceName, - // "1.0"); - // ResourceRestUtils.deleteResourceByNameAndVersion(user, resourceName, - // "1.1"); - // ResourceRestUtils.deleteResourceByNameAndVersion(user, resourceName + - // "aa", "0.1"); - // resourceUtils.deleteResource_allVersions(resource, user); - // - // } catch (IOException e) { - // assertTrue(false); - // } - // - // try { - // ServiceReqDetails serviceDetails = getServiceDetails(); - // - // RestResponse deleteServiceResponse = - // serviceUtils.deleteServiceByNameAndVersion(UserUtils.getAdminDetails(), - // serviceDetails.getServiceName(), "0.1"); - // - // assertNotNull("check response object is not null after delete - // service",deleteServiceResponse); - // assertNotNull("check error code exists in response after delete - // service",deleteServiceResponse.getErrorCode()); - // assertTrue("delete service failed status:" + - // deleteServiceResponse.getErrorCode(), - // deleteServiceResponse.getErrorCode() != 500); - // - // deleteServiceResponse = - // serviceUtils.deleteServiceByNameAndVersion(UserUtils.getAdminDetails(), - // serviceDetails.getServiceName(), "1.0"); - // - // assertNotNull("check response object is not null after delete - // service",deleteServiceResponse); - // assertNotNull("check error code exists in response after delete - // service",deleteServiceResponse.getErrorCode()); - // assertTrue("delete service failed status:" + - // deleteServiceResponse.getErrorCode(), - // deleteServiceResponse.getErrorCode() != 500); - // - // serviceUtils.deleteService_allVersions(serviceDetails, user); - // - // } catch (IOException e) { - // assertTrue(false); - // } - // } - - @Test - public void updateResourceAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - AssertJUnit.assertNotNull("check response object is not null after create resource", createResourceResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - String updatedKey = "ZZZ ZZZ"; - String updatedValue = "JJJJ"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - AssertJUnit.assertNotNull("check response object is not null after create property", createProperty); - AssertJUnit.assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - AssertJUnit.assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - AssertJUnit.assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - fromJson.setKey(updatedKey); - fromJson.setValue(updatedValue); - - RestResponse updatedProperty = updateAdditionalInformation(resourceId, fromJson, user, fromJson.getUniqueId()); - AssertJUnit.assertNotNull("check response object is not null after update additional information", updatedProperty); - AssertJUnit.assertNotNull("check error code exists in response after additional information", updatedProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after additional information", 200, updatedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(updatedProperty.getResponse(), AdditionalInfoParameterInfo.class); - AssertJUnit.assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - AssertJUnit.assertEquals("check returned key", "ZZZ ZZZ", updatedJson.getKey()); - AssertJUnit.assertEquals("check returned value", updatedValue, updatedJson.getValue()); - AssertJUnit.assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - } - - @Test - public void deleteResourceAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - AssertJUnit.assertNotNull("check response object is not null after create resource", createResourceResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - AssertJUnit.assertNotNull("check response object is not null after create property", createProperty); - AssertJUnit.assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - AssertJUnit.assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - AssertJUnit.assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = deleteAdditionalInformation(resourceId, fromJson.getUniqueId(), user); - AssertJUnit.assertNotNull("check response object is not null after update additional information", deletedProperty); - AssertJUnit.assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInfoParameterInfo.class); - AssertJUnit.assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - AssertJUnit.assertEquals("check returned key", "AAA AAA", updatedJson.getKey()); - AssertJUnit.assertEquals("check returned value", value, updatedJson.getValue()); - AssertJUnit.assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - deletedProperty = deleteAdditionalInformation(resourceId, fromJson.getUniqueId(), user); - AssertJUnit.assertNotNull("check response object is not null after update additional information", deletedProperty); - AssertJUnit.assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after additional information", 409, deletedProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceAdditionalInformationTestDuringLifecycle() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - AssertJUnit.assertNotNull("check response object is not null after create resource", createResourceResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - AssertJUnit.assertNotNull("check response object is not null after create property", createProperty); - AssertJUnit.assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - AssertJUnit.assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - AssertJUnit.assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - resource.setUniqueId(resourceId); - - // resourceUtils.addResourceMandatoryArtifacts(user, - // createResourceResponse); - - certifyResource(user, resource, null, 1); - - } - - public RestResponse createService() { - - User user = getUser(); - ServiceReqDetails serviceDetails = getServiceDetails(); - - RestResponse createServiceResponse = null; - try { - createServiceResponse = ServiceRestUtils.createService(serviceDetails, user); - AssertJUnit.assertNotNull("check response object is not null after create user", createServiceResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", createServiceResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after checkout resource", 201, createServiceResponse.getErrorCode().intValue()); - } catch (Exception e) { - AssertJUnit.assertTrue(false); - } - - return createServiceResponse; - - } - - protected User getUser() { - String adminFirstName = "Jimmy"; - String adminLastName = "Hendrix"; - String adminUserId = "jh0003"; - return new User(adminFirstName, adminLastName, adminUserId, null, null, null); - } - - protected ResourceReqDetails getResource() { - String resourceName = "ciResourceforproperty4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "pe0123"; - String icon = "myICON"; - ResourceReqDetails resource = new ResourceReqDetails(resourceName, description, resourceTags, null, derivedFrom, vendorName, vendorRelease, contactId, icon); - resource.addCategoryChain(ResourceCategoryEnum.GENERIC_DATABASE.getCategory(), ResourceCategoryEnum.GENERIC_DATABASE.getSubCategory()); - return resource; - } - - protected RestResponse createResource(ResourceReqDetails resourceDetails, User sdncModifierDetails) throws IOException { - - ResourceApiTest rat = new ResourceApiTest(); - ResourceReqDetails resourceObj = rat.getResourceObj(); - - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String userBodyJson = gson.toJson(resourceDetails); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort()); - RestResponse createResourceResponse = http.httpSendPost(url, userBodyJson, headersMap); - - return createResourceResponse; - - } - - protected RestResponse getResource(User sdncModifierDetails, String resourceUid) throws IOException { - - ResourceApiTest rat = new ResourceApiTest(); - ResourceReqDetails resourceObj = rat.getResourceObj(); - - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.GET_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceUid); - RestResponse createResourceResponse = http.httpSendGet(url, headersMap); - - return createResourceResponse; - - } - - protected RestResponse deleteResource(String resourceName, String resourceVersion, User sdncModifierDetails) throws IOException { - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceName, resourceVersion); - - return deleteResourceResponse; - - } - - protected RestResponse updateAdditionalInformation(String resourceId, AdditionalInfoParameterInfo additionalInfo, User sdncModifierDetails, String id) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String body = gson.toJson(additionalInfo); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.UPDATE_ADDITIONAL_INFORMATION_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendPut(url, body, headersMap); - - } - - protected RestResponse updateServiceAdditionalInformation(String resourceId, AdditionalInfoParameterInfo additionalInfo, User sdncModifierDetails, String id) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String body = gson.toJson(additionalInfo); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.UPDATE_ADDITIONAL_INFORMATION_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendPut(url, body, headersMap); - - } - - protected RestResponse deleteAdditionalInformation(String resourceId, String id, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.DELETE_ADDITIONAL_INFORMATION_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendDelete(url, headersMap); - - } - - protected RestResponse deleteServiceAdditionalInformation(String resourceId, String id, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.DELETE_ADDITIONAL_INFORMATION_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendDelete(url, headersMap); - - } - - protected RestResponse getAdditionalInformation(String resourceId, String id, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.GET_ADDITIONAL_INFORMATION_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendGet(url, headersMap); - - } - - protected RestResponse getServiceAdditionalInformation(String resourceId, String id, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.GET_ADDITIONAL_INFORMATION_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId, id); - return http.httpSendGet(url, headersMap); - - } - - protected RestResponse getResourceAllAdditionalInformation(String resourceId, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.GET_ALL_ADDITIONAL_INFORMATION_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId); - return http.httpSendGet(url, headersMap); - - } - - protected RestResponse getServiceAllAdditionalInformation(String resourceId, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.GET_ALL_ADDITIONAL_INFORMATION_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId); - return http.httpSendGet(url, headersMap); - - } - - protected RestResponse createResourceAdditionalInformation(String resourceId, AdditionalInfoParameterInfo additionalInfo, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String body = gson.toJson(additionalInfo); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_ADDITIONAL_INFORMATION_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort(), resourceId); - return http.httpSendPost(url, body, headersMap); - - } - - protected RestResponse createServiceAdditionalInformation(String serviceId, AdditionalInfoParameterInfo additionalInfo, User sdncModifierDetails) throws IOException { - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String body = gson.toJson(additionalInfo); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_ADDITIONAL_INFORMATION_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort(), serviceId); - return http.httpSendPost(url, body, headersMap); - - } - - protected ServiceReqDetails getServiceDetails() { - String serviceName = "ciNewTestService21"; - String category = ServiceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> tags = new ArrayList<String>(); - tags.add("serviceTag"); - tags.add(serviceName); - String description = "service Description"; - String vendorName = "Oracle"; - String vendorRelease = "0.1"; - String contactId = "al1976"; - String icon = "myIcon"; - - return new ServiceReqDetails(serviceName, category, tags, description, contactId, icon); - } - - // TODO Tal: Since Cashing change partial resource returned that causes null - // pointer exception in line: - // commented out till fixing - protected Resource certifyResource(User user, ResourceReqDetails resource, String resourceVersion, int numberOfAI) throws IOException { - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKIN); - - AssertJUnit.assertNotNull("check response object is not null after create user", checkInResponse); - AssertJUnit.assertNotNull("check error code exists in response after create user", checkInResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create user", 200, checkInResponse.getErrorCode().intValue()); - - Resource resourceAfterOperation = gson.fromJson(checkInResponse.getResponse(), Resource.class); - // TODO Tal: Since Cashing change partial resource returned that causes - // null pointer exception - /* - * AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - */ - /* - * AssertJUnit.assertEquals("check size of additional information", numberOfAI, resourceAfterOperation.getAdditionalInformation().get(0). getParameters().size()); - */ - - RestResponse req4certResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - AssertJUnit.assertNotNull("check response object is not null after create user", req4certResponse); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, req4certResponse.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(req4certResponse.getResponse(), Resource.class); - // TODO Tal: Since Cashing change partial resource returned that causes - // null pointer exception - /* - * AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - */ - /* - * AssertJUnit.assertEquals("check size of additional information", numberOfAI, resourceAfterOperation.getAdditionalInformation().get(0). getParameters().size()); - */ - - // change modifier - user.setUserId(UserRoleEnum.TESTER.getUserId()); - // start certification - - RestResponse startCertResourceResponse3 = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - AssertJUnit.assertNotNull("check response object is not null after create user", startCertResourceResponse3); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, startCertResourceResponse3.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(startCertResourceResponse3.getResponse(), Resource.class); - // TODO Tal: Since Cashing change partial resource returned that causes - // null pointer exception - /* - * AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - */ - /* - * AssertJUnit.assertEquals("check size of additional information", numberOfAI, resourceAfterOperation.getAdditionalInformation().get(0). getParameters().size()); - */ - - // certify - - RestResponse certifyResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CERTIFY); - AssertJUnit.assertNotNull("check response object is not null after create user", certifyResponse); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, certifyResponse.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(certifyResponse.getResponse(), Resource.class); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - AssertJUnit.assertEquals("check size of additional information", numberOfAI, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - Resource certifyResource = gson.fromJson(certifyResponse.getResponse(), Resource.class); - return certifyResource; - } - - protected Resource certifyService(User user, ServiceReqDetails service, String resourceVersion) throws Exception { - RestResponse checkInResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CHECKIN); - - AssertJUnit.assertNotNull("check response object is not null after create user", checkInResponse); - AssertJUnit.assertNotNull("check error code exists in response after create user", checkInResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create user", 200, checkInResponse.getErrorCode().intValue()); - - Resource resourceAfterOperation = gson.fromJson(checkInResponse.getResponse(), Resource.class); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - RestResponse req4certResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - AssertJUnit.assertNotNull("check response object is not null after create user", req4certResponse); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, req4certResponse.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(req4certResponse.getResponse(), Resource.class); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - // change modifier - user.setUserId(UserRoleEnum.TESTER.getUserId()); - // start certification - - RestResponse startCertResourceResponse3 = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - AssertJUnit.assertNotNull("check response object is not null after create user", startCertResourceResponse3); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, startCertResourceResponse3.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(startCertResourceResponse3.getResponse(), Resource.class); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - // certify - - RestResponse certifyResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CERTIFY); - AssertJUnit.assertNotNull("check response object is not null after create user", certifyResponse); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, certifyResponse.getErrorCode().intValue()); - - resourceAfterOperation = gson.fromJson(certifyResponse.getResponse(), Resource.class); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - AssertJUnit.assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - Resource certifyResource = gson.fromJson(certifyResponse.getResponse(), Resource.class); - return certifyResource; - } - - @Test - public void createResourceAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceAdditionalInfoFormatWithTags() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "<b>Bold<</b>"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertEquals("check returned key", "Bold&lt;", fromJson.getValue()); - - } - - @Test - public void createServiceAdditionalInfoFormatWithTags() throws Exception { - User user = getUser(); - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - assertNotNull("check response object is not null after create resource", createServiceResponse); - assertNotNull("check error code exists in response after create resource", createServiceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createServiceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "<b>Bold<</b>"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertEquals("check returned key", "Bold&lt;", fromJson.getValue()); - - } - - @Test - public void createResourceAdditionalInfoFormatWithWhiteSpaces() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = " "; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - key = " "; - value = "AAA AAA"; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceAdditionalInfoFormatWithWhiteSpaces() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - assertNotNull("check response object is not null after create resource", createServiceResponse); - assertNotNull("check error code exists in response after create resource", createServiceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createServiceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = " "; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - key = " "; - value = "AAA AAA"; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceAndUpdateAdditionalInfo() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - key = "BBB BBB"; - value = "BBBB"; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "BBB BBB", fromJson.getKey()); - - String updatedKey = "AAA AAA"; - String updatedValue = "JJJJ"; - - fromJson.setKey(updatedKey); - fromJson.setValue(updatedValue); - - RestResponse updatedProperty = updateAdditionalInformation(resourceId, fromJson, user, fromJson.getUniqueId()); - assertNotNull("check response object is not null after update additional information", updatedProperty); - assertNotNull("check error code exists in response after additional information", updatedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 409, updatedProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceEmptyAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = ""; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - key = "BBBB"; - value = ""; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceEmptyAdditionalInformationTest() throws Exception { - - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = ""; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceAllSpacesAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = " "; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceAllSpacesAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = " "; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceInvalidKeyAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "abc?"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceInvalidKeyAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "abc?"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceAdditionalInformationNullKeyTest() throws Exception { - - User user = getUser(); - ResourceReqDetails resource = getResource(); - - RestResponse createResourceResponse = createResource(resource, user); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - String key = null; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceAdditionalInformationNullKeyTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = null; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceMaximumInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - for (int i = 0; i < 50; i++) { - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + i, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceLifeCycleAndMaximumInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - resource.setUniqueId(resourceId); - - String key = "AAA AAA"; - String value = "BBBB"; - - for (int i = 0; i < 49; i++) { - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + i, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } - - String resourceVersion = "0.1"; - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - - assertNotNull("check response object is not null after create property", checkInResponse); - assertNotNull("check error code exists in response after create property", checkInResponse.getErrorCode()); - assertEquals("Check response code after create property", 200, checkInResponse.getErrorCode().intValue()); - - resourceVersion = "0.2"; - - RestResponse checkOutResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT, null); - - resourceId = ResponseParser.getUniqueIdFromResponse(checkOutResponse); - resource.setUniqueId(resourceId); - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 50, value); - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 51, value); - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - RestResponse checkUndoOutResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.UNDOCHECKOUT, null); - - resourceVersion = "0.1"; - - checkOutResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT, null); - resourceId = ResponseParser.getUniqueIdFromResponse(checkOutResponse); - resource.setUniqueId(resourceId); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 50, value); - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 51, value); - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createResourceLifeCycleCertifyAndMaximumInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - resource.setUniqueId(resourceId); - - String key = "AAA AAA"; - String value = "BBBB"; - - for (int i = 0; i < 49; i++) { - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + i, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } - - String resourceVersion = "0.1"; - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - - // resourceUtils.addResourceMandatoryArtifacts(user, - // createResourceResponse); - - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - - assertNotNull("check response object is not null after create property", checkInResponse); - assertNotNull("check error code exists in response after create property", checkInResponse.getErrorCode()); - assertEquals("Check response code after create property", 200, checkInResponse.getErrorCode().intValue()); - - RestResponse changeStateResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST, null); - changeStateResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.STARTCERTIFICATION, null); - changeStateResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CERTIFY, null); - - assertNotNull("check response object is not null after create property", checkInResponse); - assertNotNull("check error code exists in response after create property", checkInResponse.getErrorCode()); - assertEquals("Check response code after create property", 200, checkInResponse.getErrorCode().intValue()); - - resourceId = ResponseParser.getUniqueIdFromResponse(changeStateResponse); - resource.setUniqueId(resourceId); - - resourceVersion = "1.0"; - - changeStateResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT, null); - resourceId = ResponseParser.getUniqueIdFromResponse(changeStateResponse); - resource.setUniqueId(resourceId); - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 50, value); - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 51, value); - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceCycleAndMaximumInformationTest() throws Exception { - - User user = getUser(); - - ServiceReqDetails service = getServiceDetails(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - assertNotNull("check response object is not null after create resource", createServiceResponse); - assertNotNull("check error code exists in response after create resource", createServiceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createServiceResponse.getErrorCode().intValue()); - - service.setUniqueId(serviceId); - - String key = "AAA AAA"; - String value = "BBBB"; - - for (int i = 0; i < 49; i++) { - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + i, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } - - String resourceVersion = "0.1"; - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - RestResponse checkInResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CHECKIN, checkinComentJson); - - assertNotNull("check response object is not null after create property", checkInResponse); - assertNotNull("check error code exists in response after create property", checkInResponse.getErrorCode()); - assertEquals("Check response code after create property", 200, checkInResponse.getErrorCode().intValue()); - - resourceVersion = "0.2"; - - RestResponse checkOutResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT, null); - - serviceId = ResponseParser.convertServiceResponseToJavaObject(checkOutResponse.getResponse()).getUniqueId(); - service.setUniqueId(serviceId); - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 50, value); - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 51, value); - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - RestResponse checkUndoOutResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.UNDOCHECKOUT, null); - - resourceVersion = "0.1"; - - checkOutResponse = LifecycleRestUtils.changeServiceState(service, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT, null); - serviceId = ResponseParser.convertServiceResponseToJavaObject(checkOutResponse.getResponse()).getUniqueId(); - service.setUniqueId(serviceId); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 50, value); - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + 51, value); - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - } - - @Test - public void createServiceMaximumInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - String lastCreatedProperty = null; - - for (int i = 0; i < 50; i++) { - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key + i, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - lastCreatedProperty = fromJson.getUniqueId(); - - } - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 409, createProperty.getErrorCode().intValue()); - - RestResponse deletedProperty = deleteServiceAdditionalInformation(serviceId, lastCreatedProperty, user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } - - @Test - public void updateServiceAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - String updatedKey = "ZZZ ZZZ"; - String updatedValue = "JJJJ"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - fromJson.setKey(updatedKey); - fromJson.setValue(updatedValue); - - RestResponse updatedProperty = updateServiceAdditionalInformation(serviceId, fromJson, user, fromJson.getUniqueId()); - assertNotNull("check response object is not null after update additional information", updatedProperty); - assertNotNull("check error code exists in response after additional information", updatedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, updatedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(updatedProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - assertEquals("check returned key", "ZZZ ZZZ", updatedJson.getKey()); - assertEquals("check returned value", updatedValue, updatedJson.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - fromJson.setKey(updatedKey); - fromJson.setValue("\uC2B5"); - - updatedProperty = updateServiceAdditionalInformation(serviceId, fromJson, user, fromJson.getUniqueId()); - assertNotNull("check response object is not null after update additional information", updatedProperty); - assertNotNull("check error code exists in response after additional information", updatedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 400, updatedProperty.getErrorCode().intValue()); - - } - - @Test - public void deleteServiceAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = deleteServiceAdditionalInformation(serviceId, fromJson.getUniqueId(), user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", updatedJson.getKey()); - assertEquals("check returned value", value, updatedJson.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - deletedProperty = deleteServiceAdditionalInformation(serviceId, fromJson.getUniqueId(), user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 409, deletedProperty.getErrorCode().intValue()); - - } - - @Test - public void getResourceAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = getAdditionalInformation(resourceId, fromJson.getUniqueId(), user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", updatedJson.getKey()); - assertEquals("check returned value", value, updatedJson.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - } - - @Test - public void getServiceAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = getServiceAdditionalInformation(serviceId, fromJson.getUniqueId(), user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", updatedJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", updatedJson.getKey()); - assertEquals("check returned value", value, updatedJson.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), updatedJson.getUniqueId()); - - } - - @Test - public void getResourceAllAdditionalInformationTest() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = getResourceAllAdditionalInformation(resourceId, user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInformationDefinition updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInformationDefinition.class); - assertEquals("check number of parameters", 1, updatedJson.getParameters().size()); - AdditionalInfoParameterInfo info = updatedJson.getParameters().iterator().next(); - - assertFalse("check number of spaces", info.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", info.getKey()); - assertEquals("check returned value", value, info.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), info.getUniqueId()); - - } - - @Test - public void getServiceAllAdditionalInformationTest() throws Exception { - User user = getUser(); - - RestResponse createServiceResponse = createService(); - - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - RestResponse deletedProperty = getServiceAllAdditionalInformation(serviceId, user); - assertNotNull("check response object is not null after update additional information", deletedProperty); - assertNotNull("check error code exists in response after additional information", deletedProperty.getErrorCode()); - assertEquals("Check response code after additional information", 200, deletedProperty.getErrorCode().intValue()); - - AdditionalInformationDefinition updatedJson = gson.fromJson(deletedProperty.getResponse(), AdditionalInformationDefinition.class); - assertEquals("check number of parameters", 1, updatedJson.getParameters().size()); - AdditionalInfoParameterInfo info = updatedJson.getParameters().iterator().next(); - - assertFalse("check number of spaces", info.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", info.getKey()); - assertEquals("check returned value", value, info.getValue()); - assertEquals("check returned id", fromJson.getUniqueId(), info.getUniqueId()); - - } - - @Test - public void createServiceAdditionalInformationTestDuringLifecycle() throws Exception { - - User user = getUser(); - RestResponse createServiceResponse = createService(); - String serviceId = ResponseParser.convertServiceResponseToJavaObject(createServiceResponse.getResponse()).getUniqueId(); - String key = "AAA AAA"; - String value = "BBBB"; - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createServiceAdditionalInformation(serviceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - AdditionalInfoParameterInfo fromJson = gson.fromJson(createProperty.getResponse(), AdditionalInfoParameterInfo.class); - assertFalse("check number of spaces", fromJson.getKey().contains(" ")); - assertEquals("check returned key", "AAA AAA", fromJson.getKey()); - - ServiceReqDetails serviceDetails = getServiceDetails(); - - serviceDetails.setUniqueId(serviceId); - - // serviceUtils.addServiceMandatoryArtifacts(user, - // createServiceResponse); - - certifyService(user, serviceDetails, null); - - } - - @Test - public void createCascadeResource() { - - // TODO: to check after rebase - - User user = getUser(); - ResourceReqDetails resource = getResource(); - String newResourceNameSuffix = "aa"; - - RestResponse createResourceResponse = null; - try { - - createResourceResponse = createResource(resource, user); - assertEquals("check invalid type", 201, createResourceResponse.getErrorCode().intValue()); - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - String resourceVersion = "0.1"; - // resourceUtils.addResourceMandatoryArtifacts(user, - // createResourceResponse); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - resource.setUniqueId(resourceId); - Resource certifiedResource = certifyResource(user, resource, resourceVersion, 1); - - ResourceReqDetails newResourceDetails = getResource(); - String newResourceName = newResourceDetails.getName() + newResourceNameSuffix; - newResourceDetails.setName(newResourceName); - List<String> derivedFrom = new ArrayList<>(); - derivedFrom.add(certifiedResource.getName()); - newResourceDetails.setDerivedFrom(derivedFrom); - newResourceDetails.getTags().add(newResourceName); - - user.setUserId(UserRoleEnum.ADMIN.getUserId()); - RestResponse newCreateResourceResponse = createResource(newResourceDetails, user); - assertEquals("Check response code after creating resource", 201, newCreateResourceResponse.getErrorCode().intValue()); - Resource newResource = gson.fromJson(newCreateResourceResponse.getResponse(), Resource.class); - - RestResponse allAdditionalInformation = getResourceAllAdditionalInformation(newResource.getUniqueId(), user); - - assertNotNull("check response object is not null after update additional information", allAdditionalInformation); - assertNotNull("check error code exists in response after additional information", allAdditionalInformation.getErrorCode()); - assertEquals("Check response code after additional information", 200, allAdditionalInformation.getErrorCode().intValue()); - - AdditionalInformationDefinition updatedJson = gson.fromJson(allAdditionalInformation.getResponse(), AdditionalInformationDefinition.class); - assertEquals("check number of parameters", 0, updatedJson.getParameters().size()); - // AdditionalInfoParameterInfo info = - // updatedJson.getParameters().iterator().next(); - - String newResourceId = newResource.getUniqueId(); - createProperty = createResourceAdditionalInformation(newResourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - allAdditionalInformation = getResourceAllAdditionalInformation(newResourceId, user); - - assertNotNull("check response object is not null after update additional information", allAdditionalInformation); - assertNotNull("check error code exists in response after additional information", allAdditionalInformation.getErrorCode()); - assertEquals("Check response code after additional information", 200, allAdditionalInformation.getErrorCode().intValue()); - - updatedJson = gson.fromJson(allAdditionalInformation.getResponse(), AdditionalInformationDefinition.class); - assertEquals("check number of parameters", 1, updatedJson.getParameters().size()); - - } catch (IOException e) { - assertTrue(false); - } - - } - - @Test - public void createSamePropertyAfterCiCOResource() { - - User user = getUser(); - ResourceReqDetails resource = getResource(); - - RestResponse createResourceResponse = null; - try { - - createResourceResponse = createResource(resource, user); - assertEquals("check invalid type", 201, createResourceResponse.getErrorCode().intValue()); - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - String resourceVersion = "0.1"; - // resourceUtils.addResourceMandatoryArtifacts(user, - // createResourceResponse); - - String key = "AAA AAA"; - String value = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - resource.setUniqueId(resourceId); - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKIN); - - assertNotNull("check response object is not null after create user", checkInResponse); - assertNotNull("check error code exists in response after create user", checkInResponse.getErrorCode()); - assertEquals("Check response code after create user", 200, checkInResponse.getErrorCode().intValue()); - - Resource resourceAfterOperation = gson.fromJson(checkInResponse.getResponse(), Resource.class); - assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().size()); - assertEquals("check size of additional information", 1, resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - - RestResponse checkOutResponse = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT); - - assertNotNull("check response object is not null after create user", checkOutResponse); - assertNotNull("check error code exists in response after create user", checkOutResponse.getErrorCode()); - assertEquals("Check response code after create user", 200, checkOutResponse.getErrorCode().intValue()); - - Resource resourceAfterCoOperation = gson.fromJson(checkOutResponse.getResponse(), Resource.class); - assertEquals("check size of additional information", 1, resourceAfterCoOperation.getAdditionalInformation().size()); - assertEquals("check size of additional information", 1, resourceAfterCoOperation.getAdditionalInformation().get(0).getParameters().size()); - - String newResourceId = ResponseParser.getUniqueIdFromResponse(checkOutResponse); - - String key2 = "ZZZ"; - String value2 = "BBBB"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo2 = new AdditionalInfoParameterInfo(null, key2, value2); - - RestResponse createProperty2 = createResourceAdditionalInformation(newResourceId, additionalInfoParameterInfo2, user); - assertNotNull("check response object is not null after create property", createProperty2); - assertNotNull("check error code exists in response after create property", createProperty2.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty2.getErrorCode().intValue()); - - RestResponse afterCreateAI = ResourceRestUtils.getResource(user, newResourceId); - Resource resourceNew = gson.fromJson(afterCreateAI.getResponse(), Resource.class); - assertEquals("check size of additional information", 1, resourceNew.getAdditionalInformation().size()); - assertEquals("check size of additional information", 2, resourceNew.getAdditionalInformation().get(0).getParameters().size()); - - resource.setUniqueId(newResourceId); - Resource certifiedResource = certifyResource(user, resource, resourceVersion, 2); - assertEquals("check size of additional information", 1, certifiedResource.getAdditionalInformation().size()); - assertEquals("check size of additional information", 2, certifiedResource.getAdditionalInformation().get(0).getParameters().size()); - - user.setUserId(UserRoleEnum.DESIGNER.getUserId()); - resource.setUniqueId(certifiedResource.getUniqueId()); - RestResponse checkOutResponseAfterCertify = LifecycleRestUtils.changeResourceState(resource, user, resourceVersion, LifeCycleStatesEnum.CHECKOUT); - - assertNotNull("check response object is not null after create user", checkOutResponseAfterCertify); - assertNotNull("check error code exists in response after create user", checkOutResponseAfterCertify.getErrorCode()); - assertEquals("Check response code after create user", 200, checkOutResponseAfterCertify.getErrorCode().intValue()); - - Resource resourceAfterCertifyCoOperation = gson.fromJson(checkOutResponseAfterCertify.getResponse(), Resource.class); - assertEquals("check size of additional information", 1, resourceAfterCertifyCoOperation.getAdditionalInformation().size()); - assertEquals("check size of additional information", 2, resourceAfterCertifyCoOperation.getAdditionalInformation().get(0).getParameters().size()); - - } catch (IOException e) { - assertTrue(false); - } - - } - - // public Resource certifyService(User user, ServiceReqDetails service, - // String resourceVersion) throws Exception { - // - // RestResponse checkInResponse = - // LifecycleRestUtils.changeServiceState(service, user, resourceVersion, - // LifeCycleStates.CHECKIN); - // - // assertNotNull("check response object is not null after create user", - // checkInResponse); - // assertNotNull("check error code exists in response after create user", - // checkInResponse.getErrorCode()); - // assertEquals("Check response code after create user", 200, - // checkInResponse.getErrorCode().intValue()); - // - // Resource resourceAfterOperation = - // gson.fromJson(checkInResponse.getResponse(), Resource.class); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().size()); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - // - //// TODO Andrey - // createAndAddCertResourceToService(service, user); - // - // RestResponse req4certResponse = - // LifecycleRestUtils.changeServiceState(service, user, resourceVersion, - // LifeCycleStates.CERTIFICATIONREQUEST); - // - // assertNotNull("check response object is not null after create user", - // req4certResponse); - // assertEquals("Check response code after checkout resource", 200, - // req4certResponse.getErrorCode().intValue()); - // - // resourceAfterOperation = gson.fromJson(req4certResponse.getResponse(), - // Resource.class); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().size()); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - // - // //change modifier - // user.setUserId(UserRoleEnum.TESTER.getUserId()); - // - // //start certification - // RestResponse startCertResourceResponse3 = - // LifecycleRestUtils.changeServiceState(service, user, resourceVersion, - // LifeCycleStates.STARTCERTIFICATION); - // assertNotNull("check response object is not null after create user", - // startCertResourceResponse3); - // assertEquals("Check response code after checkout resource", 200, - // startCertResourceResponse3.getErrorCode().intValue()); - // - // resourceAfterOperation = - // gson.fromJson(startCertResourceResponse3.getResponse(), Resource.class); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().size()); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - // - // //certify - // - // RestResponse certifyResponse = - // LifecycleRestUtils.changeServiceState(service, user, resourceVersion, - // LifeCycleStates.CERTIFY); - // assertNotNull("check response object is not null after create user", - // certifyResponse); - // assertEquals("Check response code after checkout resource", 200, - // certifyResponse.getErrorCode().intValue()); - // - // resourceAfterOperation = gson.fromJson(certifyResponse.getResponse(), - // Resource.class); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().size()); - // assertEquals("check size of additional information", 1, - // resourceAfterOperation.getAdditionalInformation().get(0).getParameters().size()); - // - // Resource certifyResource = gson.fromJson(certifyResponse.getResponse(), - // Resource.class); - // return certifyResource; - // } - - private void createAndAddCertResourceToService(ServiceReqDetails serviceDetails, User user) throws Exception { - - User sdncTesterUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory.getDefaultComponentInstance(); - - RestResponse response = ResourceRestUtils.createResource(resourceDetails, user); - assertTrue("create request returned status:" + response.getErrorCode(), response.getErrorCode() == 201); - assertNotNull("resource uniqueId is null:", resourceDetails.getUniqueId()); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, user, resourceDetails.getUniqueId()); - assertTrue("add HEAT artifact to resource request returned status:" + response.getErrorCode(), response.getErrorCode() == 200); - - // certified resource - // response = LCSbaseTest.certifyResource(resourceDetails); - RestResponse restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user, LifeCycleStatesEnum.CHECKIN); - assertTrue("certify resource request returned status:" + restResponseResource.getErrorCode(), response.getErrorCode() == 200); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, user, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertTrue("certify resource request returned status:" + restResponseResource.getErrorCode(), response.getErrorCode() == 200); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterUser, LifeCycleStatesEnum.STARTCERTIFICATION); - assertTrue("certify resource request returned status:" + restResponseResource.getErrorCode(), response.getErrorCode() == 200); - restResponseResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterUser, LifeCycleStatesEnum.CERTIFY); - assertTrue("certify resource request returned status:" + restResponseResource.getErrorCode(), response.getErrorCode() == 200); - - // add resource instance with HEAT deployment artifact to the service - restResponseResource = LifecycleRestUtils.changeServiceState(serviceDetails, user, serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertTrue("certify resource request returned status:" + restResponseResource.getErrorCode(), response.getErrorCode() == 200); - resourceInstanceReqDetails.setComponentUid(resourceDetails.getUniqueId()); - response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, user, serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE); - assertTrue("response code is not 201, returned: " + response.getErrorCode(), response.getErrorCode() == 201); - } - - @Test - public void createResourceAdditionalInformationTestAddValue() throws Exception { - User user = getUser(); - ResourceReqDetails resource = getResource(); - - // deleteResource(resourceId, user); - RestResponse createResourceResponse = createResource(resource, user); - - String resourceId = ResponseParser.getUniqueIdFromResponse(createResourceResponse); - - assertNotNull("check response object is not null after create resource", createResourceResponse); - assertNotNull("check error code exists in response after create resource", createResourceResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResourceResponse.getErrorCode().intValue()); - - String key = "AAA AAA"; - String value = "\uC2B5"; - - AdditionalInfoParameterInfo additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - RestResponse createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - value = ""; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 400, createProperty.getErrorCode().intValue()); - - value = "----<b></b><>;"; - - additionalInfoParameterInfo = new AdditionalInfoParameterInfo(null, key, value); - - createProperty = createResourceAdditionalInformation(resourceId, additionalInfoParameterInfo, user); - assertNotNull("check response object is not null after create property", createProperty); - assertNotNull("check error code exists in response after create property", createProperty.getErrorCode()); - assertEquals("Check response code after create property", 201, createProperty.getErrorCode().intValue()); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentInstancePropertyTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentInstancePropertyTest.java deleted file mode 100644 index fdde5e571a..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentInstancePropertyTest.java +++ /dev/null @@ -1,1022 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.property; - -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.http.HttpStatus; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.PropertyDefinition.PropertyNames; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.PropertyReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.PropertyTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.PropertyRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import fj.data.Either; - -// open bug for this class: DE199108 - closed, DE199741 -public class ComponentInstancePropertyTest extends ComponentBaseTest { - - protected Resource basicVFC; - protected Resource vfc1FromBasicVFC; - protected Resource vfc2FromVfc1; - protected Resource vfResource; - - private List<ComponentInstanceProperty> expectedPropertyList; - private List<ComponentInstanceProperty> actualPropertyList; - // protected String updatedStringValue = "{Not Default String Value}"; - protected String updatedStringValue = "Not Default String Value"; - protected String updatedIntegerValue = "666"; - protected String updatedBooleanValue = "false"; - protected String newStringPropName = "stringProp2"; - protected String newIntegerPropName = "integerProp2"; - protected String newBooleanPropName = "booleanProp2"; - // bug DE199741 protected String newStringPropValue = "<second string - // value>"; - protected String newStringPropValue = "second string value"; - protected String newIntegerPropValue = "888"; - protected String newBooleanPropValue = "false"; - - @BeforeMethod - public void init() { - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - } - - @Rule - public static TestName name = new TestName(); - - public ComponentInstancePropertyTest() { - super(name, ComponentInstancePropertyTest.class.getName()); - } - - // --------------Regular - // resource------------------------------------------------------------------------------- - - @Test - public void nestedResourceProperty3Levels() throws Exception { - - // first res - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - // second resource - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - // third resource - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - // verify property - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, actualPropertyList); - assertTrue("check list size failed, expected 3", actualPropertyList.size() == 3); - - } - - // --------------VF - // resource----------------------------------------------------------- - - @Test - public void nestedVfResourceProperty3Levels() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - // verify property - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - } - - @Test - public void nestedVfResourceProperty3LevelsAndCpWithProp() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // four resource - Resource cp = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.NETWORK, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - PropertyReqDetails cpStringProperty = ElementFactory.getDefaultStringProperty(); - cpStringProperty.setName("Different Name"); - cpStringProperty.setPropertyDefaultValue("Different value from default"); - AtomicOperationUtils.addCustomPropertyToResource(cpStringProperty, cp, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - cp = AtomicOperationUtils.getResourceObject(cp, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(cp, expectedPropertyList); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, cp, expectedPropertyList, vfResource); - // verify property - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - } - - @Test - public void nestedCertifiedVfResourceProperty3Levels() throws Exception { - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CERTIFY, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - // verify property - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - } - - @Test - public void nestedVfResourceProperty3Levels2SameResInstances() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - // verify property - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - } - - // ------------------update resource - // property----------------------------------- - - @Test - public void nestedVfResourceProperty3LevelsUpdateFirstLevelProperty() throws Exception { - // first res - basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addDefaultPropertyToResource(PropertyTypeEnum.STRING, basicVFC, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - - // verify property - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedStringValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(vfResource, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - @Test - public void nestedVfResourceProperty3LevelsUpdateSecondLevelProperty() throws Exception { - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - - // second resource - vfc1FromBasicVFC = AtomicOperationUtils.createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addCustomPropertyToResource(ElementFactory.getDefaultIntegerProperty(), vfc1FromBasicVFC, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(vfc1FromBasicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - - // verify property - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedIntegerValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(vfResource, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS + " ,but was " + updatePropertyValueOnResourceInstance.getErrorCode(), - updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated properly", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - @Test - public void nestedVfResourceProperty3LevelsUpdateThirdLevelProperty() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - - // third resource - vfc2FromVfc1 = AtomicOperationUtils.createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, vfc1FromBasicVFC, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addCustomPropertyToResource(ElementFactory.getDefaultBooleanProperty(), vfc2FromVfc1, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(vfc2FromVfc1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - - // verify property - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedBooleanValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(vfResource, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - // ---------------------Service------------------------------------------------------------------------ - - /** - * Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p3) (p2) (p1) - */ - @Test - public void serviceWithNestedResourceProperty3Levels() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - /** - * Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) - */ - @Test - public void serviceWithNestedResourceProperty3LevelsAndVfProperty() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - PropertyReqDetails propDetails = ElementFactory.getDefaultBooleanProperty(); - propDetails.setName(newBooleanPropName); - propDetails.setPropertyDefaultValue(newBooleanPropValue); - AtomicOperationUtils.addCustomPropertyToResource(propDetails, vfResource, UserRoleEnum.DESIGNER, true); - propDetails = ElementFactory.getDefaultStringProperty(); - propDetails.setName(newStringPropName); - propDetails.setPropertyDefaultValue(newStringPropValue); - AtomicOperationUtils.addCustomPropertyToResource(propDetails, vfResource, UserRoleEnum.DESIGNER, true); - propDetails = ElementFactory.getDefaultIntegerProperty(); - propDetails.setName(newIntegerPropName); - propDetails.setPropertyDefaultValue(newIntegerPropValue); - AtomicOperationUtils.addCustomPropertyToResource(propDetails, vfResource, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfResource, expectedPropertyList); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - /** - * Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) CP(VF inst) (p5) - */ - @Test - public void serviceWithNestedResourceProperty3LevelsAndCp() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // four resource - Resource cp = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.NETWORK, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - PropertyReqDetails cpStringProperty = ElementFactory.getDefaultStringProperty(); - cpStringProperty.setName("Different Name"); - cpStringProperty.setPropertyDefaultValue("Different value from default"); - AtomicOperationUtils.addCustomPropertyToResource(cpStringProperty, cp, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - cp = AtomicOperationUtils.getResourceObject(cp, UserRoleEnum.DESIGNER); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(cp, expectedPropertyList); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, cp, expectedPropertyList, vfResource); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - /** - * Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) CP(inst) (p5) - */ - @Test - public void serviceWithNestedResourceProperty3LevelsAndCpResInst() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - // expectedPropertyList = - // PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, - // expectedPropertyList); - - // four resource - Resource cp = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.NETWORK, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - PropertyReqDetails cpStringProperty = ElementFactory.getDefaultStringProperty(); - cpStringProperty.setName("Different Name"); - cpStringProperty.setPropertyDefaultValue("Different value from default"); - AtomicOperationUtils.addCustomPropertyToResource(cpStringProperty, cp, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(cp, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - cp = AtomicOperationUtils.getResourceObject(cp, UserRoleEnum.DESIGNER); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(cp, expectedPropertyList); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - /** - * Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) | (p3) (p2) (p1) | (VFC(inst)-->VFC-->VFC-->VFC) (p3) (p2) (p1) - * - * VF2(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) | (p3') (p2') (p1') | (VFC(inst)-->VFC-->VFC-->VFC) (p3) (p2) (p1) - */ - @Test - public void serviceNestedVfResourceProperty3Levels2SameResInstances() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, expectedPropertyList); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - // verify property - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnResource(componentInstDetails, vfc2FromVfc1, expectedPropertyList, vfResource); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - // service test template - /** - * Service-->VF(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) - */ - @Test - public void serviceNestedVfResourceProperty3LevelsAndSelfVfProperty() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - PropertyReqDetails newProp = ElementFactory.getDefaultStringProperty(); - newProp.setName(newStringPropName); - newProp.setPropertyDefaultValue(newStringPropValue); - AtomicOperationUtils.addCustomPropertyToResource(newProp, vfResource, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - } - - /** - * update property(p4) - * - * - * VFC(p1) ^ | VFC(p2) ^ | Service-->VF(inst)-->VF-->(VFC(inst)-->VFC(p3) (p4) - */ - @Test - public void serviceNestedVfResourceProperty3LevelsAndSelfVfProperty_UpdateVfproperty() throws Exception { - // Create VFC(check-in state) derived from another resource - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - - // add property to VF - PropertyReqDetails newProp = ElementFactory.getDefaultStringProperty(); - newProp.setName(newStringPropName); - newProp.setPropertyDefaultValue(newStringPropValue); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addCustomPropertyToResource(newProp, vfResource, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update VF instance property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedStringValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - /** - * update property(p1) Service-->VF(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) - */ - @Test - public void serviceNestedVfResourceProperty3LevelsAndSelfVfPropertyUpdateVfInheritance1LevelProperty() throws Exception { - - basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addDefaultPropertyToResource(PropertyTypeEnum.STRING, basicVFC, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - // verify property - PropertyReqDetails newProp = ElementFactory.getDefaultStringProperty(); - newProp.setName(newStringPropName); - newProp.setPropertyDefaultValue(newStringPropValue); - AtomicOperationUtils.addCustomPropertyToResource(newProp, vfResource, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update VF property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedStringValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - /** - * update property(p2) Service-->VF(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) - */ - @Test - public void serviceNestedVfResourceProperty3LevelsAndSelfVfPropertyUpdateVfInheritance2LevelProperty() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = AtomicOperationUtils.createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addCustomPropertyToResource(ElementFactory.getDefaultIntegerProperty(), vfc1FromBasicVFC, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(vfc1FromBasicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - - // verify property - PropertyReqDetails newProp = ElementFactory.getDefaultStringProperty(); - newProp.setName(newStringPropName); - newProp.setPropertyDefaultValue(newStringPropValue); - AtomicOperationUtils.addCustomPropertyToResource(newProp, vfResource, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update VF property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedIntegerValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - /** - * update property(p3) Service-->VF(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) - */ - @Test - public void serviceNestedVfResourceProperty3LevelsAndSelfVfPropertyUpdateVfInheritance3LevelProperty() throws Exception { - - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = AtomicOperationUtils.createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, vfc1FromBasicVFC, ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true).left().value(); - Either<ComponentInstanceProperty, RestResponse> propDetailsToUpdate = AtomicOperationUtils.addCustomPropertyToResource(ElementFactory.getDefaultBooleanProperty(), vfc2FromVfc1, UserRoleEnum.DESIGNER, true); - String propNameToUpdate = propDetailsToUpdate.left().value().getName(); - String propTypeToUpdate = propDetailsToUpdate.left().value().getType(); - AtomicOperationUtils.changeComponentState(vfc2FromVfc1, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - // verify property - PropertyReqDetails newProp = ElementFactory.getDefaultStringProperty(); - newProp.setName(newStringPropName); - newProp.setPropertyDefaultValue(newStringPropValue); - AtomicOperationUtils.addCustomPropertyToResource(newProp, vfResource, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - // update VF property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getPropFromListByPropNameAndType(actualPropertyList, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedBooleanValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, null); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - - } - - /** - * update property p5' Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) CP(inst on VF) (p5) CP(inst) (p5') - */ - @Test - public void serviceWithNestedResourceProperty3LevelsAndCpOnVfUpdateCpInstanceOfService() throws Exception { - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CHECKIN, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - // expectedPropertyList = - // PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, - // expectedPropertyList); - - // four resource - Resource cp = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.NETWORK, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - PropertyReqDetails cpStringProperty = ElementFactory.getDefaultStringProperty(); - cpStringProperty.setName("Different Name"); - cpStringProperty.setPropertyDefaultValue("Different value from default"); - AtomicOperationUtils.addCustomPropertyToResource(cpStringProperty, cp, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(cp, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - cp = AtomicOperationUtils.getResourceObject(cp, UserRoleEnum.DESIGNER); - // create VF + add RI - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(cp, expectedPropertyList); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - // service = AtomicOperationUtils.getServiceObject(service, - // UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - String propNameToUpdate = "cidr"; - String propTypeToUpdate = "string"; - - // update CP property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getCompPropInstListByInstIdAndPropName(service, componentInstDetails, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedStringValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - List<String> path = expectedUpdatePropDetails.getPath(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, path); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - } - - /** - * update property p5 Service-->VF1(inst)-->VF-->(VFC(inst)-->VFC-->VFC-->VFC) (p4) (p3) (p2) (p1) CP(inst on VF) (p5) CP(inst) (p5') - */ - @Test - public void serviceWithNestedResourceProperty3LevelsAndCpOnVfUpdateCpInstanceOfVf() throws Exception { - basicVFC = createResourceWithProperty(ElementFactory.getDefaultStringProperty(), LifeCycleStatesEnum.CERTIFY); - vfc1FromBasicVFC = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultIntegerProperty(), LifeCycleStatesEnum.CERTIFY, basicVFC); - vfc2FromVfc1 = createResourceWithPropertyDerivedFromOtherResource(ElementFactory.getDefaultBooleanProperty(), LifeCycleStatesEnum.CERTIFY, vfc1FromBasicVFC); - vfc2FromVfc1 = AtomicOperationUtils.getResourceObject(vfc2FromVfc1, UserRoleEnum.DESIGNER); - // expectedPropertyList = - // PropertyRestUtils.addResourcePropertiesToList(vfc2FromVfc1, - // expectedPropertyList); - - // four resource - Resource cp = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.NETWORK, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - PropertyReqDetails cpStringProperty = ElementFactory.getDefaultStringProperty(); - cpStringProperty.setName("Different Name"); - cpStringProperty.setPropertyDefaultValue("Different value from default"); - AtomicOperationUtils.addCustomPropertyToResource(cpStringProperty, cp, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(cp, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - // create VF + add RI - cp = AtomicOperationUtils.getResourceObject(cp, UserRoleEnum.DESIGNER); - vfResource = AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true).left().value(); - ComponentInstance componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfc2FromVfc1, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, vfResource, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(vfResource, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - vfResource = AtomicOperationUtils.getResourceObject(vfResource, UserRoleEnum.DESIGNER); - - // Service - expectedPropertyList = new ArrayList<ComponentInstanceProperty>(); - actualPropertyList = new ArrayList<ComponentInstanceProperty>(); - expectedPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(vfResource, expectedPropertyList, null); - expectedPropertyList = PropertyRestUtils.addResourcePropertiesToList(cp, expectedPropertyList); - - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vfResource, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - componentInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(cp, service, UserRoleEnum.DESIGNER, true).left().value(); - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - PropertyRestUtils.updatePropertyListWithPathOnComponentInstance(componentInstDetails, service, expectedPropertyList); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - PropertyRestUtils.comparePropertyLists(expectedPropertyList, actualPropertyList, false); - - String propNameToUpdate = "cidr"; - String propTypeToUpdate = "string"; - - // update CP property - ComponentInstanceProperty expectedUpdatePropDetails = PropertyRestUtils.getCompPropInstListByInstIdAndPropName(service, componentInstDetails, propNameToUpdate, propTypeToUpdate); - expectedUpdatePropDetails.setValue(updatedStringValue); - String propUniqeId = expectedUpdatePropDetails.getUniqueId(); - List<String> path = expectedUpdatePropDetails.getPath(); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, componentInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), expectedUpdatePropDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + BaseRestUtils.STATUS_CODE_SUCCESS, updatePropertyValueOnResourceInstance.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - actualPropertyList = new ArrayList<>(); - actualPropertyList = PropertyRestUtils.addComponentInstPropertiesToList(service, actualPropertyList, null); - - ComponentInstanceProperty actualUpdatedPropDetails = PropertyRestUtils.getPropFromListByPropIdAndPath(actualPropertyList, propUniqeId, path); - assertTrue("property was not updated propely", PropertyRestUtils.comparePropertyObjects(expectedUpdatePropDetails, actualUpdatedPropDetails, true)); - } - - @Test // US833308 - public void serviceWithVLINetworkRoleProperty() throws Exception { - - String propName = PropertyNames.NETWORK_ROLE.getPropertyName(); - String propType = "string"; - String propValue = "myValue"; - - // create service - Service service = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - Resource vl = AtomicOperationUtils.getResourceObjectByNameAndVersion(UserRoleEnum.DESIGNER, "ExtVL", "1.0"); - // add ExtVL instance - ComponentInstance vlInstDetails = AtomicOperationUtils.addComponentInstanceToComponentContainer(vl, service, UserRoleEnum.DESIGNER, true).left().value(); - // fetch updated service - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - - // update ExtVL network_role property value - ComponentInstanceProperty propDetails = PropertyRestUtils.getCompPropInstListByInstIdAndPropName(service, vlInstDetails, propName, propType); - propDetails.setValue(propValue); - RestResponse updatePropertyValueOnResourceInstance = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, vlInstDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), propDetails); - assertTrue("expected updatePropertyValueOnResourceInstance response code: " + HttpStatus.SC_OK, updatePropertyValueOnResourceInstance.getErrorCode() == HttpStatus.SC_OK); - - service = AtomicOperationUtils.getServiceObject(service, UserRoleEnum.DESIGNER); - // expected property value after update has service systemName prefixed to user defined value. - ComponentInstanceProperty updatedPropDetails = PropertyRestUtils.getCompPropInstListByInstIdAndPropName(service, vlInstDetails, propName, propType); - String generatedValue = service.getSystemName() + "." + propValue; - assertTrue("property value was updated properly", updatedPropDetails.getValue().equals(generatedValue)); - - // update service name - ServiceReqDetails updatedServiceDetails = new ServiceReqDetails(service); - String newServiceName = "ciServiceWithVLIPropertyValueTest"; - updatedServiceDetails.setName(newServiceName); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - service = ResponseParser.convertServiceResponseToJavaObject(updateServiceResponse.getResponse()); - // expected property value after update has service (updated) systemName prefixed to user defined value. - generatedValue = newServiceName + "." + propValue; - updatedPropDetails = PropertyRestUtils.getCompPropInstListByInstIdAndPropName(service, vlInstDetails, propName, propType); - assertTrue("property value was updated properly", updatedPropDetails.getValue().equalsIgnoreCase(generatedValue)); - } - - - // -------------------Methods-------------------------- - public static PropertyDataDefinition convertToPropertyDataDefinitionObject(PropertyReqDetails prop) { - PropertyDataDefinition propDataDef = new PropertyDataDefinition(); - propDataDef.setDefaultValue(prop.getPropertyDefaultValue()); - propDataDef.setType(prop.getPropertyType()); - propDataDef.setPassword(prop.getPropertyPassword()); - propDataDef.setDescription(prop.getPropertyDescription()); - return propDataDef; - } - - protected Resource createResourceWithPropertyDerivedFromOtherResource(PropertyReqDetails propertyReqDetails, LifeCycleStatesEnum state, Resource derivedFromResource) throws Exception { - Resource resource = AtomicOperationUtils.createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, derivedFromResource, ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true).left().value(); - if (propertyReqDetails != null) { - AtomicOperationUtils.addCustomPropertyToResource(propertyReqDetails, resource, UserRoleEnum.DESIGNER, true); - } - AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, state, true); - return AtomicOperationUtils.getResourceObject(resource, UserRoleEnum.DESIGNER); - // return resource; - } - - protected Resource createResourceWithProperty(PropertyReqDetails propertyReqDetails, LifeCycleStatesEnum state) throws Exception { - Resource resource = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left().value(); - if (propertyReqDetails != null) { - AtomicOperationUtils.addCustomPropertyToResource(propertyReqDetails, resource, UserRoleEnum.DESIGNER, true); - } - AtomicOperationUtils.changeComponentState(resource, UserRoleEnum.DESIGNER, state, true); - return AtomicOperationUtils.getResourceObject(resource, UserRoleEnum.DESIGNER); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentProperty.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentProperty.java deleted file mode 100644 index 7ecdcf457f..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/ComponentProperty.java +++ /dev/null @@ -1,1796 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.property; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.PropertyDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.PropertyReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.PropertyTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - -public class ComponentProperty extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public ComponentProperty() { - super(name, ComponentProperty.class.getName()); - } - - @DataProvider - private static final Object[][] propertiesListDefaultValueSuccessFlow() throws IOException, Exception { - return new Object[][] { - // integer - { "integer", "[1,2]", "[1,2]" }, - { "tosca.datatypes.Credential", - "[{\"protocol\":\"protocol1\",\"token\":\"token1\"},{\"protocol\":\"protocol2\",\"token\":\"token2\"}]", - "[{\"protocol\":\"protocol1\",\"token\":\"token1\"},{\"protocol\":\"protocol2\",\"token\":\"token2\"}]" }, - { "tosca.datatypes.Credential", - "[{\"protocol\":\"protocol1\",\"token\":\"token1\"},{\"protocol\":\"protocol<br>2\",\"token\":\"token2 2\"}]", - "[{\"protocol\":\"protocol1\",\"token\":\"token1\"},{\"protocol\":\"protocol2\",\"token\":\"token2 2\"}]" }, - { "tosca.datatypes.Credential", null, null }, { "tosca.datatypes.Credential", "[]", "[]" }, - { "integer", "[1,2,1,2]", "[1,2,1,2]" }, { "integer", "[1,,2]", "[1,2]" }, - { "integer", "[1,null,2]", "[1,2]" }, { "integer", "[1,2,null]", "[1,2]" }, - { "integer", "[null,1,2]", "[1,2]" }, { "integer", "[1,,2]", "[1,2]" }, - { "integer", "[,1,2]", "[1,2]" }, - // {"integer", - // "[1000000000000000000000000000000000000000000000000000,2]" , - // "[1000000000000000000000000000000000000000000000000000,2]"}, - { "integer", "[100000000,2]", "[100000000,2]" }, // Andrey, in - // success - // flow - // integer - // max value - // is - // 2147483647 - { "integer", null, null }, // no default value - { "integer", - "[1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2]", - "[1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2]" }, - // boolean - { "boolean", "[true,false]", "[true,false]" }, - { "boolean", "[true,false,false]", "[true,false,false]" }, - { "boolean", "[null,true,false]", "[true,false]" }, { "boolean", "[true,false,null]", "[true,false]" }, - { "boolean", "[true,,false]", "[true,false]" }, { "boolean", "[true,false,]", "[true,false]" }, - { "boolean", "[,true,false]", "[true,false]" }, { "boolean", null, null }, - // DE199713 - Default value for property type Boolean should - // support also the following values: "true", "t" , "on" , "1" , - // "false", "f" , "off" , "0" - { "boolean", "[on,off]", "[true,false]" }, { "boolean", "[ON,OFF]", "[true,false]" }, - { "boolean", "[On,Off]", "[true,false]" }, { "boolean", "[yes,no]", "[true,false]" }, - { "boolean", "[YES,NO]", "[true,false]" }, { "boolean", "[Yes,No]", "[true,false]" }, - { "boolean", "[y,n]", "[true,false]" }, { "boolean", "[Y,N]", "[true,false]" }, - // float - { "float", "[10.0,0.0]", "[10.0,0.0]" }, { "float", "[10,0]", "[10,0]" }, // contain - // integer - { "float", "[-10,-5.30]", "[-10,-5.30]" }, // Negative numbers - { "float", "[10,null,0]", "[10,0]" }, { "float", "[null,10,0]", "[10,0]" }, - { "float", "[10,0,null]", "[10,0]" }, - { "float", "[10,0.1111111111111111111111111111111111111111]", - "[10,0.1111111111111111111111111111111111111111]" }, - { "float", "[10, ,7.3 ]", "[10,7.3]" }, { "float", "[10 , 7.3 , ]", "[10,7.3]" }, - { "float", "[, , 10 , 7.3 , ]", "[10,7.3]" }, { "float", "[4.7f, -5.5f ]", "[4.7,-5.5]" }, - { "float", "[4.7f, 6.3 ,6.3, 4.7f]", "[4.7,6.3,6.3,4.7]" }, // duplicate - // value - { "float", null, null }, { "string", "[aaaa , AAAA ]", "[\"aaaa\",\"AAAA\"]" }, - - { "string", - "[1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2]", - "[\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\",\"1\",\"2\"]" }, - { "string", "[aaaa , AAAA, 1, off , true, false ]", - "[\"aaaa\",\"AAAA\",\"1\",\"off\",\"true\",\"false\"]" }, - { "string", "[aaaa , AAAA, aaaa, Aaaa , aaaa ]", "[\"aaaa\",\"AAAA\",\"aaaa\",\"Aaaa\",\"aaaa\"]" }, - { "string", "[aaaa , AAAA, , ]", "[\"aaaa\",\"AAAA\"]" }, - { "string", "[ , aaaa , AAAA ]", "[\"aaaa\",\"AAAA\"]" }, - { "string", "[ aaaa , , AAAA ]", "[\"aaaa\",\"AAAA\"]" }, - { "string", "[ aaaa , AAAA, null ]", "[\"aaaa\",\"AAAA\"]" }, - { "string", "[ null, aaaa , AAAA ]", "[\"aaaa\",\"AAAA\"]" }, - { "string", "[ aaaa , null , AAAA ]", "[\"aaaa\",\"AAAA\"]" }, { "string", null, null }, // without - // default - // values - // - - // Property - // will - // be - // without - // default - // parameter - { "string", "[ <b>AAA</b> ]", "[\"AAA\"]" }, // BUG DE199715 - - // Error 400 - // response - // received - // while adding - // property with - // default value - // contain HTML - // tags. - // Need to check - // whether / is - // legal in yaml - - }; - } - - @DataProvider - private static final Object[][] invalidListProperties() throws IOException, Exception { - return new Object[][] { - - { "integer", "[1,aaa]" }, - { "tosca.datatypes.Credential", - "[{\"protocol\":\"protocol1\",\"token\":\"token1\"},{\"protocol\":\"protocol2\",\"token1\":\"token2\"}]" }, - { "integer", "[1,false]" }, { "integer", "[1,3.5]" }, { "integer", "[1,3#]" }, - { "boolean", "[true,3.5]" }, { "boolean", "[true,1000]" }, { "boolean", "[false,trueee]" }, - { "boolean", "[true,false!]" }, { "float", "[5.0000001,true]" }, { "float", "[0.0001,koko]" }, - { "float", "[0.0001,6.3@]" }, { "float", "[0.0001f,6.3x]" }, }; - } - - @DataProvider - private static final Object[][] updatePropertiesListDefaultValueSuccessFlow() throws IOException, Exception { - return new Object[][] { - // integer - // Setting --- update properties - // ----------------------------------------------------------------------- - { "integer", "[1,2]", "[1,2]", "integer", "[200,100]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[200,100,null]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[null, 200,100]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[200,null,100]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[200,100, ]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[ , 200,100 ]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[200 , ,100 ]", "[200,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", null, null }, - { "integer", "[1,2]", "[1,2]", "integer", "[200 , 100 , 200, 100]", "[200,100,200,100]" }, - // - // ////DE199829 update resource property schema_type is not - // updated - { "integer", "[1,2]", "[1,2]", "string", "[aaaa , bbbb ]", "[\"aaaa\",\"bbbb\"]" }, - { "integer", "[1,2]", "[1,2]", "boolean", "[true , false ]", "[true,false]" }, - { "integer", "[1,2]", "[1,2]", "float", "[3.5,4.8f ]", "[3.5,4.8]" }, - // {"string", "[aaa,bbb]" , "[\"aaa\",\"bbb\"]","integer","[100, - // 200]" , "[\"100\",\"200\"]"}, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "integer", "[100, 200]", "[100,200]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "float", "[0.1f, 3.01]", "[0.1,3.01]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "boolean", "[true, false]", "[true,false]" }, - { "float", "[1.2,2.3]", "[1.2,2.3]", "boolean", "[true, false]", "[true,false]" }, - { "float", "[1.2,2.3]", "[1.2,2.3]", "integer", "[100, 200]", "[100,200]" }, - { "float", "[1.2,2.3]", "[1.2,2.3]", "string", "[koko, moko]", "[\"koko\",\"moko\"]" }, - { "boolean", "[true,false]", "[true,false]", "string", "[koko, moko]", "[\"koko\",\"moko\"]" }, - // {"boolean", "[true,false]" , - // "[\"true\",\"false\"]","integer","[100, 300000000000000]" , - // "[\"100\",\"300000000000000\"]"},// Andrey, value not valid - // for integer success flow - { "boolean", "[true,false]", "[true,false]", "integer", "[100,2147483647]", "[100,2147483647]" }, // Andrey, - // in - // success - // flow - // integer - // max - // value - // is - // 2147483647 - { "boolean", "[true,false]", "[true,false]", "float", "[3.000000000000002, 5.67f]", - "[3.000000000000002,5.67]" }, - // ////DE199829 - // - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx, yyy]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx , yyy ,null]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[null, xxx, yyy]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx ,null,yyy]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx ,yyy, ]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[ , xxx,yyy ]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx , ,yyy ]", "[\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[ xxx , yyy , xxx , yyy]", - "[\"xxx\",\"yyy\",\"xxx\",\"yyy\"]" }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", null, null }, - { "string", "[aaa,bbb]", "[\"aaa\",\"bbb\"]", "string", "[xxx_-x, y__y--y]", - "[\"xxx_-x\",\"y__y--y\"]" }, - // DE199715 - // {"string", "[aaa,bbb]" , "[\"aaa\",\"bbb\"]", "string" , - // "[\"<b>xxx</b>\", \"<b>yyy</b>\"]" , "[\"xxx\",\"yyy\"]"}, - // - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1 , -0.1]", "[2.1,-0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1, 0.1 ,null]", "[2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[null , 2.1, 0.1]", "[2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1,null,0.1]", "[2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1,0.1, ]", "[2.1,0.1]" }, - // {"float", "[1.00,0.02]" , "[1.00,0.02]","float","[ , - // 2.00000000000001,0.00000000000000100 ]" , - // "[2.00000000000001,0.00000000000000100]"}, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1 , ,0.1 ]", "[2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", null, null }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1f , ,0.1f ]", "[2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[2.1 , 0.1 , 2.1, 0.1]", "[2.1,0.1,2.1,0.1]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[200 , 100.11]", "[200,100.11]" }, - { "float", "[1.00,0.02]", "[1.00,0.02]", "float", "[-2.35 , 100.11]", "[-2.35,100.11]" }, - // - { "boolean", "[true,false]", "[true,false]", "boolean", "[false , false]", "[false,false]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[false, true ,null]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[null , false, true]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[false,null,true]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[false ,true , ]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[ , false, true ]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", "[false , ,true ]", "[false,true]" }, - { "boolean", "[true,false]", "[true,false]", "boolean", null, null }, { "boolean", "[true,false]", - "[true,false]", "boolean", "[false , true , false, true]", "[false,true,false,true]" }, }; - } - - @DataProvider - private static final Object[][] updatePropertiesListDefaultValueFailureFlow() throws IOException, Exception { - return new Object[][] { - // integer - // Setting --- update properties - // ----------------------------------------------------------------------- - { "integer", "[1,2]", "[1,2]", "integer", "[aaa,bbb]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[true,false]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[1.0,100]" }, - { "integer", "[1,2]", "[1,2]", "integer", "[@12,100]" }, - { "float", "[0.11,0.22]", "[0.11,0.22]", "float", "[aaa, bbb]" }, - { "float", "[0.11,0.22]", "[0.11,0.22]", "float", "[0.88, false]" }, - { "float", "[0.11,0.22]", "[0.11,0.22]", "float", "[0.88g, 0.3]" }, - { "float", "[0.11,0.22]", "[0.11,0.22]", "float", "[@0.88, 0.3]" }, - { "boolean", "[true, false]", "[true,false]", "boolean", "[true, 100]" }, - { "boolean", "[true, false]", "[true,false]", "boolean", "[false, 0.01]" }, - { "boolean", "[true, false]", "[true,false]", "boolean", "[koko, true]" }, - { "boolean", "[true, false]", "[true,false]", "boolean", "[@false, true]" }, - - }; - } - - // Map properties - @DataProvider - private static final Object[][] updatePropertiesMapDefaultValueSuccessFlow() throws IOException, Exception { - return new Object[][] { - // entrySchemaType , propertyDefaultValues , - // expectedDefaultValue , newEntrySchemaType , - // newPropertyDefaultValue , newExpectedDefaultValue - // integer - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":200,\"key2\":null , \"key3\":300}", "{\"key1\":200,\"key2\":null,\"key3\":300}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":null,\"key2\":200 , \"key3\":100}", "{\"key1\":null,\"key2\":200,\"key3\":100}" }, - // string - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "string", - "{\"key1\":\"aaaa\" , \"key2\":\"aaaa\"}", "{\"key1\":\"aaaa\",\"key2\":\"aaaa\"}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "boolean", - "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "float", - "{\"key1\":3.5 , \"key2\":4.8f}", "{\"key1\":3.5,\"key2\":4.8}" }, - // string - { "string", "{\"key1\":aaa , \"key2\":bbb}", "{\"key1\":\"aaa\",\"key2\":\"bbb\"}", "string", - "{\"key1\":xxx , \"key2\":yyy}", "{\"key1\":\"xxx\",\"key2\":\"yyy\"}" }, - // float - { "float", "{\"key1\":1.00 , \"key2\":0.02}", "{\"key1\":1.00,\"key2\":0.02}", "float", - "{\"key1\":2.1, \"key2\":-0.1}", "{\"key1\":2.1,\"key2\":-0.1}" }, - { "float", "{\"key1\":1.00 , \"key2\":0.02}", "{\"key1\":1.00,\"key2\":0.02}", "float", - "{\"key1\":2.1 , \"key2\":0.1 , \"key3\":null}", "{\"key1\":2.1,\"key2\":0.1,\"key3\":null}" }, - // boolean - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":false , \"key2\":false}", "{\"key1\":false,\"key2\":false}" }, - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":false , \"key2\":true , \"key3\":null}", - "{\"key1\":false,\"key2\":true,\"key3\":null}" }, - // null - { "boolean", "{\"key1\":null , \"key2\":false}", "{\"key1\":null,\"key2\":false}", "boolean", - "{\"key1\":false , \"key2\":true , \"key3\":null}", - "{\"key1\":false,\"key2\":true,\"key3\":null}" }, - // tosca.datatypes.Credential - { "tosca.datatypes.Credential", - "{\"key1\":{\"protocol\":\"protocol<br>1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "{\"key1\":{\"protocol\":\"protocol1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "tosca.datatypes.Credential", - "{\"key1\":{\"protocol\":\"protocol<br>1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "{\"key1\":{\"protocol\":\"protocol1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}" }, - - }; - } - - @DataProvider - private static final Object[][] propertiesMapDefaultValueSuccessFlow() throws IOException, Exception { - return new Object[][] { - - // entrySchemaType , propertyDefaultValues , - // expectedDefaultValue - // - // {"string", - // "{\"vf_module_id\":{\"get_input\":\"vf_module_id\"}, - // \"vnf_idw\": 2}", - // "{\"vf_module_id\":{\"get_input\":\"vf_module_id\"}, - // \"vnf_idw\": 2}"}, - - // tosca.datatypes.Credential - { "tosca.datatypes.Credential", - "{\"key1\":{\"protocol\":\"protocol<br>1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "{\"key1\":{\"protocol\":\"protocol1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}" }, - // integer - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}" }, - { "integer", "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":2}", - "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":2}" }, - { "integer", "{\"key1\":1,\"key2\":null,\"key3\":1,\"key4\":2}", - "{\"key1\":1,\"key2\":null,\"key3\":1,\"key4\":2}" }, - { "integer", "{\"key1\":null,\"key2\":1,\"key3\":1,\"key4\":2}", - "{\"key1\":null,\"key2\":1,\"key3\":1,\"key4\":2}" }, - { "integer", "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":null}", - "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":null}" }, - { "integer", "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":NULL}", - "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":null}" }, - { "integer", "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":Null}", - "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":null}" }, - { "integer", "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":nuLL}", - "{\"key1\":1,\"key2\":2,\"key3\":1,\"key4\":null}" }, - { "integer", null, null }, // no default value - // //BUG - //// {"integer", - // "{\"key1\":1000000000000000000000000000000000000000000000000000,\"key2\":2}" - // ,"{\"key1\":1000000000000000000000000000000000000000000000000000,\"key2\":2}"}, - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":true , \"key2\":false, \"key3\":false }", - "{\"key1\":true,\"key2\":false,\"key3\":false}" }, - { "boolean", "{\"key1\":null , \"key2\":true, \"key3\":false }", - "{\"key1\":null,\"key2\":true,\"key3\":false}" }, - { "boolean", "{\"key1\":true , \"key2\":Null, \"key3\":false }", - "{\"key1\":true,\"key2\":null,\"key3\":false}" }, - { "boolean", "{\"key1\":true , \"key2\":false, \"key3\":nULL }", - "{\"key1\":true,\"key2\":false,\"key3\":null}" }, - { "boolean", null, null }, - { "boolean", "{\"key1\":on , \"key2\":off}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":ON , \"key2\":OFF}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":On , \"key2\":Off}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":yes , \"key2\":no}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":YES , \"key2\":NO}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":Yes , \"key2\":No}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":y , \"key2\":n}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{\"key1\":Y , \"key2\":N}", "{\"key1\":true,\"key2\":false}" }, - { "boolean", "{null:false}", "{\"null\":false}" }, - // float - { "float", "{\"key1\":10.0 , \"key2\":0.0}", "{\"key1\":10.0,\"key2\":0.0}" }, - { "float", "{\"key1\":10 , \"key2\":0}", "{\"key1\":10,\"key2\":0}" }, // contain - // integer - { "float", "{\"key1\":null , \"key2\":Null}", "{\"key1\":null,\"key2\":null}" }, // contain - // null - { "float", "{\"key1\":3.5 , \"key2\":nULL}", "{\"key1\":3.5,\"key2\":null}" }, - // BUG - { "float", "{\"key1\":3.5 , \"key2\":0.1111111111111111111111111111111111111111}", - "{\"key1\":3.5,\"key2\":0.1111111111111111111111111111111111111111}" }, - { "float", "{\"key1\":4.7f , \"key2\":-5.5f}", "{\"key1\":4.7,\"key2\":-5.5}" }, - { "float", "{\"key1\":4.7f , \"key2\":-5.5f, \"key3\":-5.5f}", - "{\"key1\":4.7,\"key2\":-5.5,\"key3\":-5.5}" }, - { "boolean", null, null }, - { "string", "{\"key1\":aaaa , \"key2\":AAAA}", "{\"key1\":\"aaaa\",\"key2\":\"AAAA\"}" }, - { "string", "{\"key1\":off , \"key2\":true , \"key3\":1}", - "{\"key1\":\"off\",\"key2\":\"true\",\"key3\":\"1\"}" }, - { "string", "{\"key1\":aaaa , \"key2\":Aaaa , \"key3\":aaaa}", - "{\"key1\":\"aaaa\",\"key2\":\"Aaaa\",\"key3\":\"aaaa\"}" }, - { "string", "{\"key1\":aaaa , \"key2\":bbbb , \"key3\":null}", - "{\"key1\":\"aaaa\",\"key2\":\"bbbb\",\"key3\":null}" }, - { "string", "{\"key1\":NULL , \"key2\":bbbb , \"key3\":aaaa}", - "{\"key1\":null,\"key2\":\"bbbb\",\"key3\":\"aaaa\"}" }, - { "string", "{\"key1\":aaaa , \"key2\":Null , \"key3\":bbbb}", - "{\"key1\":\"aaaa\",\"key2\":null,\"key3\":\"bbbb\"}" }, - { "string", null, null }, // without default values - Property - // will be without default parameter - { "string", "{\"key1\":\"<b>AAAA</b>\" }", "{\"key1\":\"AAAA\"}" }, - - }; - } - - @DataProvider - private static final Object[][] updatePropertiesMapDefaultValueFailureFlow() throws IOException, Exception { - return new Object[][] { - - // integer - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":aaa , \"key2\":bbb}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":true , \"key2\":false}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":1.0 , \"key2\":100}" }, - { "integer", "{\"key1\":1 , \"key2\":2}", "{\"key1\":1,\"key2\":2}", "integer", - "{\"key1\":12@ , \"key2\":100}" }, - // float - { "float", "{\"key1\":0.11 , \"key2\":0.22}", "{\"key1\":0.11,\"key2\":0.22}", "float", - "{\"key1\":aaa , \"key2\":bbb}" }, - { "float", "{\"key1\":0.11 , \"key2\":0.22}", "{\"key1\":0.11,\"key2\":0.22}", "float", - "{\"key1\":0.88 , \"key2\":false}" }, - { "float", "{\"key1\":0.11 , \"key2\":0.22}", "{\"key1\":0.11,\"key2\":0.22}", "float", - "{\"key1\":0.88g , \"key2\":0.3}" }, - { "float", "{\"key1\":0.11 , \"key2\":0.22}", "{\"key1\":0.11,\"key2\":0.22}", "float", - "{\"key1\":@0.88g , \"key2\":0.3}" }, - // boolean - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":true , \"key2\":100}" }, - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":false , \"key2\":0.01}" }, - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":koko , \"key2\":true}" }, - { "boolean", "{\"key1\":true , \"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":@false , \"key2\":true}" }, - { "boolean", "{\"key1\":true,\"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{:false , \"key2\":true}" }, - { "boolean", "{\"key1\":true,\"key2\":false}", "{\"key1\":true,\"key2\":false}", "boolean", - "{\"key1\":true , , \"key2\":false}" }, - // tosca.datatypes.Credential - { "tosca.datatypes.Credential", - "{\"key1\":{\"protocol\":\"protocol<br>1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "{\"key1\":{\"protocol\":\"protocol1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token\":\"token2\"}}", - "tosca.datatypes.Credential", - "{\"key1\":{\"protocol\":\"protocol<br>1\",\"token\":\"token1\"},\"key2\":{\"protocol\":\"protocol2\",\"token2\":\"token2\"}}" }, - - }; - } - - // US594938 - UPDATE PROPERTY - // DE199718 - @Test(dataProvider = "updatePropertiesListDefaultValueFailureFlow") - public void updateDefaultValueOfResourcePropertyListFailureFlow(String entrySchemaType, String propertyDefaltValues, - String expecteddefaultValues, String newEntrySchemaType, String newPropertyDefaltValues) throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.setPropertyDefaultValue(propertyDefaltValues); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // verify properties return from response - assertEquals("list", resourcePropertiesFromResponse.getType()); - assertEquals(expecteddefaultValues, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - // Update resource property type = "list" - propertyDetails.setPropertyDefaultValue(newPropertyDefaltValues); - propertyDetails.getSchema().getProperty().setType(newEntrySchemaType); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(propertyDetails.getName()); - variables.add(propertyDetails.getPropertyType()); - variables.add(propertyDetails.getSchema().getProperty().getType()); - variables.add(newPropertyDefaltValues); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - updatePropertyResponse.getResponse()); - } - - @Test - public void updatePropertyOfDerivedResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String derivedResourcePropertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - // second resource derived from basicVFC - Resource vfc1FromBasicVFC = AtomicOperationUtils - .createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, - ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true) - .left().value(); - // add property Type list to second resource - PropertyReqDetails defaultListProperty = ElementFactory.getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(defaultListProperty, vfc1FromBasicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - // Update property (list) of derived resource - RestResponse updatePropertyResponse = AtomicOperationUtils.updatePropertyOfResource(propertyDetails, basicVFC, - derivedResourcePropertyUniqueId, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - verifyResourcePropertyList(basicVFC, propertyDetails, "[\"a\",\"b\"]"); - } - - @Test - public void updatePropertyOfNonDerivedResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - // second resource derived from basicVFC - Resource vfc1FromBasicVFC = AtomicOperationUtils - .createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, - ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true) - .left().value(); - // add property Type list to second resource - PropertyReqDetails defaultListProperty = ElementFactory.getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(defaultListProperty, vfc1FromBasicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // Update property (list) of derived resource - defaultListProperty.setPropertyDefaultValue("[1,2,3,4]"); - String expectedDefaultValue = "[1,2,3,4]"; - ComponentInstanceProperty resourcePropertyAfterUpdate = AtomicOperationUtils - .updatePropertyOfResource(defaultListProperty, vfc1FromBasicVFC, propertyUniqueId, - UserRoleEnum.DESIGNER, true) - .left().value(); - assertEquals(resourcePropertyAfterUpdate.getType(), "list"); - assertEquals(resourcePropertyAfterUpdate.getDefaultValue(), expectedDefaultValue); - assertEquals(resourcePropertyAfterUpdate.getSchema().getProperty().getType(), - defaultListProperty.getSchema().getProperty().getType()); // string/integer/boolean/float - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(vfc1FromBasicVFC.getUniqueId()); - String expectedDefaultValueFromDerivedResource = "[\"a\",\"b\"]"; - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - resource.getProperties().get(0).getDefaultValue().equals(expectedDefaultValue); - resource.getProperties().get(1).getDefaultValue().equals(expectedDefaultValueFromDerivedResource); - } - - @Test - public void updateListPropertyToNonCheckedOutResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - // Update resource property type = "list" - propertyDetails.setPropertyDefaultValue("[3,4]"); - propertyDetails.getSchema().getProperty().setType("integer"); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - @Test - public void updateListPropertyResourceByNonResouceOwner() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // AtomicOperationUtils.changeComponentState(basicVFC, - // UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - // Update resource property type = "list" - propertyDetails.setPropertyDefaultValue("[3,4]"); - propertyDetails.getSchema().getProperty().setType("integer"); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER2, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - @Test - public void updateListPropertyResourceByTester() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // AtomicOperationUtils.changeComponentState(basicVFC, - // UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - // Update resource property type = "list" - propertyDetails.setPropertyDefaultValue("[3,4]"); - propertyDetails.getSchema().getProperty().setType("integer"); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.TESTER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - // DE199964 - @Test(enabled = false) - public void updateListPropertyToNonExistingResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - String resourceUniqueId = basicVFC.getUniqueId(); - basicVFC.setUniqueId("1111111"); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_NOT_FOUND)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(basicVFC.getUniqueId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), variables, - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - basicVFC.setUniqueId(resourceUniqueId); - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - // DE199725 - @Test - public void updateResourcePropertyListNonSupportedPropertyType() throws Exception { // Not - // "list" - // type - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // update resource property - String propertyType = "listttttttt"; - propertyDetails.setPropertyType(propertyType); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - ArrayList<String> variables = new ArrayList<>(); - variables.add(propertyDetails.getPropertyType()); // property data type - // (koko instead - // list) - variables.add(propertyDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_TYPE.name(), variables, - updatePropertyResponse.getResponse()); - // Verify resource's priority list did not changed - propertyDetails.setPropertyType("list"); - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - @Test(enabled = false) // DE199732 - public void updateResourcePropertyListNonSupportedEntrySchemaType() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String PropertyDefaultValue = "[2,3]"; - propertyDetails.setPropertyDefaultValue(PropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType("integer"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // update resource property - String EntrySchemaType = "integerrrrrr"; - propertyDetails.getSchema().getProperty().setType(EntrySchemaType); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(EntrySchemaType); - variables.add(propertyDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_INNER_TYPE.name(), variables, - updatePropertyResponse.getResponse()); - propertyDetails.getSchema().getProperty().setType("integer"); - verifyResourcePropertyList(basicVFC, propertyDetails, "[2,3]"); - } - - @Test(dataProvider = "updatePropertiesListDefaultValueSuccessFlow") - public void updateResourcePropertyListSuccessFlow(String entrySchemaType, String propertyDefaltValues, - String expecteddefaultValues, String newEntrySchemaType, String newPropertyDefaltValues, - String newExpecteddefaultValues) throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.setPropertyDefaultValue(propertyDefaltValues); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // verify properties return from response - assertEquals("list", resourcePropertiesFromResponse.getType()); - assertEquals(expecteddefaultValues, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - // Update resource property type = "list" - propertyDetails.setPropertyDefaultValue(newPropertyDefaltValues); - propertyDetails.getSchema().getProperty().setType(newEntrySchemaType); - ComponentInstanceProperty resourcePropertyAfterUpdate = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, true) - .left().value(); - assertEquals("list", resourcePropertyAfterUpdate.getType()); - assertEquals(newExpecteddefaultValues, resourcePropertyAfterUpdate.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertyAfterUpdate.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, newExpecteddefaultValues); - } - - // Add property type list to resource - // DE199718 - @Test(dataProvider = "invalidListProperties") // invalid default values - public void addListPropertyToResourceFailureFlow(String entrySchemaType, String propertyDefaltValues) - throws Exception { - // String propertyType = "list"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - propertyDetails.setPropertyDefaultValue(propertyDefaltValues); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(propertyDetails.getName()); - variables.add(propertyDetails.getPropertyType()); - variables.add(propertyDetails.getSchema().getProperty().getType()); - variables.add(propertyDefaltValues); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - addPropertyToResourceResponse.getResponse()); - - } - - // DE199964 - @Test - public void addListPropertyToNonExistingResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType("integer"); - propertyDetails.setPropertyDefaultValue("[1,2]"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to non existing resource - basicVFC.setUniqueId("1111111"); - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_NOT_FOUND)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), variables, - addPropertyToResourceResponse.getResponse()); - } - - @Test - public void addListPropertyToNonCheckedOutResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType("integer"); - propertyDetails.setPropertyDefaultValue("[1,2]"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - // Add property type list to non Checked-Out resource - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - addPropertyToResourceResponse.getResponse()); - } - - @Test - public void addListPropertyToResourceByNonResourceOwner() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType("integer"); - propertyDetails.setPropertyDefaultValue("[1,2]"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to non Checked-Out resource - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER2, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - addPropertyToResourceResponse.getResponse()); - } - - @Test - public void addListPropertyToResourcePropertyAlreadyExists01() throws Exception { - String propertyType = "list"; - String propertySchemaType = "integer"; - String defaultValues = "[1,2]"; - String expecteddefaultValues = "[1,2]"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType(propertySchemaType); - propertyDetails.setPropertyDefaultValue(defaultValues); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // check-in and check-out resource - RestResponse changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKOUT); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - // verify properties return from response - assertEquals(resourcePropertiesFromResponse.getType(), propertyType); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expecteddefaultValues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), propertySchemaType); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - // Add same property again to resource - RestResponse addPropertyRestResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyRestResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_ALREADY_EXISTS)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_ALREADY_EXIST.name(), variables, - addPropertyRestResponse.getResponse()); - // verify property not deleted - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - } - - @Test - public void addListPropertyToResourcePropertyAlreadyExists02() throws Exception { - String propertyType = "list"; - String propertySchemaType = "integer"; - String defaultValues = "[1,2]"; - String expecteddefaultValues = "[1,2]"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType(propertySchemaType); - propertyDetails.setPropertyDefaultValue(defaultValues); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - // verify properties return from response - assertEquals(resourcePropertiesFromResponse.getType(), propertyType); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expecteddefaultValues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), propertySchemaType); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - // check-in and check-out resource - RestResponse changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKOUT); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - // Add same property again to resource - RestResponse addPropertyRestResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyRestResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_ALREADY_EXISTS)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_ALREADY_EXIST.name(), variables, - addPropertyRestResponse.getResponse()); - // verify property not deleted - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - } - - @Test // DE199725 - public void addListPropertyToResourceNonSupportedPropertyType() throws Exception { // Not - // "list" - // type - String propertyType = "listttttttt"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.setPropertyType(propertyType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - RestResponse addPropertyRestResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyRestResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(propertyDetails.getPropertyType()); // property data type - // (koko instead - // list) - variables.add(propertyDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_TYPE.name(), variables, - addPropertyRestResponse.getResponse()); - } - - @Test // DE199732 - public void addListPropertyToResourceNonSupportedEntrySchemaType() throws Exception { - String EntrySchemaType = "stringggg"; // instead "string" - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType(EntrySchemaType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - RestResponse addPropertyRestResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyRestResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(EntrySchemaType); - variables.add(propertyDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_PROPERTY_INNER_TYPE.name(), variables, - addPropertyRestResponse.getResponse()); - } - - @Test - public void addHundredPropertyListToResourceSuccessFlow() throws Exception { - String propertyType = "list"; - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - String propertyName = propertyDetails.getName(); - int numberOfPropertiesToAddToResource = 100; - ComponentInstanceProperty resourcePropertiesFromResponse; - for (int x = 0; x < numberOfPropertiesToAddToResource; x++) { - propertyDetails.setName(propertyName + x); - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - // verify properties return from response - assertEquals(resourcePropertiesFromResponse.getName(), propertyName + x); - assertEquals(resourcePropertiesFromResponse.getType(), propertyType); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[\"a\",\"b\"]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetails.getSchema().getProperty().getType()); // string/integer/boolean/float - } - // get resource and verify that 100 properties exist - Resource resourceObject = AtomicOperationUtils.getResourceObject(basicVFC, UserRoleEnum.DESIGNER); - assertEquals(numberOfPropertiesToAddToResource, resourceObject.getProperties().size()); - - } - - @Test(dataProvider = "propertiesListDefaultValueSuccessFlow") - public void addListPropertyToResourceSuccessFlow(String entrySchemaType, String propertyDefaltValues, - String expecteddefaultValues) throws Exception { - String propertyType = "list"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - propertyDetails.setPropertyDefaultValue(propertyDefaltValues); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - // verify properties return from response - assertEquals(propertyType, resourcePropertiesFromResponse.getType()); - assertEquals(expecteddefaultValues, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(entrySchemaType, resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - - assertEquals(resourcePropertiesFromResponse.getType(), propertyType); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expecteddefaultValues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), entrySchemaType); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - } - - // Delete property type list - @Test - public void deleteOneOfTheListPropertiesFromResourceAndAddItAgain() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - PropertyReqDetails propertyDetailsInteger = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[\"a\",\"b\"]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, "[\"a\",\"b\"]"); - // Add deleted property again to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - } - - @Test - public void deletePropertyListTypeInteger() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - PropertyReqDetails propertyDetailsInteger = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[\"a\",\"b\"]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "[1,2]"); - } - - @Test - public void deletePropertyListTypeBoolean() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.BOOLEAN_LIST); - PropertyReqDetails propertyDetailsInteger = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[true,false]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one property - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "[1,2]"); - } - - @Test - public void deletePropertyListTypeFloat() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.FLOAT_LIST); - PropertyReqDetails propertyDetailsInteger = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1.0,2.0]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one property - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "[1,2]"); - } - - @Test - public void deletePropertyListAlreadyDeleted() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.FLOAT_LIST); - PropertyReqDetails propertyDetailsInteger = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1.0,2.0]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), "[1,2]"); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one property - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "[1,2]"); - // delete again the same property - deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_NOT_FOUND == deletePropertyOfResource.getErrorCode()); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_NOT_FOUND.name(), variables, - deletePropertyOfResource.getResponse()); - } - - @Test - public void deletePropertyListResourceIsNotCheckedOutState() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.FLOAT_LIST); - String expectedDefaultvalues = "[1.0,2.0]"; - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expectedDefaultvalues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - // Get resource and verify updated default value - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - // Check-in resource - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CHECKIN, true); - // Delete property - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION == deletePropertyOfResource.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - deletePropertyOfResource.getResponse()); - // Get resource and verify property is not deleted - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - } - - @Test - public void deletePropertyListResourceByNotIsNonResouceOwner() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.FLOAT_LIST); - String expectedDefaultvalues = "[1.0,2.0]"; - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expectedDefaultvalues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - // Get resource and verify updated default value - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - // Delete property by non resource owner - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER2); - assertTrue(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION == deletePropertyOfResource.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - deletePropertyOfResource.getResponse()); - // Get resource and verify property is not deleted - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - } - - @Test - public void deletePropertyListFromNonExistingResource() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.FLOAT_LIST); - String expectedDefaultvalues = "[1.0,2.0]"; - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - String actualResourceUniqueId = basicVFC.getUniqueId(); - // Add property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals(resourcePropertiesFromResponse.getDefaultValue(), expectedDefaultvalues); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - // Get resource and verify updated default value - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - // Delete property from non existing resource - basicVFC.setUniqueId("1111111"); - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(deletePropertyOfResource.getErrorCode().equals(BaseRestUtils.STATUS_CODE_NOT_FOUND)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), variables, - deletePropertyOfResource.getResponse()); - // Get resource and verify property is not deleted - basicVFC.setUniqueId(actualResourceUniqueId); - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, expectedDefaultvalues); - } - - @Test - public void deletePropertyOfDerivedResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String derivedResourcePropertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - // second resource derived from basicVFC - Resource vfc1FromBasicVFC = AtomicOperationUtils - .createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, - ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true) - .left().value(); - // Delete property (list) of derived resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource( - vfc1FromBasicVFC.getUniqueId(), derivedResourcePropertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(deletePropertyOfResource.getErrorCode().equals(BaseRestUtils.STATUS_CODE_NOT_FOUND)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_NOT_FOUND.name(), variables, - deletePropertyOfResource.getResponse()); - // Verify resource's priority list did not changed - verifyResourcePropertyList(vfc1FromBasicVFC, propertyDetails, "[\"a\",\"b\"]"); - } - - @Test - public void deletePropertyOfNonDerivedResource() throws Exception { - PropertyReqDetails propertyListString = ElementFactory.getDefaultListProperty(PropertyTypeEnum.STRING_LIST); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyListString, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.changeComponentState(basicVFC, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, true); - // second resource derived from basicVFC - Resource vfc1FromBasicVFC = AtomicOperationUtils - .createResourcesByCustomNormativeTypeAndCatregory(ResourceTypeEnum.VFC, basicVFC, - ResourceCategoryEnum.APPLICATION_L4_BORDER, UserRoleEnum.DESIGNER, true) - .left().value(); - // add property Type list to second resource - PropertyReqDetails propertyListInteger = ElementFactory.getDefaultListProperty(PropertyTypeEnum.INTEGER_LIST); - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyListInteger, vfc1FromBasicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // Delete property (list) of derived resource - RestResponse deletePropertyOfResource = AtomicOperationUtils - .deletePropertyOfResource(vfc1FromBasicVFC.getUniqueId(), propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyListString, "[\"a\",\"b\"]"); - } - - private void verifyResourcePropertyList(Resource resource, PropertyReqDetails expectedProperty, - String expecteddefaultValues) throws Exception { - // get resource and verify property from type list - Resource getResource = AtomicOperationUtils.getResourceObject(resource, UserRoleEnum.DESIGNER); - List<PropertyDefinition> actualResourceProperties = getResource.getProperties(); - boolean isPropertyAppear = false; - for (PropertyDefinition pro : actualResourceProperties) { - if (expectedProperty.getName().equals(pro.getName())) { - assertTrue("Check Property Type ", pro.getType().equals(expectedProperty.getPropertyType())); - assertEquals("Check Property default values ", expecteddefaultValues, pro.getDefaultValue()); - // assertTrue("Check Property default values ", - // pro.getDefaultValue().equals(expecteddefaultValues)); - assertTrue("Check entrySchema Property Type ", pro.getSchema().getProperty().getType() - .equals(expectedProperty.getSchema().getProperty().getType())); - isPropertyAppear = true; - } - } - assertTrue(isPropertyAppear); - } - - // US656905 - // --------------------- Map Property - // ---------------------------------------------------------------- - @Test(dataProvider = "updatePropertiesMapDefaultValueFailureFlow") - public void updateDefaultValueOfResourcePropertyMapFailureFlow(String entrySchemaType, String propertyDefaultValues, - String expectedDefaultValue, String newEntrySchemaType, String newPropertyDefaultValue) throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultMapProperty(); - propertyDetails.setPropertyDefaultValue(propertyDefaultValues); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // verify properties return from response - assertEquals("map", resourcePropertiesFromResponse.getType()); - assertEquals(expectedDefaultValue, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expectedDefaultValue); - // Update resource property type = "map" - propertyDetails.setPropertyDefaultValue(newPropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType(newEntrySchemaType); - RestResponse updatePropertyResponse = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, false) - .right().value(); - assertTrue(updatePropertyResponse.getErrorCode().equals(STATUS_CODE_INVALID_CONTENT)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(propertyDetails.getName()); - variables.add(propertyDetails.getPropertyType()); - variables.add(propertyDetails.getSchema().getProperty().getType()); - variables.add(newPropertyDefaultValue); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPLEX_DEFAULT_VALUE.name(), variables, - updatePropertyResponse.getResponse()); - } - - @Test(dataProvider = "updatePropertiesMapDefaultValueSuccessFlow") - public void updateResourcePropertyMapSuccessFlow(String entrySchemaType, String propertyDefaultValues, - String expectedDefaultValue, String newEntrySchemaType, String newPropertyDefaultValue, - String newExpectedDefaultValue) throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultMapProperty(); - propertyDetails.setPropertyDefaultValue(propertyDefaultValues); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - // verify properties return from response - assertEquals("map", resourcePropertiesFromResponse.getType()); - assertEquals(expectedDefaultValue, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expectedDefaultValue); - // Update resource property type = "map" - propertyDetails.setPropertyDefaultValue(newPropertyDefaultValue); - propertyDetails.getSchema().getProperty().setType(newEntrySchemaType); - ComponentInstanceProperty resourcePropertyAfterUpdate = AtomicOperationUtils - .updatePropertyOfResource(propertyDetails, basicVFC, propertyUniqueId, UserRoleEnum.DESIGNER, true) - .left().value(); - assertEquals("map", resourcePropertyAfterUpdate.getType()); - assertEquals(newExpectedDefaultValue, resourcePropertyAfterUpdate.getDefaultValue()); - assertEquals(propertyDetails.getSchema().getProperty().getType(), - resourcePropertyAfterUpdate.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, newExpectedDefaultValue); - } - - @Test - public void deletePropertyMapTypeString() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultMapProperty(PropertyTypeEnum.STRING_MAP); - PropertyReqDetails propertyDetailsInteger = ElementFactory.getDefaultMapProperty(PropertyTypeEnum.INTEGER_MAP); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals("{\"key1\":\"val1\",\"key2\":\"val2\"}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals("{\"key1\":123,\"key2\":-456}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "{\"key1\":123,\"key2\":-456}"); - } - - @Test - public void deletePropertyMapTypeFloat() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeFloat = ElementFactory.getDefaultMapProperty(PropertyTypeEnum.FLOAT_MAP); - PropertyReqDetails propertyDetailsInteger = ElementFactory.getDefaultMapProperty(PropertyTypeEnum.INTEGER_MAP); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeFloat, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeFloat.getPropertyType()); - assertEquals("{\"key1\":0.2123,\"key2\":43.545}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeFloat.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals("{\"key1\":123,\"key2\":-456}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "{\"key1\":123,\"key2\":-456}"); - } - - @Test - public void deletePropertyMapTypeBoolean() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeBoolean = ElementFactory - .getDefaultMapProperty(PropertyTypeEnum.BOOLEAN_MAP); - PropertyReqDetails propertyDetailsInteger = ElementFactory.getDefaultMapProperty(PropertyTypeEnum.INTEGER_MAP); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeBoolean, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeBoolean.getPropertyType()); - assertEquals("{\"key1\":true,\"key2\":false}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeBoolean.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsInteger.getPropertyType()); - assertEquals("{\"key1\":123,\"key2\":-456}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsInteger.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsInteger, "{\"key1\":123,\"key2\":-456}"); - } - - @Test - public void deletePropertyMapTypeInteger() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeInteger = ElementFactory - .getDefaultMapProperty(PropertyTypeEnum.INTEGER_MAP); - PropertyReqDetails propertyDetailsBoolean = ElementFactory.getDefaultMapProperty(PropertyTypeEnum.BOOLEAN_MAP); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeInteger, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - String propertyUniqueId = resourcePropertiesFromResponse.getUniqueId(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeInteger.getPropertyType()); - assertEquals("{\"key1\":123,\"key2\":-456}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeInteger.getSchema().getProperty().getType()); // string/integer/boolean/float - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsBoolean, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsBoolean.getPropertyType()); - assertEquals("{\"key1\":true,\"key2\":false}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsBoolean.getSchema().getProperty().getType()); - // Get resource and verify updated default value - RestResponse restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - Resource resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(2, resource.getProperties().size()); - // Delete one resource - RestResponse deletePropertyOfResource = AtomicOperationUtils.deletePropertyOfResource(basicVFC.getUniqueId(), - propertyUniqueId, UserRoleEnum.DESIGNER); - assertTrue(BaseRestUtils.STATUS_CODE_DELETE == deletePropertyOfResource.getErrorCode()); - // Get resource and verify updated default value - restResponse = ResourceRestUtils.getResource(basicVFC.getUniqueId()); - resource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - assertEquals(1, resource.getProperties().size()); - verifyResourcePropertyList(basicVFC, propertyDetailsBoolean, "{\"key1\":true,\"key2\":false}"); - } - - @Test(dataProvider = "propertiesMapDefaultValueSuccessFlow") - public void addMapPropertyToResourceSuccessFlow(String entrySchemaType, String propertyDefaltValues, - String expecteddefaultValues) throws Exception { - String propertyType = "map"; - PropertyReqDetails propertyDetails = ElementFactory.getDefaultMapProperty(); - propertyDetails.getSchema().getProperty().setType(entrySchemaType); - propertyDetails.setPropertyDefaultValue(propertyDefaltValues); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to resource - ComponentInstanceProperty resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, true).left().value(); - // verify properties return from response - assertEquals(propertyType, resourcePropertiesFromResponse.getType()); - assertEquals(expecteddefaultValues, resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(entrySchemaType, resourcePropertiesFromResponse.getSchema().getProperty().getType()); // string/integer/boolean/float - verifyResourcePropertyList(basicVFC, propertyDetails, expecteddefaultValues); - } - - @Test - public void addMapPropertyToNonExistingResource() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType("integer"); - propertyDetails.setPropertyDefaultValue("{\"key1\":1 , \"key2\":2}"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to non existing resource - basicVFC.setUniqueId("1111111"); - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_NOT_FOUND)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), variables, - addPropertyToResourceResponse.getResponse()); - } - - @Test - public void addMaptPropertyToResourceByNonResourceOwner() throws Exception { - PropertyReqDetails propertyDetails = ElementFactory.getDefaultListProperty(); - propertyDetails.getSchema().getProperty().setType("integer"); - propertyDetails.setPropertyDefaultValue("{\"key1\":1 , \"key2\":2}"); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add property type list to non Checked-Out resource - RestResponse addPropertyToResourceResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetails, basicVFC, UserRoleEnum.DESIGNER2, false).right().value(); - assertTrue(addPropertyToResourceResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION)); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - addPropertyToResourceResponse.getResponse()); - } - - @Test - public void addMapPropertyToResourcePropertyAlreadyExists() throws Exception { - ComponentInstanceProperty resourcePropertiesFromResponse; - PropertyReqDetails propertyDetailsTypeString = ElementFactory - .getDefaultListProperty(PropertyTypeEnum.STRING_MAP); - // create resource - Resource basicVFC = AtomicOperationUtils.createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_ABSTRACT, UserRoleEnum.DESIGNER, true).left() - .value(); - // Add 2 property type list to resource - resourcePropertiesFromResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, true).left() - .value(); - assertEquals(resourcePropertiesFromResponse.getType(), propertyDetailsTypeString.getPropertyType()); - assertEquals("{\"key1\":\"val1\",\"key2\":\"val2\"}", resourcePropertiesFromResponse.getDefaultValue()); - assertEquals(resourcePropertiesFromResponse.getSchema().getProperty().getType(), - propertyDetailsTypeString.getSchema().getProperty().getType()); // string/integer/boolean/float - // check-in and check-out resource - RestResponse changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKIN); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - changeComponentState = LifecycleRestUtils.changeComponentState(basicVFC, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), LifeCycleStatesEnum.CHECKOUT); - assertTrue(changeComponentState.getErrorCode().equals(BaseRestUtils.STATUS_CODE_SUCCESS)); - // Add same property again to resource - RestResponse addPropertyRestResponse = AtomicOperationUtils - .addCustomPropertyToResource(propertyDetailsTypeString, basicVFC, UserRoleEnum.DESIGNER, false).right() - .value(); - assertTrue(addPropertyRestResponse.getErrorCode().equals(BaseRestUtils.STATUS_CODE_ALREADY_EXISTS)); - ArrayList<String> variables = new ArrayList<>(); - variables.add(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_ALREADY_EXIST.name(), variables, - addPropertyRestResponse.getResponse()); - // verify property not deleted - verifyResourcePropertyList(basicVFC, propertyDetailsTypeString, "{\"key1\":\"val1\",\"key2\":\"val2\"}"); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/PropertyApisTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/PropertyApisTest.java deleted file mode 100644 index 9f0dff9b42..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/property/PropertyApisTest.java +++ /dev/null @@ -1,379 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.property; - -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.operations.impl.UniqueIdBuilder; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.PropertyReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.preRequisites.SimpleOneRsrcOneServiceTest; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.PropertyRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.UserRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class PropertyApisTest extends SimpleOneRsrcOneServiceTest { - - protected static final String RESOURCE_CATEGORY = "Generic/Databases"; - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json";; - - // protected User sdncDesignerDetails; - // protected ResourceReqDetails resourceDetails; - protected PropertyReqDetails property; - protected String body; - - protected HttpRequest httpRequest = new HttpRequest(); - protected Map<String, String> headersMap = new HashMap<String, String>(); - - @Rule - public static TestName testName = new TestName(); - - public PropertyApisTest() { - super(testName, PropertyApisTest.class.getName()); - } - - @BeforeMethod - public void init() throws Exception { - // //Delete resource - // - // resourceDetails = new ResourceReqDetails(); - // resourceDetails.setResourceName("testresourceDetails"); - // - // resourceUtils.deleteResource_allVersions(resourceDetails, - // sdncDesignerDetails); - // - // //Create resource - // resourceDetails = createResource(sdncDesignerDetails, - // "testresourceDetails"); - - // Create property - // property.setPropertyName("test"); - // property.setPropertyType("integer"); - // property.setPropertySource("A&AI"); - // property.setPropertyDescription("test property"); - - // body = gson.toJson(property); - property = ElementFactory.getDefaultProperty(); - body = property.propertyToJsonString(); - // System.out.println(body); - // HTTP (for negative tests) - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncDesignerDetails.getUserId()); - - } - - @Test - public void testPropertyApis() throws Exception { - // Create property - // System.out.println ("---- Create Property (POST) ----"); - - String propertyId = UniqueIdBuilder.buildComponentPropertyUniqueId(getResourceId(resourceDetails), property.getName()); - - PropertyRestUtils.deleteProperty(getResourceId(resourceDetails), propertyId, sdncDesignerDetails); - RestResponse createPropertyResponse = PropertyRestUtils.createProperty(getResourceId(resourceDetails), body, - sdncDesignerDetails); - AssertJUnit.assertTrue("Expected result code - 201, received - " + createPropertyResponse.getErrorCode(), - createPropertyResponse.getErrorCode() == 201); - - // Get property - // System.out.println ("---- Get Property (GET) ----"); - RestResponse getPropertyResponse = PropertyRestUtils.getProperty(getResourceId(resourceDetails), propertyId, - sdncDesignerDetails); - AssertJUnit.assertTrue("Expected result code - 200, received - " + getPropertyResponse.getErrorCode(), - getPropertyResponse.getErrorCode() == 200); - - JSONObject jsonResp = (JSONObject) JSONValue.parse(getPropertyResponse.getResponse()); - - // assertTrue("Wrong 'type' in the - // response",jsonResp.get("type").equals(property.getPropertyType())); - // assertTrue("Wrong 'source' in the - // response",jsonResp.get("name").equals(property.getPropertyName())); - // assertTrue("Wrong 'name' in the - // response",jsonResp.get("source").equals(property.getPropertySource())); - // assertTrue("Wrong 'description' in the - // response",jsonResp.get("description").equals(property.getPropertyDescription())); - - // Update property - // System.out.println ("---- Update Property (UPDATE) ----"); - property.setPropertyDescription("Updated description"); - // body = gson.toJson(property); - body = property.propertyToJsonString(); - - RestResponse updatePropertyResponse = PropertyRestUtils.updateProperty(getResourceId(resourceDetails), - propertyId, body, sdncDesignerDetails); - AssertJUnit.assertTrue("Expected result code - 200, received - " + updatePropertyResponse.getErrorCode(), - updatePropertyResponse.getErrorCode() == 200); - - // Get property - // System.out.println ("---- Get Property (GET) ----"); - getPropertyResponse = PropertyRestUtils.getProperty(getResourceId(resourceDetails), propertyId, - sdncDesignerDetails); - AssertJUnit.assertTrue("Expected result code - 200, received - " + getPropertyResponse.getErrorCode(), - getPropertyResponse.getErrorCode() == 200); - - jsonResp = (JSONObject) JSONValue.parse(getPropertyResponse.getResponse()); - - // assertTrue("Wrong 'type' in the - // response",jsonResp.get("type").equals(property.getPropertyType())); - // assertTrue("Wrong 'source' in the - // response",jsonResp.get("name").equals(property.getPropertyName())); - // assertTrue("Wrong 'name' in the - // response",jsonResp.get("source").equals(property.getPropertySource())); - // assertTrue("Wrong 'description' in the - // response",jsonResp.get("description").equals(property.getPropertyDescription())); - - // Delete property - // System.out.println ("---- Delete Property (DELETE) ----"); - RestResponse deletePropertyResponse = PropertyRestUtils.deleteProperty(getResourceId(resourceDetails), - propertyId, sdncDesignerDetails); - AssertJUnit.assertTrue("Expected result code - 204, received - " + deletePropertyResponse.getErrorCode(), - deletePropertyResponse.getErrorCode() == 204); - - // Get property - verify that the property doesn't exist. - // System.out.println("---- GET - Property Not Found ----"); - getPropertyResponse = PropertyRestUtils.getProperty(getResourceId(resourceDetails), propertyId, - sdncDesignerDetails); - List<String> variables = Arrays.asList(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_NOT_FOUND.name(), variables, - getPropertyResponse.getResponse()); - - } - - // -------------------------------------------------------------------------------------- - - protected String getPropertyId(ResourceReqDetails resource, PropertyReqDetails property) { - // return - // resource.getResourceName().toLowerCase()+".0.1."+property.getPropertyName(); - return UniqueIdBuilder.buildComponentPropertyUniqueId(resource.getUniqueId(), property.getName()); - } - - protected String getResourceId(ResourceReqDetails resource) { - // String resourceUid = - // UniqueIdBuilder.buildResourceUniqueId(resource.getResourceName(), - // "0.1"); - - return resource.getUniqueId(); - } - - protected User createUser(String cspUserId, String firstName, String lastName, String email, String role) - throws Exception { - User sdncUserDetails = new User(firstName, lastName, cspUserId, email, role, null); - - User adminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - UserRestUtils.createUser(sdncUserDetails, adminUser); - - return sdncUserDetails; - } - - protected ResourceReqDetails createResource(User sdncUserDetails, String resourceName) throws Exception { - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - // String category = ResourceCategoryEnum.DATABASE.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.0"; - String contactId = sdncUserDetails.getUserId(); - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, null, - derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_DATABASE.getCategory(), - ResourceCategoryEnum.GENERIC_DATABASE.getSubCategory()); - // deleteResource(resourceName.toLowerCase()+".0.1",sdncUserDetails.getUserId()); - // TODO delete by name - // deleteResource(UniqueIdBuilder.buildResourceUniqueId(resourceName, - // "0.1"), sdncUserDetails.getUserId()); - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, sdncUserDetails); - AssertJUnit.assertTrue(createResource.getErrorCode().intValue() == 201); - String resourceId = ResponseParser.getUniqueIdFromResponse(createResource); - resourceDetails.setUniqueId(resourceId); - - return resourceDetails; - - } - - @Test - public void putReqToCreateUriNotAllowed() throws Exception { - // System.out.println("---- PUT request to Create uri - Not Allowed - // ----"); - String url = String.format(Urls.CREATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails)); - RestResponse propertyErrorResponse = httpRequest.httpSendByMethod(url, "PUT", body, headersMap); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void getReqToCreateUriNotAllowed() throws Exception { - // System.out.println("---- GET request to Create uri - Not Allowed - // ----"); - String url = String.format(Urls.CREATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails)); - RestResponse propertyErrorResponse = httpRequest.httpSendGet(url, headersMap); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void deleteReqToCreateUriNotAllowed() throws Exception { - // System.out.println("---- DELETE request to Create uri - Not Allowed - // ----"); - String url = String.format(Urls.CREATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails)); - RestResponse propertyErrorResponse = httpRequest.httpSendDelete(url, headersMap); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void postReqToUpdateUriNotAllowed() throws Exception { - // System.out.println("---- POST request to Update uri - Not Allowed - // ----"); - String url = String.format(Urls.UPDATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), getPropertyId(resourceDetails, property)); - RestResponse propertyErrorResponse = httpRequest.httpSendPost(url, body, headersMap); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void deleteReqPropertyNotFound() throws Exception { - // System.out.println("---- DELETE - Property Not Found ----"); - String unknownPropertyId = getPropertyId(resourceDetails, property) + "111"; - String url = String.format(Urls.DELETE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), unknownPropertyId); - RestResponse propertyErrorResponse = httpRequest.httpSendDelete(url, headersMap); - List<String> variables = Arrays.asList(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_NOT_FOUND.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void updateReqPropertyNotFound() throws Exception { - // System.out.println("---- PUT - Property Not Found ----"); - String unknownPropertyId = getPropertyId(resourceDetails, property) + "111"; - String url = String.format(Urls.UPDATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), unknownPropertyId); - RestResponse propertyErrorResponse = httpRequest.httpSendByMethod(url, "PUT", body, headersMap); - List<String> variables = Arrays.asList(""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.PROPERTY_NOT_FOUND.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void modifierNotTheStateOwner() throws Exception { - // System.out.println("---- The modifier is not the state owner - - // Operation Not Allowed ----"); - User sdncUserDetails2 = createUser("tu5555", "Test", "User", "tu5555@intl.sdc.com", "DESIGNER"); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncUserDetails2.getUserId()); - property.setPropertyDescription("new description"); - // body = gson.toJson(property); - body = property.propertyToJsonString(); - String url = String.format(Urls.UPDATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), getPropertyId(resourceDetails, property)); - RestResponse propertyErrorResponse = httpRequest.httpSendByMethod(url, "PUT", body, headersMap); - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - propertyErrorResponse.getResponse()); - - } - - @Test - public void postReqInvalidContent() throws Exception { - // System.out.println("---- POST - Invalid Content ----"); - body = "invalid"; - String url = String.format(Urls.CREATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), getPropertyId(resourceDetails, property)); - RestResponse propertyErrorResponse = httpRequest.httpSendPost(url, body, headersMap); - - // System.out.println(propertyErrorResponse.getResponse()+" "+ - // propertyErrorResponse.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, - propertyErrorResponse.getResponse()); - } - - @Test - public void putReqInvalidContent() throws Exception { - - // Create property - // System.out.println ("---- Create Property (POST) ----"); - RestResponse createPropertyResponse = PropertyRestUtils.createProperty(getResourceId(resourceDetails), body, - sdncDesignerDetails); - assertTrue("Expected result code - 201, received - " + createPropertyResponse.getErrorCode(), - createPropertyResponse.getErrorCode() == 201); - - // System.out.println("---- PUT - Invalid Content ----"); - body = "invalid"; - - String url = String.format(Urls.UPDATE_PROPERTY, config.getCatalogBeHost(), config.getCatalogBePort(), - getResourceId(resourceDetails), getPropertyId(resourceDetails, property)); - - // System.out.println(url + "\n" + body); - - RestResponse propertyErrorResponse = httpRequest.httpSendByMethod(url, "PUT", body, headersMap); - - // System.out.println(propertyErrorResponse.getResponse()+" "+ - // propertyErrorResponse.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, - propertyErrorResponse.getResponse()); - } - - // -------------------------------------------------------------------------------------- - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CheckGetResource.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CheckGetResource.java deleted file mode 100644 index 85dfe4e13a..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CheckGetResource.java +++ /dev/null @@ -1,52 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.common.util.SerializationUtils; - -import fj.data.Either; - -public class CheckGetResource { - - public void checkGetVmmsc6() throws Exception { - - try { - - System.out.println("dddd"); - RestResponse getResource = ResourceRestUtils.getResource("96eb6583-2822-448b-a284-bfc144fa627e"); - - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - - Either<byte[], Boolean> serialize = SerializationUtils.serializeExt(resource); - - SerializationUtils.deserializeExt(serialize.left().value(), Resource.class, "ffff"); - - } catch (Exception e) { - e.printStackTrace(); - } - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java deleted file mode 100644 index 903ffbaca7..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ComponentRelationshipInVfTest.java +++ /dev/null @@ -1,1395 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import org.apache.http.client.ClientProtocolException; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.CapReqDef; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.CapabilityRequirementRelationship; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.RelationshipImpl; -import org.openecomp.sdc.be.model.RelationshipInfo; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class ComponentRelationshipInVfTest extends ComponentBaseTest { - - public ComponentRelationshipInVfTest() { - super(new TestName(), ComponentRelationshipInVfTest.class.getName()); - } - - private ResourceReqDetails resourceDetailsVF; - private User designerUser; - private ResourceReqDetails resourceDetailsReq; - private ResourceReqDetails resourceDetailsCap; - - @BeforeMethod - public void before() throws Exception { - designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - resourceDetailsVF = ElementFactory.getDefaultResourceByType("VF100", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VF.toString()); - createResource(resourceDetailsVF, designerUser); - - resourceDetailsReq = ElementFactory.getDefaultResourceByType("SoftCompRouter", - NormativeTypesEnum.SOFTWARE_COMPONENT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, - designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType - // = - // VFC - resourceDetailsCap = ElementFactory.getDefaultResourceByType("ciMyCompute", NormativeTypesEnum.COMPUTE, - ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType - // = - // VFC - - } - - private void createResource(ResourceReqDetails resourceDetails, User user) throws Exception, IOException { - RestResponse createResourceResponse = ResourceRestUtils.createResource(resourceDetails, user); - ResourceRestUtils.checkCreateResponse(createResourceResponse); - if (!resourceDetails.getResourceType().equals("VF")) - LifecycleRestUtils.changeResourceState(resourceDetails, user, "0.1", LifeCycleStatesEnum.CHECKIN); - } - - private void createAtomicResource(ResourceReqDetails resourceDetails, User user) throws Exception { - createResource(resourceDetails, user); - } - - private RequirementCapabilityRelDef setRelationshipBetweenInstances(ComponentInstance riReq, - ComponentInstance riCap, CapReqDef capReqDef) throws Exception { - - String capbilityUid = capReqDef.getCapabilities().get("tosca.capabilities.Container").get(0).getUniqueId(); - String requirementUid = capReqDef.getRequirements().get("tosca.capabilities.Container").get(0).getUniqueId(); - - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - requirementDef.setFromNode(riReq.getUniqueId()); - requirementDef.setToNode(riCap.getUniqueId()); - - RelationshipInfo pair = new RelationshipInfo(); - pair.setRequirementOwnerId(riReq.getUniqueId()); - pair.setCapabilityOwnerId(riCap.getUniqueId()); - pair.setRequirement("host"); - RelationshipImpl relationship = new RelationshipImpl(); - relationship.setType("tosca.capabilities.Container"); - pair.setRelationships(relationship); - pair.setCapabilityUid(capbilityUid); - pair.setRequirementUid(requirementUid); - List<CapabilityRequirementRelationship> relationships = new ArrayList<>(); - CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship(); - capReqRel.setRelation(pair); - relationships.add(capReqRel); - requirementDef.setRelationships(relationships); - return requirementDef; - } - - private ComponentInstance createComponentInstance(ResourceReqDetails res) throws Exception { - return createComponentInstance(res, designerUser); - } - - private ComponentInstance createComponentInstance(ResourceReqDetails res, User user, ResourceReqDetails vf) - throws Exception { - RestResponse response = ResourceRestUtils.createResourceInstance(res, user, vf.getUniqueId()); - ResourceRestUtils.checkCreateResponse(response); - ComponentInstance compInstance = ResponseParser.parseToObject(response.getResponse(), ComponentInstance.class); - return compInstance; - } - - private ComponentInstance createComponentInstance(ResourceReqDetails res, User user) throws Exception { - return createComponentInstance(res, user, resourceDetailsVF); - } - - private void createTwoAtomicResourcesByType(String reqType, String capType, User user1, User user2) - throws Exception { - resourceDetailsReq.setResourceType(reqType); - createAtomicResource(resourceDetailsReq, user1); - resourceDetailsCap.setResourceType(capType); - createAtomicResource(resourceDetailsCap, user2); - } - - private void createTwoAtomicResourcesByType(String reqType, String capType) throws Exception { - createTwoAtomicResourcesByType(reqType, capType, designerUser, designerUser); - } - - @Test - public void associateInVF() throws Exception { - - createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDef = getResourceReqCap(); - - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get("tosca.capabilities.Container"); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get("tosca.capabilities.Container"); - - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - requirementDef.setFromNode(riReq.getUniqueId()); - requirementDef.setToNode(riCap.getUniqueId()); - - RelationshipInfo pair = new RelationshipInfo(); - pair.setRequirementOwnerId(riReq.getUniqueId()); - pair.setCapabilityOwnerId(riCap.getUniqueId()); - pair.setRequirement("host"); - RelationshipImpl relationship = new RelationshipImpl(); - relationship.setType("tosca.capabilities.Container"); - pair.setRelationships(relationship); - pair.setCapabilityUid(capList.get(0).getUniqueId()); - pair.setRequirementUid(reqList.get(0).getUniqueId()); - List<CapabilityRequirementRelationship> relationships = new ArrayList<>(); - CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship(); - capReqRel.setRelation(pair); - relationships.add(capReqRel); - requirementDef.setRelationships(relationships); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser, - resourceDetailsVF); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - - List<RequirementDefinition> list = capReqDef.getRequirements().get("tosca.capabilities.Container"); - assertEquals("Check requirement", null, list); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser, resourceDetailsVF); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - - list = capReqDef.getRequirements().get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, list.size()); - } - - //////////////////////////////// Q A ////////////////////////////// - private boolean checkRealtionship(String fromNode, String toNode, String resourceUniqueId) throws Exception { - List<RequirementCapabilityRelDef> componentInstancesRelations = getComponentInstancesRelations( - resourceUniqueId); - RequirementCapabilityRelDef requirementCapabilityRelDef = componentInstancesRelations.get(0); - boolean fromNodeCheck = requirementCapabilityRelDef.getFromNode().equals(fromNode); - boolean toNodeCheck = requirementCapabilityRelDef.getToNode().equals(toNode); - - return fromNodeCheck && toNodeCheck; - } - - private List<RequirementCapabilityRelDef> getComponentInstancesRelations(String resourceUniqueId) - throws ClientProtocolException, IOException { - Resource resource = getVfAsResourceObject(resourceUniqueId); - List<RequirementCapabilityRelDef> componenRelationInstances = resource.getComponentInstancesRelations(); - - return componenRelationInstances; - } - - private Resource getVfAsResourceObject(String resourceUniqueId) throws ClientProtocolException, IOException { - RestResponse getResource = ResourceRestUtils.getResource(resourceUniqueId); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - return resource; - } - - private List<ComponentInstance> getComponentInstancesList(String resourceUniqueId) throws Exception { - Resource resource = getVfAsResourceObject(resourceUniqueId); - List<ComponentInstance> componentInstances = resource.getComponentInstances(); - return componentInstances; - } - - @Test - public void associateCpToCpTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDef = getResourceReqCap(); - - requirementsBeforeAssociate.remove("tosca.capabilities.Container"); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - - List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container"); - for (CapabilityDefinition cap : list) { - cap.setMinOccurrences("0"); - } - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - } - - private CapReqDef getResourceReqCap(ResourceReqDetails res) throws IOException { - RestResponse getResourceBeforeAssociate = ComponentRestUtils.getComponentRequirmentsCapabilities(designerUser, - resourceDetailsVF); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceBeforeAssociate.getResponse(), CapReqDef.class); - return capReqDef; - } - - private CapReqDef getResourceReqCap() throws IOException { - return getResourceReqCap(resourceDetailsVF); - } - - @Test - public void associateCpToVLTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDef = getResourceReqCap(); - - requirementsBeforeAssociate.remove("tosca.capabilities.Container"); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - - List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container"); - for (CapabilityDefinition cap : list) { - cap.setMinOccurrences("0"); - } - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - - } - - // Error handling - // ELLA - more informative error - @Test - public void associateCpToVlInVFCTest() throws Exception { - ResourceReqDetails vfcDetails = ElementFactory.getDefaultResourceByType("VFC100", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VFC.toString()); - RestResponse createVfcResponse = ResourceRestUtils.createResource(vfcDetails, designerUser); - ResourceRestUtils.checkCreateResponse(createVfcResponse); - - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - vfcDetails.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue()); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "SoftCompRouter 1", - // "MyCompute 2", - // "host" - // ] - } - - // Error handling - @Test - public void associateCpToVfTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - createComponentInstance(resourceDetailsCap, designerUser, resourceDetailsVF); - createComponentInstance(resourceDetailsReq, designerUser, resourceDetailsVF); - - ResourceReqDetails vfHigh = new ResourceReqDetails(resourceDetailsVF, "0.1"); - vfHigh.setName("vfHigh"); - vfHigh.setTags(new ArrayList<String>(Arrays.asList(vfHigh.getName()))); - vfHigh.setResourceType(ResourceTypeEnum.VF.toString()); - createResource(vfHigh, designerUser); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq, designerUser, vfHigh); - LifecycleRestUtils.changeResourceState(resourceDetailsVF, designerUser, "0.1", LifeCycleStatesEnum.CHECKIN); - ComponentInstance riCap = createComponentInstance(resourceDetailsVF, designerUser, vfHigh); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - associateInstances.getResponse()); - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "SoftCompRouter 1", - // "VF100 2", - // "host" - // ] - } - - // Error handling - @Test - public void associateVfcToVfcNotFoundTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - riCap.setUniqueId("123"); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_BAD_REQUEST.name(), - new ArrayList<String>(), associateInstances.getResponse()); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "SoftCompRouter 1", - // "012f6dcd-bcdf-4d9b-87be-ff1442b95831.5d265453-0b6a-4453-8f3d-57a253b88432.softcomprouter1", - // "host" - } - - @Test - public void associateCpToDeletedVfcTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(), - designerUser.getUserId()); - ResourceRestUtils.checkDeleteResponse(deleteResourceResponse); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - } - - @Test - public void associateCpToDeletedVlTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(), - designerUser.getUserId()); - ResourceRestUtils.checkDeleteResponse(deleteResourceResponse); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - } - - @Test - public void associateCpToDeletedCpTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(), - designerUser.getUserId()); - ResourceRestUtils.checkDeleteResponse(deleteResourceResponse); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - } - - // Error handling - @Test - public void associateCpToDeletedCpInstanceTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse deleteComponentInstance = ComponentInstanceRestUtils.deleteComponentInstance(designerUser, - resourceDetailsVF.getUniqueId(), riReq.getUniqueId(), ComponentTypeEnum.RESOURCE); - ComponentInstanceRestUtils.checkDeleteResponse(deleteComponentInstance); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue()); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "7d6aca08-9321-4ea1-a781-c52c8214a30e.c0e63466-5283-44d8-adff-365c0885a6ba.softcomprouter1", - // "MyCompute 2", - // "host" - // ] - } - - // Error handling - @Test - public void associateVfcToDeletedVFCInstanceTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.VFC.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse deleteComponentInstance = ComponentInstanceRestUtils.deleteComponentInstance(designerUser, - resourceDetailsVF.getUniqueId(), riReq.getUniqueId(), ComponentTypeEnum.RESOURCE); - ComponentInstanceRestUtils.checkDeleteResponse(deleteComponentInstance); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue()); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "7d6aca08-9321-4ea1-a781-c52c8214a30e.c0e63466-5283-44d8-adff-365c0885a6ba.softcomprouter1", - // "MyCompute 2", - // "host" - // ] - } - - @Test - public void associateWithDifferentOwnerOfVf() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), resourceDetailsVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - associateInstances.getResponse()); - - CapReqDef capReqDef = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements(); - - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate)); - } - - @Test - public void associateWithTester() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), resourceDetailsVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - associateInstances.getResponse()); - - CapReqDef capReqDef = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements(); - - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate)); - } - - // Error handling - @Test - public void associateCpToVLIntoVFNotFound() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - String uidNotFound = "123"; - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - uidNotFound, ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList("")), associateInstances.getResponse()); - - // {"serviceException":{"messageId":"SVC4063","text":"Error: Requested - // '%1' resource was not found.","variables":[""]}}} - } - - // Error Handling - @Test - public void associateCpToVlWithMissingUid() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - requirementDef.setToNode(""); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 400, associateInstances.getErrorCode().intValue()); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), - // new ArrayList<String>(), associateInstances.getResponse()); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "SoftCompRouter 1", - // "fd3a689b-fa1c-4105-933d-d1310e642f05.95bce626-ce73-413b-8c14-2388d1589d5c.softcomprouter1", - // "host" - // ] - } - - @Test - public void associateInServiceWithUidOfVf() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList("")), associateInstances.getResponse()); - } - - @Test - public void associateCpToVl_DifferentOwners() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString(), designerUser, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2)); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDef = getResourceReqCap(); - - requirementsBeforeAssociate.remove("tosca.capabilities.Container"); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - - List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container"); - for (CapabilityDefinition cap : list) { - cap.setMinOccurrences("0"); - } - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - } - - @Test(enabled = false) - public void associateToNotCheckedoutVf() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse changeResourceStateToCheckin = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - associateInstances.getResponse()); - - CapReqDef capReqDef = getResourceReqCap(); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDef.getCapabilities().equals(capabilitiesBeforeAssociate)); - - String firstUniqueId = resourceDetailsVF.getUniqueId(); - - // checkout - - RestResponse changeResourceStateToCheckout = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout); - String secondUniqueId = resourceDetailsVF.getUniqueId(); - - CapReqDef capReqDefAfterFirstCheckout = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesAfterFirstCheckout = capReqDefAfterFirstCheckout - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterFirstCheckout = capReqDefAfterFirstCheckout - .getRequirements(); - - requirementDef = setUidsOfInstancesAfterLifecycleStateChange(riReq, riCap, capReqDefBeforeAssociate); - - RestResponse firstAssociateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, firstAssociateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDefAfterFirstAssociate = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesAfterFirstAssociate = capReqDefAfterFirstAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterFirstAssociate = capReqDefAfterFirstAssociate - .getRequirements(); - - requirementsAfterFirstCheckout.remove("tosca.capabilities.Container"); - assertTrue(requirementsAfterFirstAssociate.equals(requirementsAfterFirstCheckout)); - assertTrue(capabilitiesAfterFirstAssociate.equals(capabilitiesAfterFirstCheckout)); - - resourceDetailsVF.setUniqueId(firstUniqueId); - CapReqDef capReqDefOfFirstVersion = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesOfFirstVersion = capReqDefOfFirstVersion.getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsOfFirstVersion = capReqDefOfFirstVersion.getRequirements(); - - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - assertTrue(requirementsBeforeAssociate.equals(requirementsOfFirstVersion)); - assertTrue(capabilitiesBeforeAssociate.equals(capabilitiesOfFirstVersion)); - - // checkin-checkout - resourceDetailsVF.setUniqueId(secondUniqueId); - RestResponse changeResourceStateToCheckin2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin2); - RestResponse changeResourceStateToCheckout2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout2); - - List<RequirementCapabilityRelDef> componentInstancesRelations = getComponentInstancesRelations( - resourceDetailsVF.getUniqueId()); - assertFalse(componentInstancesRelations.isEmpty()); - assertEquals(1, componentInstancesRelations.size()); - List<ComponentInstance> componentInstancesList = getComponentInstancesList(resourceDetailsVF.getUniqueId()); - for (ComponentInstance comp : componentInstancesList) { - String instanceUid = comp.getUniqueId(); - assertTrue(checkNodesInRelations(instanceUid, componentInstancesRelations.get(0))); - } - assertEquals(2, componentInstancesList.size()); - - } - - private RequirementCapabilityRelDef setUidsOfInstancesAfterLifecycleStateChange(ComponentInstance riReq, - ComponentInstance riCap, CapReqDef capReqDefBeforeAssociate) - throws ClientProtocolException, IOException, Exception { - RequirementCapabilityRelDef requirementDef; - // RestResponse getResourceResponse = - // ResourceRestUtils.getResource(resourceDetailsVF.getUniqueId()); - // Resource resource_0_2 = - // ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), - // Resource.class); - // List<ComponentInstance> componentInstances = - // resource_0_2.getComponentInstances(); - List<ComponentInstance> componentInstances = getComponentInstancesList(resourceDetailsVF.getUniqueId()); - - for (ComponentInstance comp : componentInstances) { - if (comp.getName().equals(riReq.getName())) { - riReq.setUniqueId(comp.getUniqueId()); - } else if (comp.getName().equals(riCap.getName())) { - riCap.setUniqueId(comp.getUniqueId()); - } - } - requirementDef = setRelationshipBetweenInstances(riReq, riCap, capReqDefBeforeAssociate); - return requirementDef; - } - - private boolean checkNodesInRelations(String instanceUid, RequirementCapabilityRelDef relation) { - if (relation.getToNode().equals(instanceUid)) { - return true; - } else if (relation.getFromNode().equals(instanceUid)) { - return true; - } else { - return false; - } - } - - @Test - public void associateOneOfTwoCPsToVl_ThenDiscocciate() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - ResourceReqDetails secondResourceDetailsReq = new ResourceReqDetails(resourceDetailsReq, "0.1"); - secondResourceDetailsReq.setName("secondCP"); - secondResourceDetailsReq.setTags(Arrays.asList(secondResourceDetailsReq.getName())); - createAtomicResource(secondResourceDetailsReq, designerUser); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riReq2 = createComponentInstance(secondResourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDef = getResourceReqCap(); - - List<RequirementDefinition> expectedList = requirementsBeforeAssociate.get("tosca.capabilities.Container"); - for (RequirementDefinition req : expectedList) { - if (req.getOwnerName().equals(riReq2.getName())) { - expectedList = new ArrayList<RequirementDefinition>(Arrays.asList(req)); - break; - } - } - requirementsBeforeAssociate.put("tosca.capabilities.Container", expectedList); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - - List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container"); - for (CapabilityDefinition cap : list) { - cap.setMinOccurrences("0"); - } - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - - // second relationship - - RequirementCapabilityRelDef secondRequirementDef = setRelationshipBetweenInstances(riReq2, riCap, - capReqDefBeforeAssociate); - RestResponse secondAssociateInstances = ComponentInstanceRestUtils.associateInstances(secondRequirementDef, - designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, secondAssociateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(secondRequirementDef.getFromNode(), secondRequirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - CapReqDef capReqDefAfterSecondAssociation = getResourceReqCap(); - - requirementsBeforeAssociate.remove("tosca.capabilities.Container"); - assertTrue(capReqDefAfterSecondAssociation.getRequirements().equals(requirementsBeforeAssociate)); - - Map<String, List<CapabilityDefinition>> capabilitiesAfterSecondAssociate = capReqDefAfterSecondAssociation - .getCapabilities(); - assertTrue(capabilitiesAfterSecondAssociate.equals(capabilitiesBeforeAssociate)); - - // dissociate - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(secondRequirementDef, - designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - CapReqDef capReqDefAfterDissociation = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesAfterDissociate = capReqDefAfterDissociation - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterDissociate = capReqDefAfterDissociation - .getRequirements(); - - assertTrue(capabilitiesAfterDissociate.equals(capReqDef.getCapabilities())); - requirementsBeforeAssociate.put("tosca.capabilities.Container", expectedList); - assertTrue(requirementsAfterDissociate.equals(requirementsBeforeAssociate)); - } - - @Test - public void associateNotCompitableCapAndReq() throws Exception { - resourceDetailsReq = ElementFactory.getDefaultResourceByType("Database", NormativeTypesEnum.DATABASE, - ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, designerUser.getUserId(), ResourceTypeEnum.CP.toString()); // resourceType - // = - // VFC - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - assertTrue(requirementDef.getRelationships().size() == 1); - String requirement = requirementDef.getRelationships().get(0).getRelation().getRequirement(); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 404, associateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList(riReq.getName(), riCap.getName(), requirement)), - associateInstances.getResponse()); - - CapReqDef capReqDef = getResourceReqCap(); - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsAfterAssociate = capReqDef.getRequirements(); - - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - assertTrue(requirementsAfterAssociate.equals(requirementsBeforeAssociate)); - - } - - @Test - public void disassociateCpAndCpTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.CP.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - @Test - public void disassociateCpAndVfcTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - @Test - public void disassociateCpAndVLTest() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - // Error handliing - // in the error should we get the unique id of instances instead of names - @Test - public void disassociateNotFoundAssociation() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - String requirementName = requirementDef.getRelationships().get(0).getRelation().getRequirement(); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList(riReq.getName(), riCap.getName(), requirementName)), - dissociateInstances.getResponse()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - // Error handliing - @Test - public void disassociateRelationInVfNotFound() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - String uidNotFound = "123"; - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - uidNotFound, ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList(uidNotFound)), dissociateInstances.getResponse()); - - // "serviceException": { - // "messageId": "SVC4063", - // "text": "Error: Requested \u0027%1\u0027 resource was not found.", - // "variables": [ - // "" - // ] - } - - @Test - public void disassociateWithDifferentDesigner() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), resourceDetailsVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - dissociateInstances.getResponse()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - - } - - @Test - public void disassociateWithTester() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - ElementFactory.getDefaultUser(UserRoleEnum.TESTER), resourceDetailsVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - dissociateInstances.getResponse()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertNotNull("Requierment is null after disassociate with tester", listOfRequierments); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - @Test - public void disassociateServiceWithUidOfVF() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VFC.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), - new ArrayList<String>(Arrays.asList("")), dissociateInstances.getResponse()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertTrue(listOfRequierments == null); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).size() != 0); - } - - @Test - public void disassociateWithEmptyVfUid() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - "", ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 404, dissociateInstances.getErrorCode().intValue()); - - CapReqDef capReqDef = getResourceReqCap(); - - requirementsBeforeAssociate.remove("tosca.capabilities.Container"); - assertTrue(capReqDef.getRequirements().equals(requirementsBeforeAssociate)); - - List<CapabilityDefinition> list = capabilitiesBeforeAssociate.get("tosca.capabilities.Container"); - for (CapabilityDefinition cap : list) { - cap.setMinOccurrences("0"); - } - - Map<String, List<CapabilityDefinition>> capabilitiesAfterAssociate = capReqDef.getCapabilities(); - assertTrue(capabilitiesAfterAssociate.equals(capabilitiesBeforeAssociate)); - } - - @Test - public void disassociateOneComponentDeleted() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - - RestResponse deleteResourceResponse = ResourceRestUtils.deleteResource(resourceDetailsCap.getUniqueId(), - designerUser.getUserId()); - ResourceRestUtils.checkDeleteResponse(deleteResourceResponse); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - - List<RequirementDefinition> listOfRequierments = capReqDefAfterDissociate.getRequirements() - .get("tosca.capabilities.Container"); - assertEquals("Check requirement", 1, listOfRequierments.size()); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - } - - @Test - public void disassociateNotCheckedoutVf() throws Exception { - createTwoAtomicResourcesByType(ResourceTypeEnum.CP.toString(), ResourceTypeEnum.VL.toString()); - - ComponentInstance riReq = createComponentInstance(resourceDetailsReq); - ComponentInstance riCap = createComponentInstance(resourceDetailsCap); - - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(); - Map<String, List<CapabilityDefinition>> capabilitiesBeforeAssociate = capReqDefBeforeAssociate - .getCapabilities(); - Map<String, List<RequirementDefinition>> requirementsBeforeAssociate = capReqDefBeforeAssociate - .getRequirements(); - - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(riReq, riCap, - capReqDefBeforeAssociate); - - RestResponse changeResourceStateToCheckin = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckin); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", 409, dissociateInstances.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - dissociateInstances.getResponse()); - - CapReqDef capReqDefAfterDissociate = getResourceReqCap(); - assertTrue(capReqDefAfterDissociate.getRequirements().equals(requirementsBeforeAssociate)); - assertTrue(capReqDefAfterDissociate.getCapabilities().equals(capabilitiesBeforeAssociate)); - - RestResponse changeResourceStateToCheckout = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout); - - requirementDef = setUidsOfInstancesAfterLifecycleStateChange(riReq, riCap, capReqDefBeforeAssociate); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, designerUser, - resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF.getUniqueId())); - - RestResponse secondDisociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - designerUser, resourceDetailsVF.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, secondDisociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - RestResponse changeResourceStateToCheckout2 = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout2); - RestResponse changeResourceStateToCheckout3 = LifecycleRestUtils.changeResourceState(resourceDetailsVF, - designerUser, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.checkSuccess(changeResourceStateToCheckout3); - - assertTrue(getComponentInstancesRelations(resourceDetailsVF.getUniqueId()).isEmpty()); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CreateResourceApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CreateResourceApiTest.java deleted file mode 100644 index b2e81fea75..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CreateResourceApiTest.java +++ /dev/null @@ -1,2212 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceRespJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.Convertor; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -/** - * @author yshlosberg - * - */ -public class CreateResourceApiTest extends ComponentBaseTest { - - private static Logger log = LoggerFactory.getLogger(CreateResourceApiTest.class.getName()); - - String contentTypeHeaderData = "application/json"; - String acceptHeaderDate = "application/json"; - String resourceVersion = "0.1"; - - @Rule - public static TestName name = new TestName(); - - public CreateResourceApiTest() { - super(name, CreateResourceApiTest.class.getName()); - } - - @Test - public void createResourceTest() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // ResourceReqDetails resourceDetails = new - // ResourceReqDetails(resourceName, description, resourceTags, category, - // derivedFrom, vendorName, vendorRelease, contactId, icon); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - String resourceName = resourceDetails.getName(); - resourceDetails.setTags(Arrays.asList(resourceName, resourceName, resourceName, resourceName, "tag2", "tag2")); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void createResourceNonDefaultResourceTypeTest() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - String resourceType = ResourceTypeEnum.CP.toString(); - resourceDetails.setResourceType(resourceType); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - resourceRespJavaObject.setResourceType(resourceType); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void createResourceTest_costAndLicenseType() throws Exception { - - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - - } - - // ////Benny - @Test - public void createResourceTest_CostIsMissing() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - // resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - } - - @Test - public void createResourceTest_LicenseTypeMissing() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - // resourceDetails.setLicenseType("User"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - } - - @Test - public void createResourceTest_LicenseType_Installation() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("99999.999"); - resourceDetails.setLicenseType("Installation"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - } - - @Test - public void createResourceTest_LicenseType_CPU() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("0.0"); - resourceDetails.setLicenseType("CPU"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - // validate response - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncModifierDetails, - resourceDetails.getUniqueId()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - } - - @Test - public void createResourceTest_LicenseType_Uppercase() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("0.0"); - resourceDetails.setLicenseType("INSTALLATION"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage()); - } - - @Test - public void createResourceTest_LicenseType_Invalid() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("0.0"); - resourceDetails.setLicenseType("CPUUU"); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage()); - } - - @Test - public void createResourceTest_CostValidation_noNumeric() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - resourceDetails.setCost("12355.34b"); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - } - - @Test - public void createResourceTest_CostValidation_valueLength() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - - // Adding invalid cost - resourceDetails.setCost("12355.3434"); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - } - - @Test - public void createResourceTest_CostValidation_PriceLimitations() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - - // Adding invalid cost - RestResponse createResponse; - // create resource - - resourceDetails.setCost("000000.000"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - /* - * resourceDetails.setCost("0550.457"); createResponse = - * resourceUtils.createResource(resourceDetails, sdncModifierDetails); - * assertNotNull("check response object is not null after create resource" - * , createResponse); - * assertNotNull("check error code exists in response after create resource" - * , createResponse.getErrorCode()); - * assertEquals("Check response code after create resource", 400, - * createResponse.getErrorCode().intValue()); - * assertEquals("Check response code after create resource", - * "Bad Request", createResponse.getResponseMessage().toString()); - */ - - resourceDetails.setCost("1"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - resourceDetails.setCost("123555.340"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - resourceDetails.setCost("123.4570"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - resourceDetails.setCost("123555.30"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - resourceDetails.setCost("123.5550"); - createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", - createResponse.getResponseMessage().toString()); - - } - - @Test - public void createResourceTest_CostIsNull() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - resourceDetails.setCost(""); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage()); - - } - - @Test - public void createResourceTest_LicenseIsNull() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // set resource details - String resourceName = "CISCO4572"; - String description = "description"; - // Duplicate tags are allowed and should be de-duplicated by the server - // side - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add(resourceName); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - // Adding cost and licenseType - resourceDetails.setCost("12355.345"); - resourceDetails.setLicenseType("User"); - resourceDetails.setLicenseType(""); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 400, createResponse.getErrorCode().intValue()); - assertEquals("Check response code after create resource", "Bad Request", createResponse.getResponseMessage()); - - } - - @Test - public void createResourceTest_uri_methods() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - ResourceReqDetails resourceDetails = createRandomResource(); - - Config config = Utils.getConfig(); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - Gson gson = new Gson(); - String userBodyJson = gson.toJson(resourceDetails); - log.debug(userBodyJson); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_RESOURCE, config.getCatalogBeHost(), config.getCatalogBePort()); - - RestResponse createResourceResponse2 = http.httpSendByMethod(url, "PUT", userBodyJson, headersMap); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.NOT_ALLOWED.name()); - - assertNotNull("check response object is not null after create resource", createResourceResponse2); - assertNotNull("check error code exists in response after create resource", - createResourceResponse2.getErrorCode()); - assertEquals("Check response code after create resource", errorInfo.getCode(), - createResourceResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - createResourceResponse2.getResponse()); - - } - - private ResourceReqDetails createRandomResource() { - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - return resourceDetails; - } - - @Test - public void createResource_role_tester() throws Exception { - - // init TESTER user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - - ResourceReqDetails resourceDetails2 = createRandomResource(); - - // create resource - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - restResponse2.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.TESTER.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.TESTER.getUserName()); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - // TODO DE171450(to check) - @Test - public void createResource_role_DESIGNER() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - ResourceReqDetails resourceDetails = createRandomResource(); - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - // validate response - assertNotNull("check response object is not null after create resource", restResponse); - assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode()); - assertEquals( - "Check response code after create resource, response message is: " + restResponse.getResponseMessage(), - 201, restResponse.getErrorCode().intValue()); - - } - - @Test - public void createResource_missing_header() throws Exception { - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - ResourceReqDetails resourceDetails = createRandomResource(); - - // set null in UserId header - sdncModifierDetails.setUserId(null); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_INFORMATION.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_INFORMATION.name(), variables, - restResponse2.getResponse()); - - // //validate audit - // - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // resourceUtils.constructFieldsForAuditValidation(resourceDetails,resourceVersion); - // - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setModifierUid("null null"); - // expectedResourceAuditJavaObject.setModifierName("null null"); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setCurrState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrVersion(""); - // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - // - // String auditDesc = - // AuditValidationUtils.buildAuditDescription(errorInfo, variables); - // expectedResourceAuditJavaObject.setDesc(auditDesc); - // - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction); - // TODO: yshlosberg enable back - - } - - @Test - public void createResource_existing_resource() throws Exception { - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // ResourceReqDetails resourceDetails = createRandomResource(); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", restResponse); - assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - - // set resource details - ResourceReqDetails resourceDetails2 = ElementFactory.getDefaultResource(); - - // clean ES DB - DbUtils.cleanAllAudits(); - - // create resource - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", resourceDetails2.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_category() throws Exception { - - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - ; - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - category = null; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_empty_category() throws Exception { - - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - category = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_tags() throws Exception { - - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - ; - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_TAGS.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_TAGS.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - // TODO DE171450(to check) - @Test - public void createResourceTest_with_multiple_tags() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // // set resource details - // String resourceName = "CISCO4"; - // String description = "description"; - // ArrayList<String> resourceTags = new ArrayList<String>(); - // resourceTags.add(resourceName); - // resourceTags.add("tag2"); - // String category = ResourceServiceCategoriesEnum.VOIP.getValue(); - // ArrayList<String> derivedFrom = new ArrayList<String>(); - // derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - // String vendorName = "Oracle"; - // String vendorRelease = "1.5"; - // String icon = "myICON"; - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - resourceDetails.setTags(Arrays.asList(resourceDetails.getName(), "tag2")); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", restResponse); - assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - - } - - @Test - public void createResourceTest_empty_tag() throws Exception { - - // init ADMIN user - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(""); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FIELD_FORMAT.name()); - - assertNotNull("check response object is not null after create resouce", restResponse); - assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode()); - assertEquals("Check response code after create resource", errorInfo.getCode(), restResponse.getErrorCode()); - - List<String> variables = Arrays.asList("Resource", "tag"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables, - restResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_with_empty_vendorName() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - vendorName = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_NAME.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), variables, - restResponse2.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_vendorName() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - vendorName = null; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - assertNotNull("check response object is not null after create resource", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create resource", 400, restResponse2.getErrorCode().intValue()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), variables, - restResponse2.getResponse()); - - } - - @Test - public void createResourceTest_with_empty_vendorRelease() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - vendorRelease = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_RELEASE.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_RELEASE.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_vendorRelease() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - vendorRelease = null; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_VENDOR_RELEASE.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_RELEASE.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_with_empty_contactId() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - contactId = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CONTACT.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_contactId() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - contactId = null; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CONTACT.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_with_empty_icon() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - icon = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_ICON.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_icon() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - icon = null; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_ICON.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_with_empty_description() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - description = ""; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createResourceTest_without_description() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // set resource details - String resourceName = "CISCO4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - // set resource details - description = null; - - ResourceReqDetails resourceDetails2 = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - // create resource - - RestResponse restResponse2 = ResourceRestUtils.createResource(resourceDetails2, sdncModifierDetails); - - // validate response - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name()); - - assertNotNull("check response object is not null after create resouce", restResponse2); - assertNotNull("check error code exists in response after create resource", restResponse2.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse2.getErrorCode()); - - List<String> variables = Arrays.asList("Resource"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), variables, - restResponse2.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails2, resourceVersion); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createAndGetResourceByNameAndVersion() throws Exception { - - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - ResourceReqDetails resourceDetailsComp = ElementFactory.getDefaultResource("testresourceComp", - NormativeTypesEnum.COMPUTE, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, sdncModifierDetails.getUserId()); - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetailsComp, sdncModifierDetails); - // validate response - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - String resourceVersion = "0.1"; - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetailsComp, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResourceByNameAndVersion( - sdncModifierDetails.getUserId(), resourceDetailsComp.getName(), resourceDetailsComp.getVersion()); - assertEquals("Check response code after delete resource", 200, resourceGetResponse.getErrorCode().intValue()); - // Resource resource = - // ResourceRestUtils.parseResourceFromListResp(resourceGetResponse); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - // resourceDetailsComp.setUniqueId(resource.getUniqueId()); - - } - - @Test - public void createResourceResourceTypeNotExistsTest() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - String resourceType = "NOT EXISTS"; - resourceDetails.setResourceType(resourceType); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - - assertNotNull("check response object is not null after create resouce", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), createResponse.getErrorCode()); - - List<String> variables = new ArrayList<>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, - createResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = Convertor - .constructFieldsForAuditValidation(resourceDetails, resourceVersion); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @Test - public void createResourceResourceTypeEmptyTest() throws Exception { - - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - // String resourceType = ""; - // resourceDetails.setResourceType(resourceType); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // ErrorInfo errorInfo = - // ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - // - // assertNotNull("check response object is not null after create - // resouce", createResponse); - // assertNotNull("check error code exists in response after create - // resource", createResponse.getErrorCode()); - // assertEquals("Check response code after create service", - // errorInfo.getCode(), createResponse.getErrorCode()); - // - // List<String> variables = new ArrayList<>(); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), - // variables, createResponse.getResponse()); - // - // // validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // Convertor.constructFieldsForAuditValidation(resourceDetails, - // resourceVersion); - // String auditAction = "Create"; - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState(""); - // expectedResourceAuditJavaObject.setCurrVersion(""); - // expectedResourceAuditJavaObject.setResourceName(""); - // expectedResourceAuditJavaObject.setModifierUid(ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getUserId()); - // expectedResourceAuditJavaObject.setModifierName(ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getFullName()); - // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - // - // String auditDesc = - // AuditValidationUtils.buildAuditDescription(errorInfo, variables); - // expectedResourceAuditJavaObject.setDesc(auditDesc); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - } - - @Test - public void checkInvariantUuidIsImmutable() throws Exception { - // choose the user to create resource - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - String invariantUuidDefinedByUser = "!!!!!!!!!!!!!!!!!!!!!!!!"; - resourceDetails.setInvariantUUID(invariantUuidDefinedByUser); - String resourceName = resourceDetails.getName(); - resourceDetails.setTags(Arrays.asList(resourceName, resourceName, resourceName, resourceName, "tag2", "tag2")); - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncUserDetails); - BaseRestUtils.checkStatusCode(createResponse, "create request failed", false, 201); - // validate response - assertNotNull("check response object is not null after create resource", createResponse); - assertNotNull("check error code exists in response after create resource", createResponse.getErrorCode()); - assertEquals("Check response code after create resource", 201, createResponse.getErrorCode().intValue()); - - Resource resourceCreation = ResponseParser.convertResourceResponseToJavaObject(createResponse.getResponse()); - String invariantUUIDcreation = resourceCreation.getInvariantUUID(); - // validate response - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - ResourceValidationUtils.validateResp(createResponse, resourceRespJavaObject); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncUserDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(resourceGetResponse); - Resource resourceGetting = ResponseParser - .convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - String invariantUUIDgetting = resourceGetting.getInvariantUUID(); - assertEquals(invariantUUIDcreation, invariantUUIDgetting); - - // Update resource with new invariant UUID - RestResponse restResponseUpdate = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncUserDetails, - resourceDetails.getUniqueId()); - BaseRestUtils.checkSuccess(restResponseUpdate); - Resource updatedResource = ResponseParser.convertResourceResponseToJavaObject(restResponseUpdate.getResponse()); - String invariantUUIDupdating = updatedResource.getInvariantUUID(); - assertEquals(invariantUUIDcreation, invariantUUIDupdating); - - // Do checkin - RestResponse restResponseCheckin = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(restResponseCheckin); - Resource checkinResource = ResponseParser - .convertResourceResponseToJavaObject(restResponseCheckin.getResponse()); - String invariantUUIDcheckin = checkinResource.getInvariantUUID(); - String version = checkinResource.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcheckin); - assertEquals(version, "0.1"); - - // Do checkout - RestResponse restResponseCheckout = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - BaseRestUtils.checkSuccess(restResponseCheckout); - Resource ResourceResource = ResponseParser - .convertResourceResponseToJavaObject(restResponseCheckout.getResponse()); - String invariantUUIDcheckout = ResourceResource.getInvariantUUID(); - version = ResourceResource.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcheckout); - assertEquals(version, "0.2"); - - // do certification request - RestResponse restResponseCertificationRequest = LifecycleRestUtils.changeResourceState(resourceDetails, - sdncUserDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - BaseRestUtils.checkSuccess(restResponseCertificationRequest); - Resource certificationRequestResource = ResponseParser - .convertResourceResponseToJavaObject(restResponseCertificationRequest.getResponse()); - String invariantUUIDcertificationRequest = certificationRequestResource.getInvariantUUID(); - version = certificationRequestResource.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcertificationRequest); - assertEquals(version, "0.2"); - - // start certification - RestResponse restResponseStartCertification = LifecycleRestUtils.changeResourceState(resourceDetails, - sdncUserDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - BaseRestUtils.checkSuccess(restResponseStartCertification); - Resource startCertificationRequestResource = ResponseParser - .convertResourceResponseToJavaObject(restResponseStartCertification.getResponse()); - String invariantUUIDStartCertification = startCertificationRequestResource.getInvariantUUID(); - version = startCertificationRequestResource.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDStartCertification); - assertEquals(version, "0.2"); - - // certify - RestResponse restResponseCertify = LifecycleRestUtils.changeResourceState(resourceDetails, sdncUserDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - BaseRestUtils.checkSuccess(restResponseCertify); - Resource certifyResource = ResponseParser - .convertResourceResponseToJavaObject(restResponseCertify.getResponse()); - String invariantUUIDcertify = certifyResource.getInvariantUUID(); - version = certifyResource.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcertify); - assertEquals(version, "1.0"); - - } - - // US672129 BENNY - - private void getResourceValidateInvariantUuid(String resourceUniqueId, String invariantUUIDcreation) - throws Exception { - RestResponse getResource = ResourceRestUtils.getResource(ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER), - resourceUniqueId); - BaseRestUtils.checkSuccess(getResource); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - assertEquals(invariantUUIDcreation, resource.getInvariantUUID()); - } - - @Test - public void resourceInvariantUuid() throws Exception { - - User designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - User testerUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResourceByType("VF200", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, designerUser.getUserId(), ResourceTypeEnum.VF.toString()); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("newtestservice1", - ServiceCategoriesEnum.MOBILITY, designerUser.getUserId()); - - // ResourceReqDetails resourceDetails = - // ElementFactory.getDefaultResource(); - resourceDetails.setInvariantUUID("kokomoko"); - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, designerUser); - assertEquals("Check response code after create resource", BaseRestUtils.STATUS_CODE_CREATED, - createResponse.getErrorCode().intValue()); - Resource resource = ResponseParser.parseToObjectUsingMapper(createResponse.getResponse(), Resource.class); - String invariantUUIDcreation = resource.getInvariantUUID(); // generated - // when the - // component - // is - // created - // and never - // changed - // get resource and verify InvariantUuid is not changed - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - - // Update resource with new invariant UUID - resourceDetails.setInvariantUUID("1234567890"); - RestResponse updateResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, designerUser, - resourceDetails.getUniqueId()); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, - updateResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - - // checkIn resource - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - - // checkIn resource - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - // certification request - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - // start certification - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - // certify - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getResourceValidateInvariantUuid(resource.getUniqueId(), invariantUUIDcreation); - // update resource - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - resourceDetails.setDescription("updatedDescription"); - resourceDetails.setVendorRelease("1.2.3.4"); - updateResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, designerUser, - resourceDetails.getUniqueId()); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, updateResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // certification request - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // checkout resource - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // certification request - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - // start certification - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // cancel certification - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, - LifeCycleStatesEnum.CANCELCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // start certification - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // failure - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, testerUser, - LifeCycleStatesEnum.FAILCERTIFICATION); - assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // upload artifact - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultArtifact(); - ArtifactRestUtils.addInformationalArtifactToResource(artifactDetails, designerUser, - resourceDetails.getUniqueId()); - assertEquals(STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - // checkIn resource - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, designerUser, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - // create instance - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetails); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, designerUser, serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_CREATED, - createResourceInstanceResponse.getErrorCode().intValue()); - getResourceValidateInvariantUuid(resourceDetails.getUniqueId(), invariantUUIDcreation); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CustomizationUUIDTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CustomizationUUIDTest.java deleted file mode 100644 index cd87ea5265..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/CustomizationUUIDTest.java +++ /dev/null @@ -1,433 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.model.ArtifactDefinition; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.ComponentInstanceProperty; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.testng.annotations.Test; - -public class CustomizationUUIDTest extends ComponentBaseTest { - - @Rule - public static TestName name = new TestName(); - - public CustomizationUUIDTest() { - super(name, CustomizationUUIDTest.class.getName()); - } - - @Test(enabled = true) - public void resourceCustomUUIDTestUpdateMeta() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource in checkin status - Resource resource1 = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - RestResponse checkinState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // create instance 1 - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(resource1); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci1 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci1.getCustomizationUUID()); - String ci1CustUUID = ci1.getCustomizationUUID(); - - // get service with 1 instance - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - - // change name of instance 1 and check custom UUID - String newCi1Name = "newCi1Name"; - ci1.setName(newCi1Name); - RestResponse updateComponentInstance = ComponentInstanceRestUtils.updateComponentInstance(ci1, sdncModifierDetails, service.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(updateComponentInstance); - ComponentInstance ci1AfterChange = ResponseParser.parseToObjectUsingMapper(updateComponentInstance.getResponse(), ComponentInstance.class); - - // must be different - assertFalse(ci1.getCustomizationUUID().equals(ci1AfterChange.getCustomizationUUID())); - - // change position of instance 1 and check UUID - ci1.setPosX("151"); - ci1.setPosY("20"); - updateComponentInstance = ComponentInstanceRestUtils.updateComponentInstance(ci1, sdncModifierDetails, service.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(updateComponentInstance); - ci1AfterChange = ResponseParser.parseToObjectUsingMapper(updateComponentInstance.getResponse(), ComponentInstance.class); - // must be same - assertTrue(ci1.getCustomizationUUID().equals(ci1AfterChange.getCustomizationUUID())); - } - - @Test(enabled = true) - public void resourceCustomUUIDPropertyTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource - Resource resource1 = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - RestResponse checkinState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // 2 create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // create instance - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(resource1); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci1 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci1.getCustomizationUUID()); - String ci1CustUUID = ci1.getCustomizationUUID(); - - // get service with 1 instance - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - - // instance property values - Map<String, List<ComponentInstanceProperty>> componentInstancesProperties = service.getComponentInstancesProperties(); - assertNotNull(componentInstancesProperties); - List<ComponentInstanceProperty> listProps = componentInstancesProperties.get(ci1.getUniqueId()); - assertNotNull(listProps); - - ComponentInstanceProperty updatedInstanceProperty = null; - for (ComponentInstanceProperty cip : listProps) { - if (cip.getType().equals("string")) { - updatedInstanceProperty = cip; - break; - } - } - assertNotNull(updatedInstanceProperty); - updatedInstanceProperty.setValue("newValue"); - - RestResponse updatePropRes = ComponentInstanceRestUtils.updatePropertyValueOnResourceInstance(service, ci1, sdncModifierDetails, updatedInstanceProperty); - BaseRestUtils.checkSuccess(updatePropRes); - - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - ComponentInstance ciAfterUpdateProp = componentInstances.get(0); - - assertFalse(ci1.getCustomizationUUID().equals(ciAfterUpdateProp.getCustomizationUUID())); - } - - @Test(enabled = true) - public void resourceCustomUUIDChangeVersionTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource in checkin status - Resource resource1 = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - RestResponse checkinState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // create instance 1 - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(resource1); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci1 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci1.getCustomizationUUID()); - String ci1CustUUID = ci1.getCustomizationUUID(); - - // create 0.2 version of resource( check out and check in) - RestResponse checkoutState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKOUT); - BaseRestUtils.checkSuccess(checkoutState); - resource1 = ResponseParser.parseToObjectUsingMapper(checkoutState.getResponse(), Resource.class); - assertNotNull(resource1); - - checkinState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // change version of instance - RestResponse changeComponentInstanceVersion = ComponentInstanceRestUtils.changeComponentInstanceVersion(service, ci1, resource1, sdncModifierDetails); - BaseRestUtils.checkSuccess(changeComponentInstanceVersion); - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - assertFalse(ci1CustUUID.equals(componentInstances.get(0).getCustomizationUUID())); - - } - - @Test(enabled = true) - public void resourceCustomUUIDChangeArtifactsTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource in checkin status - Resource resource1 = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - RestResponse checkinState = LifecycleRestUtils.changeComponentState(resource1, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // create instance 1 - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(resource1); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci1 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci1.getCustomizationUUID()); - String lastUUID = ci1.getCustomizationUUID(); - - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(1, componentInstances.size()); - ComponentInstance ci = componentInstances.get(0); - Map<String, ArtifactDefinition> deploymentArtifacts = ci.getDeploymentArtifacts(); - assertNotNull(deploymentArtifacts); - // find artifact for update - ArtifactDefinition artifactForUpdate = null; - for (ArtifactDefinition ad : deploymentArtifacts.values()) { - if (ad.getArtifactType().equals("HEAT_ENV")) { - artifactForUpdate = ad; - break; - } - } - - assertNotNull(artifactForUpdate); - // update heat env on instance - RestResponse updateArtifact = ArtifactRestUtils.updateDeploymentArtifactToRI(artifactForUpdate, sdncModifierDetails, ci.getUniqueId(), service.getUniqueId()); - BaseRestUtils.checkSuccess(updateArtifact); - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertFalse(lastUUID.equals(componentInstances.get(0).getCustomizationUUID())); - lastUUID = componentInstances.get(0).getCustomizationUUID(); - - // add artifact to instance - ArtifactReqDetails artifactDetails = ElementFactory.getDefaultArtifact(); - RestResponse addArtifactToResourceInstance = ArtifactRestUtils.addArtifactToResourceInstance(artifactDetails, sdncModifierDetails, ci.getUniqueId(), service.getUniqueId()); - BaseRestUtils.checkSuccess(addArtifactToResourceInstance); - ArtifactDefinition artifactDef = ResponseParser.parseToObjectUsingMapper(addArtifactToResourceInstance.getResponse(), ArtifactDefinition.class); - assertNotNull(artifactDef); - - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - - componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertFalse(lastUUID.equals(componentInstances.get(0).getCustomizationUUID())); - lastUUID = componentInstances.get(0).getCustomizationUUID(); - - //update artifact - //not supported now!!!!! -// artifactDef.setDescription("new description"); -// RestResponse updateArtifactRes = ArtifactRestUtils.updateArtifactToResourceInstance(artifactDef, sdncModifierDetails, ci.getUniqueId(), service.getUniqueId()); -// BaseRestUtils.checkSuccess(updateArtifactRes); -// artifactDef = ResponseParser.parseToObjectUsingMapper(addArtifactToResourceInstance.getResponse(), ArtifactDefinition.class); -// assertNotNull(artifactDef); -// -// getService = ServiceRestUtils.getService(service.getUniqueId()); -// BaseRestUtils.checkSuccess(getService); -// service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); -// -// componentInstances = service.getComponentInstances(); -// assertNotNull(componentInstances); -// assertFalse(lastUUID.equals(componentInstances.get(0).getCustomizationUUID())); -// lastUUID = componentInstances.get(0).getCustomizationUUID(); -// -// //delete artifact -// RestResponse deleteArtifactRes = ArtifactRestUtils.deleteArtifactFromResourceInstance (artifactDef, sdncModifierDetails, ci.getUniqueId(), service.getUniqueId()); -// BaseRestUtils.checkSuccess(deleteArtifactRes); -// getService = ServiceRestUtils.getService(service.getUniqueId()); -// BaseRestUtils.checkSuccess(getService); -// service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); -// -// componentInstances = service.getComponentInstances(); -// assertNotNull(componentInstances); -// assertFalse(lastUUID.equals(componentInstances.get(0).getCustomizationUUID())); - } - - @Test(enabled = true) - public void resourceCustomUUIDRelationTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // create resource in checkin status - Resource resource = createVfFromCSAR(sdncModifierDetails, "csar_1"); - - RestResponse checkinState = LifecycleRestUtils.changeComponentState(resource, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(checkinState); - - // create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService("ciNewtestservice1", ServiceCategoriesEnum.MOBILITY, sdncModifierDetails.getUserId()); - RestResponse createServiceResponse = ServiceRestUtils.createService(serviceDetails, sdncModifierDetails); - ResourceRestUtils.checkCreateResponse(createServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(createServiceResponse.getResponse(), Service.class); - - // create instance 1 - ComponentInstanceReqDetails componentInstanceDetails = ElementFactory.getComponentInstance(resource); - RestResponse createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci1 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci1.getCustomizationUUID()); - String ci1LastUUID = ci1.getCustomizationUUID(); - - // create instance 2 - createComponentInstance = ComponentInstanceRestUtils.createComponentInstance(componentInstanceDetails, sdncModifierDetails, service); - ResourceRestUtils.checkCreateResponse(createComponentInstance); - - ComponentInstance ci2 = ResponseParser.parseToObjectUsingMapper(createComponentInstance.getResponse(), ComponentInstance.class); - assertNotNull(ci2.getCustomizationUUID()); - String ci2LastUUID = ci2.getCustomizationUUID(); - - // get service with 2 instances - RestResponse getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - List<ComponentInstance> componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - assertEquals(2, componentInstances.size()); - - ComponentInstance ciFrom = componentInstances.get(0); - ComponentInstance ciTo = componentInstances.get(1); - - Map<String, List<RequirementDefinition>> requirements = ciFrom.getRequirements(); - assertNotNull(requirements); - List<RequirementDefinition> listReq = requirements.get("tosca.capabilities.network.Bindable"); - assertNotNull(listReq); - RequirementDefinition req = listReq.get(0); - - - Map<String, List<CapabilityDefinition>> capabilities = ciTo.getCapabilities(); - assertNotNull(capabilities); - List<CapabilityDefinition> listCap = capabilities.get("tosca.capabilities.network.Bindable"); - assertNotNull(listCap); - CapabilityDefinition cap = listCap.get(0); - - List<CapabilityDefinition> capList = new ArrayList<>(); - capList.add(cap); - List<RequirementDefinition> reqList = new ArrayList<>(); - reqList.add(req); - - RequirementCapabilityRelDef relation = ElementFactory.getReqCapRelation(ciFrom.getUniqueId(),ciTo.getUniqueId(), req.getOwnerId(), cap.getOwnerId(), cap.getType(), req.getName(), capList, reqList ); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(relation, sdncModifierDetails,service.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - - for ( ComponentInstance ci : componentInstances){ - if ( ci.getUniqueId().equals(ci1.getUniqueId()) ){ - assertFalse( ci1LastUUID.equals(ci.getCustomizationUUID()) ); - ci1LastUUID = ci.getCustomizationUUID(); - }else{ - assertFalse( ci2LastUUID.equals(ci.getCustomizationUUID()) ); - ci2LastUUID = ci.getCustomizationUUID(); - } - } - associateInstances = ComponentInstanceRestUtils.dissociateInstances(relation, sdncModifierDetails,service.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - - getService = ServiceRestUtils.getService(service.getUniqueId()); - BaseRestUtils.checkSuccess(getService); - service = ResponseParser.parseToObjectUsingMapper(getService.getResponse(), Service.class); - componentInstances = service.getComponentInstances(); - assertNotNull(componentInstances); - - for ( ComponentInstance ci : componentInstances){ - if ( ci.getUniqueId().equals(ci1.getUniqueId()) ){ - assertFalse( ci1LastUUID.equals(ci.getCustomizationUUID()) ); - }else{ - assertFalse( ci2LastUUID.equals(ci.getCustomizationUUID()) ); - } - } - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetAllResourceVersions.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetAllResourceVersions.java deleted file mode 100644 index a3372098a0..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetAllResourceVersions.java +++ /dev/null @@ -1,580 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; - -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class GetAllResourceVersions extends ComponentBaseTest { - - private static Logger logger = LoggerFactory.getLogger(GetAllResourceVersions.class.getName()); - protected User designerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - protected ResourceReqDetails resourceDetails; - - public static TestName name = new TestName(); - - public GetAllResourceVersions() { - super(name, GetAllResourceVersions.class.getName()); - - } - - //// NEW - - protected void deleteAllVersionOfResource() throws Exception { - RestResponse response = null; - - String[] versions = { "0.1", "0.2", "0.3", "0.4", "0.5", "0.6", "1.0", "1.1", "1.2", "1.3", "1.4", "1.5", "2.0", - "2.1", "2.2", "2.3", "2.4", "2.5", "3.0", "4.0", "4.1" }; - - for (String version : versions) { - - response = ResourceRestUtils.deleteResourceByNameAndVersion(designerDetails, - resourceDetails.getName().toUpperCase(), version); - AssertJUnit.assertTrue("delete request returned status:" + response.getErrorCode(), - response.getErrorCode() == 204 || response.getErrorCode() == 404); - - response = ResourceRestUtils.deleteResourceByNameAndVersion(designerDetails, resourceDetails.getName(), - version); - AssertJUnit.assertTrue("delete request returned status:" + response.getErrorCode(), - response.getErrorCode() == 204 || response.getErrorCode() == 404); - - } - } - - @BeforeMethod - public void init() throws Exception { - resourceDetails = defineResourse(); - deleteAllVersionOfResource(); - - } - - @AfterMethod - public void endOfTests() throws Exception { - deleteAllVersionOfResource(); - } - - protected ResourceReqDetails defineResourse() { - String resourceName = "cisco4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - // String category = ServiceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, null, - derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getCategory(), - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getSubCategory()); - - return resourceDetails; - } - - @Test - public void getResourceAllVersions_version15() throws Exception { - // create resource - Map<String, String> origVersionsMap = new HashMap<String, String>(); - RestResponse restResponse = createResource(designerDetails, resourceDetails); - AssertJUnit.assertTrue("create request returned status:" + restResponse.getErrorCode(), - restResponse.getErrorCode() == 201); - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - // change resource version to 1.5 - for (int x = 0; x < 5; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - AssertJUnit.assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - protected RestResponse createResource(User sdncModifierDetails, ResourceReqDetails resourceDetails) - throws Exception { - // clean ES DB - DbUtils.cleanAllAudits(); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - AssertJUnit.assertNotNull("check response object is not null after create resource", restResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", - restResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create resource", 201, - restResponse.getErrorCode().intValue()); - - return restResponse; - } - - @Test - public void getResourceAllVersions_version05() throws Exception { - - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - // change resource version to 0.5 - RestResponse checkoutResource; - - logger.debug("Changing resource life cycle "); - for (int x = 0; x < 4; x++) { - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - } - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_version01() throws Exception { - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_version25() throws Exception { - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - assertTrue("create request returned status:" + restResponse.getErrorCode(), restResponse.getErrorCode() == 201); - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // resource version 1.0 - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - // change resource version to 1.5 - for (int x = 0; x < 5; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // resource version 2.0 - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - // change resource version to 2.5 - for (int x = 0; x < 5; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_ReadyForCertification_version05() throws Exception { - Map<String, String> origVersionsMap = new HashMap<String, String>(); - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - assertTrue("create request returned status:" + restResponse.getErrorCode(), restResponse.getErrorCode() == 201); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - } - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_CertifactionInProgress_version05() throws Exception { - Map<String, String> origVersionsMap = new HashMap<String, String>(); - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - assertTrue("create request returned status:" + restResponse.getErrorCode(), restResponse.getErrorCode() == 201); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - } - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_Certified_version10() throws Exception { - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - assertTrue("create request returned status:" + restResponse.getErrorCode(), restResponse.getErrorCode() == 201); - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - - } - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_Certified_version20() throws Exception { - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - - // create resource - RestResponse restResponse = createResource(designerDetails, resourceDetails); - assertTrue("create request returned status:" + restResponse.getErrorCode(), restResponse.getErrorCode() == 201); - String resourceName = resourceDetails.getName(); - // resourceUtils.addResourceMandatoryArtifacts(designerDetails, - // restResponse); - - // change resource version to 0.5 - RestResponse checkoutResource; - for (int x = 0; x < 4; x++) { - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // get to version 1.0 - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - // change resource version to 1.5 - for (int x = 0; x < 4; x++) { - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, designerDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, - checkoutResource.getErrorCode().intValue()); - } - - // get to version 1.0 - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, - resourceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - origVersionsMap.put(resourceDetails.getVersion(), resourceDetails.getUniqueId()); - - // validate get response - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, - resourceDetails.getUniqueId()); - Resource res = ResponseParser.convertResourceResponseToJavaObject(resourceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void getResourceAllVersions_ResourceNotFound() throws Exception { - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(designerDetails, "123456789"); - assertEquals("Check response code after checkout resource", 404, resourceGetResponse.getErrorCode().intValue()); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetLeftPaletteTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetLeftPaletteTest.java deleted file mode 100644 index b6d9058c92..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetLeftPaletteTest.java +++ /dev/null @@ -1,193 +0,0 @@ -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.Arrays; - -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterClass; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.Test; - -/** - * Created by chaya on 6/15/2017. - */ -public class GetLeftPaletteTest extends ComponentBaseTest { - - private static Logger logger = LoggerFactory.getLogger(GetLeftPaletteTest.class.getName()); - protected User designerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected ResourceReqDetails vlResourceDetails; - protected ResourceReqDetails cpResourceDetails; - protected ResourceReqDetails vfcResourceDetails; - protected ResourceReqDetails vfcmtResourceDetails; - protected ResourceReqDetails vfResourceDetails; - - - public static TestName name = new TestName(); - - public GetLeftPaletteTest() { - super(name, GetLeftPaletteTest.class.getName()); - } - - @BeforeClass - public void setUp() throws Exception { - // create VL - vlResourceDetails = createResource(vlResourceDetails, "vlRes", ResourceTypeEnum.VL); - checkInResource(vlResourceDetails); - - // create CP - cpResourceDetails = createResource(cpResourceDetails, "cpRes", ResourceTypeEnum.CP); - checkInResource(cpResourceDetails); - - // create VFC - vfcResourceDetails = createResource(vfcResourceDetails, "vfcRes", ResourceTypeEnum.VFC); - checkInResource(vfcResourceDetails); - - // create VFCMT - vfcmtResourceDetails = createResource(vfcmtResourceDetails, "vfcmtRes", ResourceTypeEnum.VFCMT); - checkInResource(vfcmtResourceDetails); - - // create VF - vfResourceDetails = createResource(vfResourceDetails, "vfRes", ResourceTypeEnum.VF); - checkInResource(vfResourceDetails); - } - - - - @Test - public void testGetLeftPaletteForPNF() throws IOException { - - RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "PNF"); - assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(), - getResourceLatestVersionResponse.getErrorCode() == 200); - - String json = getResourceLatestVersionResponse.getResponse(); - JSONArray jsonResp = (JSONArray) JSONValue.parse(json); - - AssertJUnit.assertTrue("check vlResource is in response", - isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertTrue("check cpResource is in response", - isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfcResource is not in response", - isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfResource is not in response", - isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfcmtResource is not in response", - isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp)); - - } - - @Test - public void testGetLeftPaletteForVF() throws IOException { - - RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "VF"); - assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(), - getResourceLatestVersionResponse.getErrorCode() == 200); - - String json = getResourceLatestVersionResponse.getResponse(); - JSONArray jsonResp = (JSONArray) JSONValue.parse(json); - - AssertJUnit.assertTrue("check vlResource is in response", - isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertTrue("check cpResource is in response", - isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertTrue("check vfcResource is not in response", - isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfResource is not in response", - isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfcmtResource is not in response", - isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp)); - - } - - @Test - public void testGetLeftPaletteForService() throws IOException { - - RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionListMetadata(designerDetails, "SERVICE"); - assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(), - getResourceLatestVersionResponse.getErrorCode() == 200); - - String json = getResourceLatestVersionResponse.getResponse(); - JSONArray jsonResp = (JSONArray) JSONValue.parse(json); - - AssertJUnit.assertTrue("check vlResource is in response", - isComponentInArray(vlResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertTrue("check cpResource is in response", - isComponentInArray(cpResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfcResource is not in response", - isComponentInArray(vfcResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertTrue("check vfResource is not in response", - isComponentInArray(vfResourceDetails.getUniqueId(), jsonResp)); - - AssertJUnit.assertFalse("check vfcmtResource is not in response", - isComponentInArray(vfcmtResourceDetails.getUniqueId(), jsonResp)); - - } - - private ResourceReqDetails createResource(ResourceReqDetails resDetails, String name, ResourceTypeEnum resType) throws Exception { - resDetails = new ResourceReqDetails(name, "desc",Arrays.asList(name), "Generic", Arrays.asList("tosca.nodes.Root"), "c", "1", "111", "myIcon", resType.name()); - resDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS.getCategory(), - ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS.getSubCategory()); - RestResponse response = ResourceRestUtils.createResource(resDetails, designerDetails); - assertTrue("response code is not 200, returned :" + response.getErrorCode(), - response.getErrorCode() == 201); - resDetails.setUniqueId(ResponseParser.getUniqueIdFromResponse(response)); - return resDetails; - } - - private void checkInResource(ResourceReqDetails resDetails) throws IOException { - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resDetails, designerDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("check in operation failed", 200, checkInResponse.getErrorCode().intValue()); - - } - - protected boolean isComponentInArray(String id, JSONArray component) { - for (int i = 0; i < component.size(); i++) { - JSONObject jobject = (JSONObject) component.get(i); - if (jobject.get("uniqueId").toString().equals(id.toLowerCase())) { - return true; - } - } - return false; - } - - @AfterClass - public void tearDown() throws IOException { - ResourceRestUtils.deleteResource(vlResourceDetails.getUniqueId(), designerDetails.getUserId()); - ResourceRestUtils.deleteResource(cpResourceDetails.getUniqueId(), designerDetails.getUserId()); - ResourceRestUtils.deleteResource(vfcResourceDetails.getUniqueId(), designerDetails.getUserId()); - ResourceRestUtils.deleteResource(vfcmtResourceDetails.getUniqueId(), designerDetails.getUserId()); - ResourceRestUtils.deleteResource(vfResourceDetails.getUniqueId(), designerDetails.getUserId()); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetResourceNotAbstractApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetResourceNotAbstractApiTest.java deleted file mode 100644 index cdfd3ec650..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/GetResourceNotAbstractApiTest.java +++ /dev/null @@ -1,326 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.execute.imports.ImportGenericResourceCITest; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.Test; - -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; - -public class GetResourceNotAbstractApiTest extends ComponentBaseTest { - - private static Logger logger = LoggerFactory.getLogger(ComponentBaseTest.class.getName()); - protected static final int STATUS_CODE_GET_SUCCESS = 200; - - protected Config config = Config.instance(); - protected String contentTypeHeaderData = "application/json"; - protected String acceptHeaderDate = "application/json"; - - @Rule - public static TestName name = new TestName(); - - public GetResourceNotAbstractApiTest() { - super(name, GetResourceNotAbstractApiTest.class.getName()); - } - - @Test - public void getNotAbstractResourceList() throws Exception { - - // remove all the not abstract resources - // Map<NormativeTypes, Boolean> originalState = - // ImportResourceCITest.removeAllNormativeTypeResources(); - - // import all the default not abstract resources - // ImportGenericResourceCITest.importAllNormativeTypesResources(UserRoleEnum.ADMIN); - - // Get not abstract resources - RestResponse getResourceNotAbstarctResponse = getNotAbstractResources(); - // Check that received 200. - assertEquals("Check response code after get abstract resources", STATUS_CODE_GET_SUCCESS, - getResourceNotAbstarctResponse.getErrorCode().intValue()); - // Verify that all the resources not abstract - assertTrue("One or more resources are abstract", isAllResourcesNotAbstract(getResourceNotAbstarctResponse)); - // Verify that all the resources are certified - assertTrue("Not all the resources are certified", isAllResourcesCertified(getResourceNotAbstarctResponse)); - - String objectStorageUid = "ObjectStorage"; - String computeUid = "Compute"; - String blockStorageUid = "BlockStorage"; - String loadBalancerUid = "LoadBalancer"; - // String portUid = "tosca.nodes.Network.Port"; - String portUid = "Port"; - String networkUid = "Network"; - String databaseUid = "Database"; - - // Compare expected list of abstract resources to actual list of - // abstract resources. - List<String> expectedNotAbstractResourcesUniqueIdArray = new ArrayList<String>(Arrays.asList(computeUid, - databaseUid, objectStorageUid, blockStorageUid, loadBalancerUid, portUid, networkUid)); - - List<String> actualNotAbstarctResourcesUniqueIdArray = restResponseToListByHeader( - getResourceNotAbstarctResponse, "name"); - - // Collections.sort(actualNotAbstarctResourcesUniqueIdArray); - // Collections.sort(expectedNotAbstractResourcesUniqueIdArray); - - List<String> toFind = new ArrayList<>(); - toFind.add(objectStorageUid); - toFind.add(computeUid); - toFind.add(blockStorageUid); - toFind.add(loadBalancerUid); - toFind.add(portUid); - - boolean removeAll = toFind.removeAll(actualNotAbstarctResourcesUniqueIdArray); - logger.debug("Cannot find resources {}",toFind.toString()); - - for (String expectedResource : expectedNotAbstractResourcesUniqueIdArray) { - if (false == actualNotAbstarctResourcesUniqueIdArray.contains(expectedResource)) { - // System.out.println("Not found abstract resource " + - // expectedResource); - } - } - - assertTrue( - "Expected abstract resources list: " + expectedNotAbstractResourcesUniqueIdArray.toString() - + " Actual: " + actualNotAbstarctResourcesUniqueIdArray.toString(), - actualNotAbstarctResourcesUniqueIdArray.containsAll(expectedNotAbstractResourcesUniqueIdArray)); - - /* - * java.lang.AssertionError: Expected abstract resources list: - * [tosca.nodes.Compute, tosca.nodes.ObjectStorage, - * tosca.nodes.BlockStorage, tosca.nodes.LoadBalancer, - * tosca.nodes.Network.Port] Actual: [resourceforproperty216, - * tosca.nodes.Compute, tosca.nodes.Database, resourceforproperty217, - * resourceforproperty217, tosca.nodes.ObjectStorage, - * tosca.nodes.BlockStorage, tosca.nodes.LoadBalancer, - * tosca.nodes.network.Port, tosca.nodes.network.Network, - * resourceforproperty217, resourceforproperty217, - * resourceforproperty217, resourceforproperty217, - * resourceforproperty217, resourceforproperty217, - * resourceforproperty217, resourceforproperty217, - * resourceforproperty217, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317, - * resourceforproperty317, resourceforproperty317] - */ - - // Create resource (not certified) - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - String resourceName = "TestResource"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - String category = ServiceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.root"); - String vendorName = "Oracle"; - String vendorRelease = "1.0"; - String contactId = "Peter"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - // assertEquals("Check response code after create user", 201, - // restResponse.getErrorCode().intValue()); - - // Get not abstract resources - getResourceNotAbstarctResponse = getNotAbstractResources(); - // Check that received 200. - assertEquals("Check response code after get abstract resources", STATUS_CODE_GET_SUCCESS, - getResourceNotAbstarctResponse.getErrorCode().intValue()); - // Verify that all the resources not abstract - assertTrue("One or more resources are abstract", isAllResourcesNotAbstract(getResourceNotAbstarctResponse)); - // Verify that all the resources are certified - assertTrue("Not all the resources are certified", isAllResourcesCertified(getResourceNotAbstarctResponse)); - - // Compare expected list of abstract resources to actual list of - // abstract resources. - // expectedNotAbstractResourcesUniqueIdArray = new - // ArrayList<String>(Arrays.asList("tosca.nodes.compute.1.0", - // "tosca.nodes.objectstorage.1.0", "tosca.nodes.blockstorage.1.0", - // "tosca.nodes.loadbalancer.1.0", "tosca.nodes.network.port.1.0")); - - // actualNotAbstarctResourcesUniqueIdArray = - // restResponseToListByHeader(getResourceNotAbstarctResponse, - // "uniqueId"); - - actualNotAbstarctResourcesUniqueIdArray = restResponseToListByHeader(getResourceNotAbstarctResponse, "name"); - - Collections.sort(actualNotAbstarctResourcesUniqueIdArray); - Collections.sort(expectedNotAbstractResourcesUniqueIdArray); - - for (String expectedResource : expectedNotAbstractResourcesUniqueIdArray) { - if (false == actualNotAbstarctResourcesUniqueIdArray.contains(expectedResource)) { - // System.out.println("Not found abstract resource " + - // expectedResource); - } - } - assertTrue( - "Expected abstract resources list: " + expectedNotAbstractResourcesUniqueIdArray.toString() - + " Actual: " + actualNotAbstarctResourcesUniqueIdArray.toString(), - actualNotAbstarctResourcesUniqueIdArray.containsAll(expectedNotAbstractResourcesUniqueIdArray)); - // assertTrue("Expected abstract resources list: "+ - // expectedNotAbstractResourcesUniqueIdArray.toString()+ " Actual: - // "+actualNotAbstarctResourcesUniqueIdArray.toString(),expectedNotAbstractResourcesUniqueIdArray.equals(actualNotAbstarctResourcesUniqueIdArray)); - - // restore the resources - // ImportResourceCITest.restoreToOriginalState(originalState); - - } - - protected RestResponse getNotAbstractResources() throws Exception { - HttpRequest httpRequest = new HttpRequest(); - - String url = String.format(Urls.GET_ALL_NOT_ABSTRACT_RESOURCES, config.getCatalogBeHost(), - config.getCatalogBePort()); - - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), "cs0008"); - - RestResponse getResourceNotAbstarctResponse = httpRequest.httpSendGet(url, headersMap); - - return getResourceNotAbstarctResponse; - } - - protected List<String> restResponseToListByHeader(RestResponse restResponse, String restResponseHeader) { - JsonElement jelement = new JsonParser().parse(restResponse.getResponse()); - JsonArray jsonArray = jelement.getAsJsonArray(); - - List<String> restResponseArray = new ArrayList<>(); - - for (int i = 0; i < jsonArray.size(); i++) { - JsonObject jobject = (JsonObject) jsonArray.get(i); - String header = jobject.get(restResponseHeader).toString(); - header = header.replace("\"", ""); - restResponseArray.add(header); - } - - return restResponseArray; - - } - - protected boolean isAllResourcesNotAbstract(RestResponse restResponse) { - JsonElement jelement = new JsonParser().parse(restResponse.getResponse()); - JsonArray jsonArray = jelement.getAsJsonArray(); - - for (int i = 0; i < jsonArray.size(); i++) { - JsonObject jobject = (JsonObject) jsonArray.get(i); - - if (jobject.get("abstract").getAsBoolean()) { - return false; - } - - } - return true; - - } - - protected boolean isEmptyList(RestResponse restResponse) { - JsonElement jelement = new JsonParser().parse(restResponse.getResponse()); - JsonArray jsonArray = jelement.getAsJsonArray(); - - if (jsonArray.size() == 0) { - return true; - } - return false; - } - - protected boolean isAllResourcesCertified(RestResponse restResponse) { - JsonElement jelement = new JsonParser().parse(restResponse.getResponse()); - JsonArray jsonArray = jelement.getAsJsonArray(); - - String certified = "CERTIFIED"; - String lifecycleState; - - for (int i = 0; i < jsonArray.size(); i++) { - JsonObject jobject = (JsonObject) jsonArray.get(i); - lifecycleState = jobject.get("lifecycleState").getAsString(); - if (!lifecycleState.equals(certified)) { - return false; - } - - } - return true; - } - - @Test(enabled = false) - public void getEmptyNonAbstractResourcesList() throws Exception { - // remove all the not abstract resources - Map<NormativeTypesEnum, Boolean> originalState = ImportGenericResourceCITest.removeAllNormativeTypeResources(); - - // Get not abstract resources - RestResponse getResourceNotAbstarctResponse = getNotAbstractResources(); - // Check that received 200. - assertEquals("Check response code after get abstract resources", STATUS_CODE_GET_SUCCESS, - getResourceNotAbstarctResponse.getErrorCode().intValue()); - // Verify empty list - assertTrue("Received list is not empty", isEmptyList(getResourceNotAbstarctResponse)); - - // restore the resources - // ImportResourceCITest.restoreToOriginalState(originalState); - // import the resources - ImportGenericResourceCITest.importAllNormativeTypesResources(UserRoleEnum.ADMIN); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ResourceApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ResourceApiTest.java deleted file mode 100644 index df8ff58ba8..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ResourceApiTest.java +++ /dev/null @@ -1,371 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; - -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class ResourceApiTest extends ComponentBaseTest { - - protected final String contentTypeHeaderData = "application/json"; - protected final String acceptHeaderDate = "application/json"; - - @Rule - public static TestName name = new TestName(); - - public ResourceApiTest() { - super(name, ResourceApiTest.class.getName()); - } - - // Keep - @Test - public void updateResourceMetadataSuccess() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncModifierDetails.setUserId("jh0003"); - RestResponse restResponse = createResourceForUpdate(sdncModifierDetails); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(restResponse.getResponse()); - - Config config = Utils.getConfig(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - // set resource details - ResourceReqDetails resourceDetails = new ResourceReqDetails(); - resourceDetails.setDescription("updatedDescription"); - ArrayList<String> resourceTags = new ArrayList<String>(); - // Duplicate tags are allowed and should be de-duplicated by the server - // side - resourceTags.add(resourceRespJavaObject.getName()); - resourceTags.add("tag1"); - resourceTags.add("tag1"); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - resourceDetails.setTags(resourceTags); - resourceDetails.addCategoryChain(ResourceCategoryEnum.NETWORK_L2_3_ROUTERS.getCategory(), - ResourceCategoryEnum.NETWORK_L2_3_ROUTERS.getSubCategory()); - resourceDetails.setVendorName("OracleUp"); - resourceDetails.setVendorRelease("1.5Up"); - resourceDetails.setContactId("pe1116"); - - resourceDetails.setIcon(resourceRespJavaObject.getIcon()); - resourceDetails.setName(resourceRespJavaObject.getName()); - resourceDetails.setDerivedFrom(resourceRespJavaObject.getDerivedFrom()); - - // ResourceReqDetails resourceDetails = new - // ResourceReqDetails(resourceName, description, resourceTags, category, - // derivedFrom, vendorName, vendorRelease, contactId, null); - - Gson gson = new Gson(); - String userBodyJson = gson.toJson(resourceDetails); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.UPDATE_RESOURCE_METADATA, config.getCatalogBeHost(), config.getCatalogBePort(), - resourceRespJavaObject.getUniqueId()); - RestResponse updateResourceResponse = http.httpSendByMethod(url, "PUT", userBodyJson, headersMap); - - // resourceDetails.setResourceName(resourceRespJavaObject.getResourceName()); - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, - ResponseParser.convertResourceResponseToJavaObject(updateResourceResponse.getResponse())); - - // Delete resource - deleteResource(resourceRespJavaObject.getUniqueId(), sdncModifierDetails.getUserId()); - - } - - protected void deleteResource(String resourceUniqueId, String httpCspUserId) throws Exception { - RestResponse res = ResourceRestUtils.deleteResource(resourceUniqueId, httpCspUserId); - - // System.out.println("Delete resource was finished with response: " + - // res.getErrorCode()); - } - - protected RestResponse createResourceForUpdate(User sdncModifierDetails) throws Exception { - - ResourceReqDetails resourceDetails = getResourceObj(); - - // create resource - return ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - } - - public ResourceReqDetails getResourceObj() { - // set resource details - String resourceName = "ResourceForUpdate" + (int) (Math.random() * 100); - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - // String category = ResourceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "pe1116"; - String icon = "myICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, null, - derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getCategory(), - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getSubCategory()); - return resourceDetails; - } - - // ------------------------------------------------------------------- - - protected ResourceReqDetails defineResourse_Benny(int n) { - String resourceName = "cisco" + String.valueOf(n); - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add("tag1"); - String category = ServiceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "borderElement"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - return resourceDetails; - } - - @Test - public void getAllAbstractResources() throws Exception { - RestResponse abstractResources = CatalogRestUtils.getAbstractResources(); - - int status = abstractResources.getErrorCode(); - assertTrue(status == 200); - String json = abstractResources.getResponse(); - JSONArray array = (JSONArray) JSONValue.parse(json); - for (Object o : array) { - JSONObject value = (JSONObject) o; - Boolean element = (Boolean) value.get("abstract"); - assertTrue(element); - } - - } - - @Test - public void getAllNotAbstractResources() throws Exception { - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - String url = String.format(Urls.GET_ALL_NOT_ABSTRACT_RESOURCES, config.getCatalogBeHost(), - config.getCatalogBePort()); - HttpGet httpget = new HttpGet(url); - - httpget.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - - httpget.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - - httpget.addHeader(HttpHeaderEnum.USER_ID.getValue(), - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER).getUserId()); - - // System.out.println("Executing request " + - // httpget.getRequestLine()); - CloseableHttpResponse response = httpclient.execute(httpget); - int status = response.getStatusLine().getStatusCode(); - assertTrue(status == 200); - try { - String json = EntityUtils.toString(response.getEntity()); - JSONArray array = (JSONArray) JSONValue.parse(json); - for (Object o : array) { - JSONObject value = (JSONObject) o; - Boolean element = (Boolean) value.get("abstract"); - assertTrue(!element); - } - - } finally { - response.close(); - } - } finally { - httpclient.close(); - } - } - - @Test - public void updateResourceMetadata_methodNotAllowed() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - Config config = Utils.getConfig(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - // set resource details - String resourceName = "ResForUpdate"; - String description = "updatedDescription"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add("tag1"); - resourceTags.add("tag2"); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add("tosca.nodes.root"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - String vendorName = "OracleUp"; - String vendorRelease = "1.5Up"; - String contactId = "pe1117"; - String icon = "myICON.jpgUp"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, - derivedFrom, vendorName, vendorRelease, contactId, icon); - - Gson gson = new Gson(); - String userBodyJson = gson.toJson(resourceDetails); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.UPDATE_RESOURCE_METADATA, config.getCatalogBeHost(), config.getCatalogBePort(), - "NotExistsId"); - - RestResponse updateResourceResponse = http.httpSendByMethod(url, "POST", userBodyJson, headersMap); - - assertNotNull("Check error code exists in response after wrong update resource", - updateResourceResponse.getErrorCode()); - assertEquals("Check error code after update resource", 405, updateResourceResponse.getErrorCode().intValue()); - } - - @Test - public void validateResourceNameTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncModifierDetails.setUserId("jh0003"); - - ResourceReqDetails resourceDetails = getResourceObj(); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - Resource resourceRespJavaObject = ResponseParser - .convertResourceResponseToJavaObject(restResponse.getResponse()); - CloseableHttpClient httpclient = HttpClients.createDefault(); - try { - - // check invalid - String url = String.format(Urls.VALIDATE_RESOURCE_NAME, config.getCatalogBeHost(), - config.getCatalogBePort(), resourceDetails.getName()); - - HttpGet httpget = new HttpGet(url); - - httpget.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - - httpget.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - - httpget.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - // System.out.println("Executing request " + - // httpget.getRequestLine()); - CloseableHttpResponse response = httpclient.execute(httpget); - int status = response.getStatusLine().getStatusCode(); - assertTrue(status == 200); - try { - String json = EntityUtils.toString(response.getEntity()); - JSONObject object = (JSONObject) JSONValue.parse(json); - Boolean element = (Boolean) object.get("isValid"); - assertTrue(!element); - - } finally { - response.close(); - } - // check valid - url = String.format(Urls.VALIDATE_RESOURCE_NAME, config.getCatalogBeHost(), config.getCatalogBePort(), - resourceDetails.getName() + "temp"); - - httpget = new HttpGet(url); - - httpget.addHeader(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - - httpget.addHeader(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - - httpget.addHeader(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - - // System.out.println("Executing request " + - // httpget.getRequestLine()); - response = httpclient.execute(httpget); - status = response.getStatusLine().getStatusCode(); - assertTrue(status == 200); - try { - String json = EntityUtils.toString(response.getEntity()); - JSONObject object = (JSONObject) JSONValue.parse(json); - Boolean element = (Boolean) object.get("isValid"); - assertTrue(element); - - } finally { - response.close(); - } - } finally { - httpclient.close(); - } - - // Delete resource - ResourceRestUtils.deleteResource(resourceDetails, sdncModifierDetails, "0.1"); - - } - - // ------------------------------------------------------------------- - // //Benny Tal - // @Test - // public void createResource_Benny() throws Exception { - // for (int i = 0; i < 100; i++) { - // ResourceReqDetails resourceDetails = defineResourse_Benny(i); - // - // ResourceRestUtils.createResource(resourceDetails, - // UserUtils.getDesignerDetails()); - // // resourceUtils.deleteResource(resourceDetails, - // UserUtils.getDesignerDetails(), "0.1"); - // } - // } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SampleDataProvider.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SampleDataProvider.java deleted file mode 100644 index f4a4fa108a..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SampleDataProvider.java +++ /dev/null @@ -1,41 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import java.io.IOException; - -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.testng.ITestContext; -import org.testng.annotations.DataProvider; - -public class SampleDataProvider { - - @DataProvider - public static Object[][] getResourceByType(ITestContext context) throws IOException, Exception { - return new Object[][] { - { AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true) }, - { AtomicOperationUtils.createResourceByType(ResourceTypeEnum.CP, UserRoleEnum.DESIGNER, true) }, - { AtomicOperationUtils.createResourceByType(ResourceTypeEnum.VL, UserRoleEnum.DESIGNER, true) } }; - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SimultaneousApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SimultaneousApiTest.java deleted file mode 100644 index 3002523ccb..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/SimultaneousApiTest.java +++ /dev/null @@ -1,124 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.annotations.Test; - -public class SimultaneousApiTest extends ComponentBaseTest { - - protected static ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource(); - - @Rule - public static TestName name = new TestName(); - - static String httpCspUserId = "km2000"; - static String userFirstName = "Kot"; - static String userLastName = "Matroskin"; - static String email = "km2000@intl.sdc.com"; - static String role = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getRole(); - - public SimultaneousApiTest() { - super(name, SimultaneousApiTest.class.getName()); - - } - - public static class WorkerThread implements Runnable { - CountDownLatch countDownLatch; - int threadIndex; - - public WorkerThread(int threadIndex, CountDownLatch countDownLatch) { - this.threadIndex = threadIndex; - this.countDownLatch = countDownLatch; - } - - @Override - public void run() { - System.out.println("**** Thread started " + threadIndex); - try { - RestResponse createResource = ResourceRestUtils.createResource(resourceDetails, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - String id = ResponseParser.getUniqueIdFromResponse(createResource); - // System.out.println("**** Thread " + threadIndex + " create - // resource status " + createResource.getErrorCode() + " id = " - // + id + " error " + createResource.getResponse()); - // assertEquals("**** create resource: " + - // createResource.getErrorCode() + " thread " + threadIndex, - // 201, status); - } catch (Exception e) { - // System.out.println("**** Thread " + threadIndex + " exception - // " + e); - } - countDownLatch.countDown(); - // System.out.println("**** Thread finished " + threadIndex); - - } - - // public void run_() { - // System.out.println("**** Thread started " + threadIndex); - // try { - // UserUtils userUtils = new UserUtils(); - // User userDetails = new User(userFirstName, userLastName, - // httpCspUserId, email, role , 0L); - // RestResponse response = - // userUtils.createUserTowardsCatalogBe(userDetails, - // userUtils.getUserDetailesAdmin()); - // System.out.println("**** Thread " + threadIndex + " create resource - // status " + response.getErrorCode() + " response " + - // response.getResponse()); - //// assertEquals("**** create resource: " + - // createResource.getErrorCode() + " thread " + threadIndex, 201, - // status); - // } catch (Exception e) { - // System.out.println("**** Thread " + threadIndex + " exception " + e); - // } - // countDownLatch.countDown(); - // System.out.println("**** Thread finished " + threadIndex); - // - // } - } - - @Test - public void create2Resources() throws InterruptedException { - int threadCount = 5; - CountDownLatch countDownLatch = new CountDownLatch(threadCount); - ExecutorService executor = Executors.newFixedThreadPool(threadCount); - for (int i = 0; i < threadCount; i++) { - Runnable worker = new WorkerThread(i + 1, countDownLatch); - executor.execute(worker); - } - countDownLatch.await(); - // System.out.println(" finished "); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/UpdateResourceMetadataTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/UpdateResourceMetadataTest.java deleted file mode 100644 index 5b68b0fa84..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/UpdateResourceMetadataTest.java +++ /dev/null @@ -1,2301 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.FileNotFoundException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.json.JSONException; -import org.json.JSONObject; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.openecomp.sdc.common.util.ValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -public class UpdateResourceMetadataTest extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(UpdateResourceMetadataTest.class.getName()); - protected List<String> Empty_List = new ArrayList<String>(); - protected String extendedChars; - - protected final String contentTypeHeaderData = "application/json"; - protected final String acceptHeaderDate = "application/json"; - protected final String CHARSET_ISO_8859 = "charset=ISO-8859-1"; - - public static TestName name = new TestName(); - protected User sdncModifierDetails; - protected ResourceReqDetails resourceDetails; - - public UpdateResourceMetadataTest() { - super(name, UpdateResourceMetadataTest.class.getName()); - - } - - public String extendedCharsStringBuilder() throws Exception { - char[] extendedCharsArray = new char[128]; - char ch = 128; - for (int i = 0; i < extendedCharsArray.length - 1; i++) { - extendedCharsArray[i] = ch; - ch++; - } - extendedChars = new String(extendedCharsArray); - return extendedChars; - - } - - @BeforeMethod - public void setup() throws Exception { - sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - resourceDetails = defineResourse(); - - } - - // Keep - @Test - public void UpdateDerivedFromSuccess() throws Exception { - - String oldDerivedFromName = NormativeTypesEnum.ROOT.getNormativeName(); - String newDerivedFromName = NormativeTypesEnum.SOFTWARE_COMPONENT.getNormativeName(); - - // Getting both derived from resources for validation - /* - * RestResponse resourceByNameAndVersion = resourceUtils.getResourceByNameAndVersion(sdncModifierDetails, oldDerivedFromName, "1.0"); assertEquals("Check response code after get database normative", 200, - * resourceByNameAndVersion.getErrorCode().intValue()); Resource databaseNormative = resourceUtils.parseResourceResp(resourceByNameAndVersion); - * - * resourceByNameAndVersion = resourceUtils.getResourceByNameAndVersion(sdncModifierDetails, newDerivedFromName, "1.0"); assertEquals("Check response code after get database normative", 200, - * resourceByNameAndVersion.getErrorCode().intValue()); Resource lbNormative = resourceUtils.parseResourceResp(resourceByNameAndVersion); - */ - - // Derived from set to Database - List<String> derivedFrom = new ArrayList<>(); - derivedFrom.add(oldDerivedFromName); - resourceDetails.setDerivedFrom(derivedFrom); - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - AssertJUnit.assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResource = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - derivedFrom.clear(); - derivedFrom.add(newDerivedFromName); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResource.getUniqueId(), ""); - AssertJUnit.assertEquals("Check response code after create resource", 200, updatedRestResponse.getErrorCode().intValue()); - - } - - protected ResourceReqDetails defineUpdateResourceWithNonUpdatableFields(Resource resourceBeforeUpdate) { - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceBeforeUpdate.getName()); - - updatedResourceDetails.setVersion("mumu"); - updatedResourceDetails.setIsAbstract(true); - updatedResourceDetails.setIsHighestVersion(true); - updatedResourceDetails.setCreatorUserId("df4444"); - updatedResourceDetails.setCreatorFullName("John Doe"); - updatedResourceDetails.setLastUpdaterUserId("gf5646"); - updatedResourceDetails.setLastUpdaterFullName("Viktor Tzoy"); - updatedResourceDetails.setCreationDate(new Long(4444)); - updatedResourceDetails.setLastUpdateDate(new Long("534535")); - updatedResourceDetails.setLifecycleState(LifecycleStateEnum.READY_FOR_CERTIFICATION); - updatedResourceDetails.setCost("6.1"); - updatedResourceDetails.setLicenseType("Installation"); - updatedResourceDetails.setUUID("dfsfsdf"); - return updatedResourceDetails; - } - - public void UpdateResourceNotFoundTest() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - String resourceName = "cisco4"; - // update resource - String description = "updatedDescription"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.MOBILITY.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "newOracle"; - String vendorRelease = "2.5"; - String contactId = "jh0003"; - String icon = "myICON"; - - ResourceReqDetails updatedResourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, derivedFrom, vendorName, vendorRelease, contactId, icon); - updatedResourceDetails.setUniqueId("dummyId"); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, "0.1"); - - // validate response - AssertJUnit.assertNotNull("check response object is not null after update resource", updatedRestResponse); - AssertJUnit.assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after update resource", 404, updatedRestResponse.getErrorCode().intValue()); - // String resourceId = - // UniqueIdBuilder.buildResourceUniqueId(resourceName, "0.1"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), Arrays.asList("dummyId"), updatedRestResponse.getResponse()); - - resourceName = ""; - // resourceId = UniqueIdBuilder.buildResourceUniqueId(resourceName, - // "0.1"); - updatedResourceDetails = defineUpdatedResourse(resourceName); - updatedResourceDetails.setUniqueId("dummyId"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, "0.1"); - AssertJUnit.assertNotNull("check response object is not null after update resource", updatedRestResponse); - AssertJUnit.assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NOT_FOUND.name(), Arrays.asList("dummyId"), updatedRestResponse.getResponse()); - - } - - public char[] getInValidChars() throws Exception { - - char[] extendedCharsArray = new char[59]; - char ch = 1; - for (int i = 0; i < 44; i++) { - extendedCharsArray[i] = ch; - ch++; - } - ch = 58; - for (int i = 44; i < 51; i++) { - extendedCharsArray[i] = ch; - ch++; - } - ch = 91; - for (int i = 51; i < 55; i++) { - extendedCharsArray[i] = ch; - ch++; - } - ch = 123; - for (int i = 55; i < 59; i++) { - extendedCharsArray[i] = ch; - ch++; - } - return extendedCharsArray; - } - - public char[] getTagInValidFormatChars() throws Exception { - // Tag format is the same as defined for "Resource Name" : - // Allowed characters: Alphanumeric (a-zA-Z0-9), space (' '), underscore - // ('_'), dash ('-'), dot ('.') - char[] notValidCharsArray = new char[30]; - char ch = 33; - for (int i = 0; i < 12; i++) { - notValidCharsArray[i] = ch; - ch++; - } - notValidCharsArray[13] = 47; - ch = 58; - for (int i = 14; i < 21; i++) { - notValidCharsArray[i] = ch; - ch++; - } - ch = 91; - for (int i = 21; i < 24; i++) { - notValidCharsArray[i] = ch; - ch++; - } - notValidCharsArray[24] = 96; - ch = 123; - for (int i = 25; i < 30; i++) { - notValidCharsArray[i] = ch; - ch++; - } - return notValidCharsArray; - } - - public void Validation_UpdateWithIncompleteJsonBodyTest() throws Exception { - // init ADMIN user - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // define and create resource - ResourceReqDetails resourceDetails = defineResourse(); - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "0.1"); - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "1.0"); - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "1.1"); - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceId = resourceDetails.getUniqueId(); - resourceDetails.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); - - // build Json Object - JSONObject jsonObject = JsonObjectBuilder(resourceDetails); - - List<String> resource = new ArrayList<>(); - resource.add("Resource"); - - // remove Description - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "description", ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), resource); - // remove Tags - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "tags", ActionStatus.COMPONENT_MISSING_TAGS.name(), Empty_List); - // remove Category - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "category", ActionStatus.COMPONENT_MISSING_CATEGORY.name(), resource); - // remove VendorName - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "vendorName", ActionStatus.MISSING_VENDOR_NAME.name(), Empty_List); - // remove VendorRelease - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "vendorRelease", ActionStatus.MISSING_VENDOR_RELEASE.name(), Empty_List); - // remove AT&T Contact - UpdateAndValidateWithIncompletedJsonBody(sdncModifierDetails, jsonObject, resourceId, "contactId", ActionStatus.COMPONENT_MISSING_CONTACT.name(), resource); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, "0.1"); - // validate response - AssertJUnit.assertNotNull("check response object is not null after get resource", getRestResponse); - AssertJUnit.assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "0.1"); - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "1.0"); - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, resourceDetails.getName(), "1.1"); - } - - // End of validation tests - // /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - - protected ResourceReqDetails defineUpdatedResourse(String resourceName) { - String description = "updatedDescription"; - ArrayList<String> resourceTags = new ArrayList<String>(); - // Duplicate tags are allowed and should be de-duplicated by server side - resourceTags.add(resourceName); - resourceTags.add("tag1"); - resourceTags.add("tag1"); - resourceTags.add("tag2"); - resourceTags.add("tag2"); - String category = ServiceCategoriesEnum.VOIP.getValue(); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName()); - String vendorName = "updatedOracle"; - String vendorRelease = "3.5"; - String contactId = "jh0001"; - String icon = "myUpdatedICON"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, category, derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getCategory(), ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getSubCategory()); - - return resourceDetails; - } - - protected ResourceReqDetails defineResourse() { - String resourceName = "cisco4"; - String description = "description"; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(resourceName); - ArrayList<String> derivedFrom = new ArrayList<String>(); - derivedFrom.add(NormativeTypesEnum.ROOT.getNormativeName());// "tosca.nodes.Root"); - String vendorName = "Oracle"; - String vendorRelease = "1.5"; - String contactId = "jh0003"; - String icon = "objectStorage"; - - ResourceReqDetails resourceDetails = new ResourceReqDetails(resourceName, description, resourceTags, null, derivedFrom, vendorName, vendorRelease, contactId, icon); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getCategory(), ResourceCategoryEnum.GENERIC_INFRASTRUCTURE.getSubCategory()); - - return resourceDetails; - } - - protected RestResponse createResource(User sdncModifierDetails, ResourceReqDetails resourceDetails) throws Exception { - // clean ES DB - DbUtils.cleanAllAudits(); - - // create resource - RestResponse restResponse = ResourceRestUtils.createResource(resourceDetails, sdncModifierDetails); - - // validate response - AssertJUnit.assertNotNull("check response object is not null after create resource", restResponse); - AssertJUnit.assertNotNull("check error code exists in response after create resource", restResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - - return restResponse; - } - - protected RestResponse TryUpdateByAnotherVerb(ResourceReqDetails updatedResourceDetails, User sdncModifierDetails, String uri) throws Exception { - // delete resource - Config config; - RestResponse ResourceResponse; - try { - config = Utils.getConfig(); - Map<String, String> headersMap = new HashMap<String, String>(); - headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), contentTypeHeaderData); - headersMap.put(HttpHeaderEnum.ACCEPT.getValue(), acceptHeaderDate); - headersMap.put(HttpHeaderEnum.USER_ID.getValue(), sdncModifierDetails.getUserId()); - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.UPDATE_RESOURCE_METADATA, config.getCatalogBeHost(), config.getCatalogBePort(), updatedResourceDetails.getName() + ".0.1"); - - if (uri == "GET") { - ResourceResponse = http.httpSendGet(url, headersMap); - } else if (uri == "POST") { - Gson gson = new Gson(); - String userBodyJson = gson.toJson(updatedResourceDetails); - ResourceResponse = http.httpSendPost(url, userBodyJson, headersMap); - } else if (uri == "DELETE") { - ResourceResponse = http.httpSendDelete(url, headersMap); - } else - return null; - - return ResourceResponse; - } catch (FileNotFoundException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - return null; - - } - - protected JSONObject JsonObjectBuilder(ResourceReqDetails resourceDetails) throws JSONException { - // json object: resourceName and icon are must - JSONObject jObject = new JSONObject(); - - List<String> tagsList = Arrays.asList(resourceDetails.getName()); - List<String> derivedFromList = Arrays.asList("[tosca.nodes.Root]"); - - jObject.put("name", resourceDetails.getName()); - jObject.put("description", "updatedDescription"); - jObject.put("tags", tagsList); - jObject.put("category", ServiceCategoriesEnum.VOIP.getValue()); - jObject.put("derivedFrom", derivedFromList); - jObject.put("vendorName", "newOracle"); - jObject.put("vendorRelease", "1.5"); - jObject.put("contactId", "jh0003"); - jObject.put("icon", resourceDetails.getIcon()); - - return jObject; - } - - protected JSONObject RemoveFromJsonObject(JSONObject jObject, String removedPropery) { - jObject.remove(removedPropery); - - return jObject; - } - - // purpose: function for controlling json body fields and validating - // response - protected void UpdateAndValidateWithIncompletedJsonBody(User sdncModifierDetails, JSONObject jsonObject, String resourceId, String removedField, String errorMessage, List<String> variables) throws Exception { - - JSONObject jObject = new JSONObject(jsonObject, JSONObject.getNames(jsonObject)); - // remove description from jsonObject - jObject = RemoveFromJsonObject(jObject, removedField); - // update with incomplete body. - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(jObject.toString(), sdncModifierDetails, resourceId); - // validate response - AssertJUnit.assertNotNull("check response object is not null after update resource", updatedRestResponse); - AssertJUnit.assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(errorMessage, variables, updatedRestResponse.getResponse()); - - } - - // purpose: function for validating error response - protected void UpdateAndValidate(User sdncModifierDetails, ResourceReqDetails resourceDetails, String recievedMessage, List<String> variables) throws Exception { - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, "0.1"); - // validate response - AssertJUnit.assertNotNull("check response object is not null after update resource", updatedRestResponse); - AssertJUnit.assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(recievedMessage, variables, updatedRestResponse.getResponse()); - - } - - protected void parseResponseAndValidateNonUpdatable(ResourceReqDetails resourceDetails, RestResponse restResponse) throws Exception { - // parse response to javaObject - Resource updatedResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - AssertJUnit.assertTrue(!resourceDetails.getIsHighestVersion().equals(updatedResourceRespJavaObject.isHighestVersion())); - AssertJUnit.assertTrue(!resourceDetails.getVersion().equals(updatedResourceRespJavaObject.getName())); - AssertJUnit.assertTrue(!resourceDetails.getIsAbstract().equals(updatedResourceRespJavaObject.isAbstract())); - AssertJUnit.assertTrue(!resourceDetails.getCreatorUserId().equals(updatedResourceRespJavaObject.getCreatorUserId())); - AssertJUnit.assertTrue(!resourceDetails.getCreatorFullName().equals(updatedResourceRespJavaObject.getCreatorFullName())); - AssertJUnit.assertTrue(!resourceDetails.getLastUpdateDate().equals(updatedResourceRespJavaObject.getLastUpdateDate())); - AssertJUnit.assertTrue(!resourceDetails.getCreationDate().equals(updatedResourceRespJavaObject.getCreationDate())); - AssertJUnit.assertTrue(!resourceDetails.getLastUpdaterUserId().equals(updatedResourceRespJavaObject.getLastUpdaterUserId())); - AssertJUnit.assertTrue(!resourceDetails.getLastUpdaterFullName().equals(updatedResourceRespJavaObject.getLastUpdaterFullName())); - AssertJUnit.assertTrue(!resourceDetails.getLifecycleState().equals(updatedResourceRespJavaObject.getLifecycleState())); - AssertJUnit.assertTrue(!resourceDetails.getCost().equals(updatedResourceRespJavaObject.getCost())); - AssertJUnit.assertTrue(!resourceDetails.getLicenseType().equals(updatedResourceRespJavaObject.getLicenseType())); - AssertJUnit.assertTrue(!resourceDetails.getUUID().equals(updatedResourceRespJavaObject.getUUID())); - - } - - protected void parseResponseAndValidate(ResourceReqDetails ResourceDetails, RestResponse restResponse) throws Exception { - // parse response to javaObject - Resource updatedResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - // validate request vs response - ResourceValidationUtils.validateResourceReqVsResp(ResourceDetails, updatedResourceRespJavaObject); - } - - public ExpectedResourceAuditJavaObject constructFieldsForAuditValidation(ResourceReqDetails resourceDetails, String resourceVersion) { - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = new ExpectedResourceAuditJavaObject(); - - expectedResourceAuditJavaObject.setAction("Checkout"); - expectedResourceAuditJavaObject.setModifierUid(UserRoleEnum.ADMIN.getUserId()); - expectedResourceAuditJavaObject.setModifierName(UserRoleEnum.ADMIN.getUserName()); - expectedResourceAuditJavaObject.setStatus("200.0"); - expectedResourceAuditJavaObject.setDesc("OK"); - expectedResourceAuditJavaObject.setResourceName(resourceDetails.getName().toLowerCase()); - expectedResourceAuditJavaObject.setResourceType("Resource"); - expectedResourceAuditJavaObject.setPrevVersion(String.valueOf(Float.parseFloat(resourceVersion) - 0.1f)); - expectedResourceAuditJavaObject.setCurrVersion(resourceVersion); - expectedResourceAuditJavaObject.setPrevState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - - return expectedResourceAuditJavaObject; - - } - - public enum FieldToValidate { - ContactId, Tags, VendorName, VendorRelease, Description - } - - @Test - public void UpdateBy_postTest() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // update resource - without changing resourceName - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - - RestResponse updatedRestResponse = TryUpdateByAnotherVerb(updatedResourceDetails, sdncModifierDetails, "POST"); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), Empty_List, updatedRestResponse.getResponse()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(resourceDetails, getRestResponse); - - } - - @Test - public void UpdateBy_getTest() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // update resource - without changing resourceName - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - RestResponse updatedRestResponse = TryUpdateByAnotherVerb(updatedResourceDetails, sdncModifierDetails, "GET"); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), Empty_List, updatedRestResponse.getResponse()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(resourceDetails, getRestResponse); - - } - - @Test - public void UpdateBy_deleteTest() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // update resource - without changing resourceName - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - RestResponse updatedRestResponse = TryUpdateByAnotherVerb(updatedResourceDetails, sdncModifierDetails, "DELETE"); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), Empty_List, updatedRestResponse.getResponse()); - - RestResponse getRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(resourceDetails, getRestResponse); - - } - - // TODO DE - // @Ignore("") - @Test - public void UpdateWithInvaldJsonBodyTest() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - resourceDetails.setUniqueId(ResponseParser.getUniqueIdFromResponse(restResponse)); - String resourceId = resourceDetails.getUniqueId(); - - // update Descirption value - String description = "updatedDescription"; - - // send update with incompleted json, only description string - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(description, sdncModifierDetails, resourceId); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("check error code after update resource", 400, updatedRestResponse.getErrorCode().intValue()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(resourceDetails, getRestResponse); - - } - - // @Test - // public void UpdateResourceModifierNotOwnerStateTest() throws Exception { - // - // - // RestResponse restResponse = createResource(sdncModifierDetails, - // resourceDetails); - // String resourceName = resourceDetails.getName(); - // - // // new user parameters - // String userFirstName = "Kot"; - // String userLastName = "Matroskin"; - // String role = "ADMIN"; - // User sdncUserDetails = new User(userFirstName, userLastName, - // httpCspUserId, email, role,null); - // RestResponse deleteUserResponse = userUtils.deleteUser(sdncUserDetails, - // ElementFactory.getDefaultUser(UserRoleEnum.ADMIN)); - // - // RestResponse createUserResponse = UserUtils.createUser(sdncUserDetails, - // ElementFactory.getDefaultUser(UserRoleEnum.ADMIN)); - // - // User updatedSdncModifierDetails = new User(userFirstName, userLastName, - // httpCspUserId, email,role,null); - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - // RestResponse updatedRestResponse = - // ResourceRestUtils.updateResource(updatedResourceDetails, - // updatedSdncModifierDetails, resourceDetails.getUniqueId(), ""); - // - // // validate response - // assertNotNull("check response object is not null after update resource", - // updatedRestResponse); - // assertNotNull("check error code exists in response after update - // resource", updatedRestResponse.getErrorCode()); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), - // Empty_List, updatedRestResponse.getResponse()); - // - // RestResponse getRestResponse = - // ResourceRestUtils.getResource(sdncModifierDetails, - // resourceDetails.getUniqueId()); - // assertNotNull("check response object is not null after update resource", - // getRestResponse); - // parseResponseAndValidate(resourceDetails, getRestResponse); - // - // - // } - - @Test - public void UpdateResourceNameSensitiveTest() throws Exception { - User sdncModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - String resourceName = "Ab"; - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - // Delete resources - RestResponse response = null; - response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.1"); - BaseRestUtils.checkDeleteResponse(response); - response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.2"); - BaseRestUtils.checkDeleteResponse(response); - - RestResponse restResponse = createResource(sdncModifierDetails, updatedResourceDetails); - assertEquals("create resource failed", 201, restResponse.getErrorCode().intValue()); - - // check-in Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(updatedResourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // String resourceCertifyVersion = "0.1"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(updatedResourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - updatedResourceDetails.setName("ABC_-bt.aT"); - ArrayList<String> resourceTag = new ArrayList<String>(); - resourceTag.add(0, "ABC_-bt.aT"); - updatedResourceDetails.setTags(resourceTag); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, updatedResourceDetails.getUniqueId(), ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(updatedResourceDetails, updatedRestResponse); - - // Delete resources - response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.1"); - BaseRestUtils.checkDeleteResponse(response); - response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.2"); - BaseRestUtils.checkDeleteResponse(response); - - } - - @Test - public void UpdateIcon_InegativeFlow() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - List<String> resourceList = new ArrayList<String>(); - resourceList.add(0, "Resource"); - // check InValid Characters - char[] notValidCharsArray = new char[59]; - notValidCharsArray = getInValidChars(); - // update metadata details - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - RestResponse updatedRestResponse; - - for (int i = 0; i < notValidCharsArray.length; i++) { - // change icon of metadata - updatedResourceDetails.setIcon("MyIcon" + notValidCharsArray[i]); - // PUT request - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_ICON.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource icon", 400, updatedRestResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating resource icon", "Bad Request", updatedRestResponse.getResponseMessage().toString()); - - } - - // empty icon - String updateIcon = ""; - updatedResourceDetails.setIcon(updateIcon); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), resourceList, updatedRestResponse.getResponse()); - - // Icon length more then 25 characters - resourceList.add(1, "25"); - updatedResourceDetails.setIcon("1234567890_-qwertyuiopASDNNN"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_ICON_EXCEEDS_LIMIT.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after create resource", 400, updatedRestResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating resource icon", "Bad Request", updatedRestResponse.getResponseMessage().toString()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResource_NoTagsEqualToResourceName() throws Exception { - - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - ResourceReqDetails updatedResourceDetails = defineResourse(); - updatedResourceDetails.setName("updatedResourceName"); - List<String> tags = updatedResourceDetails.getTags(); - - for (Iterator<String> iter = tags.listIterator(); iter.hasNext();) { - String a = iter.next(); - if (a.equals("updatedResourceName")) { - iter.remove(); - } - } - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_TAGS_NO_COMP_NAME.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource icon", 400, updatedRestResponse.getErrorCode().intValue()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResourceName_negativeFlow() throws Exception { - // The validation are done in Tag's validation - User sdncAdminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - RestResponse updatedRestResponse; - RestResponse restResponse = createResource(sdncAdminModifierDetails, resourceDetails); - assertEquals("create resource failed", 201, restResponse.getErrorCode().intValue()); - String uniqueId = resourceDetails.getUniqueId(); - String resourceName = resourceDetails.getName(); - // check InValid Characters - char[] notValidCharsArray = new char[59]; - notValidCharsArray = getInValidChars(); - ArrayList<String> resource_Name = new ArrayList<String>(); - List<String> resourceList = new ArrayList<String>(); - - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceList.add(0, "Resource"); - - // update metadata details - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - for (int i = 0; i < notValidCharsArray.length; i++, resource_Name.clear()) { - if (i != 1 && i != 46 && /* - * i != 8 && i != 9 && i != 10 && i != 11 && i != 12 && - */ i != 31) // space ("") and dot(.) - { - // change resourceName parameter - updatedResourceDetails.setName("UpdatedResourceName" + notValidCharsArray[i]); - resource_Name.add("UpdatedResourceName" + notValidCharsArray[i]); - updatedResourceDetails.setTags(resource_Name); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncAdminModifierDetails, uniqueId, ""); - // validate response - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_TAG.name(), - // Empty_List, updatedRestResponse.getResponse()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPONENT_NAME.name(), resourceList, updatedRestResponse.getResponse()); - - } - } - - // resourceName length more then 50 characters - // Duplicate tags are allowed and should be de-duplicated by server side - resource_Name.add(resourceName); - resource_Name.add("tag1"); - resource_Name.add("tag1"); - resource_Name.add("tag2"); - resource_Name.add("tag2"); - - resourceList.add(1, "1024"); - // updatedResourceDetails.setName("123456789012345678901234567890123456789012345678901"); - updatedResourceDetails.setName(new String(new char[1025]).replace("\0", "a")); - // resource_Name.add("123456789012345678901234567890123456789012345678901"); - updatedResourceDetails.setTags(resource_Name); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncAdminModifierDetails, uniqueId, ""); - // validate response - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name(), resourceList, updatedRestResponse.getResponse()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncAdminModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - // delete resource - RestResponse response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncAdminModifierDetails, updatedResourceDetails.getName(), "0.1"); - BaseRestUtils.checkDeleteResponse(response); - } - - @Test - public void UpdateResourceInformation_NotCheckedOut() throws Exception { - - String resourceBaseVersion = "0.1"; - List<String> resourceList = new ArrayList<String>(); - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // CheckIn Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); // NOT_CERTIFIED_CHECKIN - assertNotNull("check response object is not null after checkout resource", checkoutResource); - assertNotNull("check error code exists in response after checkIn resource", checkoutResource.getErrorCode()); - assertEquals("Check response code after checkin resource", 200, checkoutResource.getErrorCode().intValue()); - - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource icon", 409, updatedRestResponse.getErrorCode().intValue()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResourceInformation_resourceVersion_11() throws Exception { - - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), resourceList, updatedRestResponse.getResponse()); - // assertEquals("Check response code after updating resource icon", 409, - // updatedRestResponse.getErrorCode().intValue()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResourceInformation_resourceVersion_02() throws Exception { - - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // String resourceCertifyVersion = "0.1"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after updating resource icon", 200, updatedRestResponse.getErrorCode().intValue()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(updatedResourceDetails, getResourceRespJavaObject); - - // delete resource - RestResponse response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.1"); - BaseRestUtils.checkDeleteResponse(response); - response = ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.2"); - BaseRestUtils.checkDeleteResponse(response); - - } - - @Test - public void UpdateResourceIcon_resourceVersion_11() throws Exception { - // Can be changed only if major version is "0". - - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - ResourceReqDetails updatedResourceDetails = defineResourse(); - // updatedResourceDetails.setVendorName("updatedVandorName"); - updatedResourceDetails.setIcon("updatedIcon"); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_ICON_CANNOT_BE_CHANGED.name(), resourceList, updatedRestResponse.getResponse()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResourceVandorName_resourceVersion_11() throws Exception { - // Can be changed only if the major resource version is "0". - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - ResourceReqDetails updatedResourceDetails = defineResourse(); - - updatedResourceDetails.setVendorName("updatedVandorName"); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_VENDOR_NAME_CANNOT_BE_CHANGED.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource icon", 400, updatedRestResponse.getErrorCode().intValue()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResourceName_resourceVersion_11() throws Exception { - // Can be changed only if the major resource version is "0". - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("create resource failed", 201, restResponse.getErrorCode().intValue()); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - /* - * //ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); ResourceReqDetails updatedResourceDetails = defineResourse(); - * - * updatedResourceDetails.setResourceName("updatedResourceName"); updatedResourceDetails.setIcon("updatedResourceName"); - */ - resourceDetails.setName("updatedResourceName"); - List<String> tagList = new ArrayList<String>(); - tagList.add(0, "updatedResourceName"); - resourceDetails.setTags(tagList); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_NAME_CANNOT_BE_CHANGED.name(), resourceList, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResourceTag_resourceVersion_11() throws Exception { - // Tag Can be updated when major version is "0". - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - ResourceReqDetails updatedResourceDetails = defineResourse(); - // updatedResourceDetails.setVendorName("updatedVandorName"); - - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add("NewTag"); - resourceTags.add(resourceDetails.getName()); - - updatedResourceDetails.setTags(resourceTags); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(updatedResourceDetails, getRestResponse); - - } - - @Test - public void UpdateAllowedParames_resourceVersion_11() throws Exception { - - // Tag, contactId, vendorRelease,tags And description - Can be also - // updated when major version is NOT "0". - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - ResourceReqDetails updatedResourceDetails = defineResourse(); - // updatedResourceDetails.setVendorName("updatedVandorName"); - - // updated allowed parameters when major resource version is NOT "0" - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add("NewTag"); - resourceTags.add(resourceDetails.getName()); - updatedResourceDetails.setTags(resourceTags); - updatedResourceDetails.setDescription("UpdatedDescription"); - updatedResourceDetails.setVendorRelease("5.1"); - updatedResourceDetails.setContactId("bt750h"); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(updatedResourceDetails, getRestResponse); - - } - - @Test - public void UpdateResourceDerivedFrom_resourceVersion_11() throws Exception { - // DerivedFrom parameter - Can be updated when major version is "0". - User adminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - String resourceBaseVersion = "0.1"; - - // create resource - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String resourceName = resourceDetails.getName(); - - // resourceUtils.addResourceMandatoryArtifacts(sdncModifierDetails, - // restResponse); - - // Certify Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, adminModifierDetails, resourceBaseVersion, LifeCycleStatesEnum.CERTIFY); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - String resourceCertifyVersion = "1.0"; - logger.debug("Changing resource life cycle "); - checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceCertifyVersion, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after checkout resource", 200, checkoutResource.getErrorCode().intValue()); - - // ResourceReqDetails updatedResourceDetails = - // defineUpdatedResourse(resourceName); - ResourceReqDetails updatedResourceDetails = defineResourse(); - ArrayList<String> drivenFrom = new ArrayList<String>(); - drivenFrom.add(0, "tosca.nodes.Container.Application"); - updatedResourceDetails.setDerivedFrom(drivenFrom); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - List<String> resourceList = new ArrayList<String>(); - ResourceRestUtils.checkSuccess(updatedRestResponse); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - } - - @Test - public void UpdateResource_vendorNameValidation() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - String updatedVendorName = ""; - String uniqueId = resourceDetails.getUniqueId(); - resourceDetails.setVendorName(updatedVendorName); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - // update resource vendorName metadata: 1 characters - updatedVendorName = " "; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - // update resource vendorName metadata: 25 characters - updatedVendorName = "Verification and validati"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // update resource vendorName metadata: 26 characters - updatedVendorName = "Verification and validatii"; - // set vendorName - List<String> myList = new ArrayList<String>(); - myList.add(0, "25"); - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.VENDOR_NAME_EXCEEDS_LIMIT.name(), myList, updatedRestResponse.getResponse()); - - // update resource VendorRelease metadata: forbidden characters - updatedVendorName = "A1<"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1>"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1:"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1\""; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1/"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1\\"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1|"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1?"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorName = "A1*"; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - // update resource vendorName metadata: null - updatedVendorName = null; - // set vendorName - resourceDetails.setVendorName(updatedVendorName); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_NAME.name(), Empty_List, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResource_vendorReleaseValidation() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - RestResponse updatedRestResponse; - String uniqueId = resourceDetails.getUniqueId(); - String updatedVendorRelease; - // set VendorRelease - - // update resource VendorRelease metadata: 1 characters - updatedVendorRelease = "1"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // update resource VendorRelease metadata: 25 characters - updatedVendorRelease = "(!#1.00000000000000000000"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // update resource VendorRelease metadata: 26 characters - updatedVendorRelease = "(!#1.000000000000000000005";// set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.VENDOR_RELEASE_EXCEEDS_LIMIT.name(), Arrays.asList("" + ValidationUtils.VENDOR_RELEASE_MAX_LENGTH), updatedRestResponse.getResponse()); - - // UpdateAndValidate(sdncModifierDetails, resourceDetails, - // ActionStatus.VENDOR_RELEASE_EXCEEDS_LIMIT.name(), - // Arrays.asList(""+ValidationUtils.VENDOR_RELEASE_MAX_LENGTH)); - - // update resource VendorRelease metadata: forbidden characters - updatedVendorRelease = "A1<"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1>"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1:"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1\""; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1/"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1\\"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1|"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1?"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - updatedVendorRelease = "A1*"; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - // update resource VendorRelease metadata: null - updatedVendorRelease = null; - // set VendorRelease - resourceDetails.setVendorRelease(updatedVendorRelease); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_VENDOR_RELEASE.name(), Empty_List, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResource_contactIdValidation() throws Exception { // [a-zA-Z]{2}[0-9]{3}[a-zA-Z0-9]{1} - // (6 - // characters - // now, - // may - // be - // expanded - // up - // to - // 8 - // characters - // in - // the - // future). - // Convert - // Upper - // case - // character - // to - // lower - // case - RestResponse updatedRestResponse; - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - String uniqueId = resourceDetails.getUniqueId(); - - List<String> myList = new ArrayList<String>(); - myList.add(0, "Resource"); - String updatedContactId = ""; - resourceDetails.setContactId(updatedContactId); - - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "ab12345"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = " "; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "ab 50h"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "ab123c"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - updatedContactId = "cd789E"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - // contactId norm - resourceDetails.setContactId(updatedContactId.toLowerCase()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - updatedContactId = "ef4567"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - updatedContactId = "AA012A"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - // contactId norm - resourceDetails.setContactId(updatedContactId.toLowerCase()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - updatedContactId = "CD012c"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - // contactId norm - resourceDetails.setContactId(updatedContactId.toLowerCase()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - updatedContactId = "EF0123"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - // contactId norm - resourceDetails.setContactId(updatedContactId.toLowerCase()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - ////////////////////////////// **************////////////////////////////// - List<String> resource = Arrays.asList("Resource"); - updatedContactId = "01345a"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "0y000B"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "Y1000b"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "abxyzC"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "cdXYZc"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "efXY1D"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "EFabcD"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "EFABCD"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "EFABC1"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "efui1D"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "efui1!"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "ef555!"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = ",f555"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - updatedContactId = "EF55.5"; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - // update resource contactId metadata: extended character set (128–255) - resourceDetails.setContactId(extendedCharsStringBuilder()); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - // update resource contactId metadata: null - updatedContactId = null; - resourceDetails.setContactId(updatedContactId); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CONTACT.name(), myList, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResource_TagsFieldValidation() throws Exception { - RestResponse updatedRestResponse; - // define and create resource - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - String uniqueId = resourceDetails.getUniqueId(); - - String updatedTagField = ""; - ArrayList<String> resourceTags = new ArrayList<String>(); - resourceTags.add(updatedTagField); - // set description - resourceDetails.setTags(resourceTags); - List<String> variables = Arrays.asList("Resource", "tag"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables, updatedRestResponse.getResponse()); - - // update resource tags metadata: empty - resourceTags = new ArrayList<String>(); - // set Tags - resourceDetails.setTags(resourceTags); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_TAGS.name(), Empty_List, updatedRestResponse.getResponse()); - - // update resource description metadata: 1 characters - updatedTagField = "A"; - resourceTags = new ArrayList<String>(); - resourceTags.add(updatedTagField); - resourceTags.add(resourceDetails.getName()); - // set description - resourceDetails.setTags(resourceTags); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // OK - tag up to 50 chars - updatedTagField = "The Indian-crested.porcupine_The Indian cresteddds"; - resourceTags.add(updatedTagField); - resourceDetails.setTags(resourceTags); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // OK - sum is 1024, 50x20+48+20(commas)+6(cisco4 - resource name) - String updatedTagField1 = "The Indian-crested.porcupine_The Indian crestedd01"; - String updatedTagField2 = "The Indian-crested.porcupine_The Indian crestedd02"; - String updatedTagField3 = "The Indian-crested.porcupine_The Indian crestedd03"; - String updatedTagField4 = "The Indian-crested.porcupine_The Indian crestedd04"; - String updatedTagField5 = "The Indian-crested.porcupine_The Indian crestedd05"; - String updatedTagField6 = "The Indian-crested.porcupine_The Indian crestedd06"; - String updatedTagField7 = "The Indian-crested.porcupine_The Indian crestedd07"; - String updatedTagField8 = "The Indian-crested.porcupine_The Indian crestedd08"; - String updatedTagField9 = "The Indian-crested.porcupine_The Indian crestedd09"; - String updatedTagField10 = "The Indian-crested.porcupine_The Indian crestedd10"; - String updatedTagField11 = "The Indian-crested.porcupine_The Indian crestedd11"; - String updatedTagField12 = "The Indian-crested.porcupine_The Indian crestedd12"; - String updatedTagField13 = "The Indian-crested.porcupine_The Indian crestedd13"; - String updatedTagField14 = "The Indian-crested.porcupine_The Indian crestedd14"; - String updatedTagField15 = "The Indian-crested.porcupine_The Indian crestedd15"; - String updatedTagField16 = "The Indian-crested.porcupine_The Indian crestedd16"; - String updatedTagField17 = "The Indian-crested.porcupine_The Indian crestedd17"; - String updatedTagField18 = "The Indian-crested.porcupine_The Indian crestedd18"; - String updatedTagField19 = "The Indian-crested.porcupine_The Indian crestaa"; - - resourceTags = new ArrayList<String>(); - resourceTags.add(updatedTagField); - resourceTags.add(updatedTagField1); - resourceTags.add(updatedTagField2); - resourceTags.add(updatedTagField3); - resourceTags.add(updatedTagField4); - resourceTags.add(updatedTagField5); - resourceTags.add(updatedTagField6); - resourceTags.add(updatedTagField7); - resourceTags.add(updatedTagField8); - resourceTags.add(updatedTagField9); - resourceTags.add(updatedTagField10); - resourceTags.add(updatedTagField11); - resourceTags.add(updatedTagField12); - resourceTags.add(updatedTagField13); - resourceTags.add(updatedTagField14); - resourceTags.add(updatedTagField15); - resourceTags.add(updatedTagField16); - resourceTags.add(updatedTagField17); - resourceTags.add(updatedTagField18); - resourceTags.add(updatedTagField19); - resourceTags.add(resourceDetails.getName()); - // set description - resourceDetails.setTags(resourceTags); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // Add another tag-exceeds limit - resourceTags.add("d"); - resourceDetails.setTags(resourceTags); - ArrayList<String> myArray = new ArrayList<String>(); - myArray.add(0, "1024"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_TAGS_EXCEED_LIMIT.name(), myArray, updatedRestResponse.getResponse()); - - // Tag exceeds limit - 51 - resourceTags = new ArrayList<String>(); - updatedTagField = "The Indian-crested.porcupine_The Indian crestedddsw"; - resourceTags.add(updatedTagField); - resourceTags.add(resourceDetails.getName()); - // set description - resourceDetails.setTags(resourceTags); - myArray.remove(0); - myArray.add(0, "50"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_SINGLE_TAG_EXCEED_LIMIT.name(), myArray, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResource_DesriptionFieldValidation() throws Exception { - // define and create resource - RestResponse updatedRestResponse; - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - String uniqueId = resourceDetails.getUniqueId(); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - List<String> resource = new ArrayList<>(); - resource.add("Resource"); - // update resource description metadata: 0 characters - String updatedDescription = ""; - // set description - resourceDetails.setDescription(updatedDescription); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), resource, updatedRestResponse.getResponse()); - - // update resource description metadata: null - updatedDescription = null; - // set description - resourceDetails.setDescription(updatedDescription); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), resource, updatedRestResponse.getResponse()); - - // update resource description metadata: 1 characters - updatedDescription = "A"; - // set description - resourceDetails.setDescription(updatedDescription); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // update resource description metadata: 1024 characters - updatedDescription = "The Indian crested porcupine *{Hystrix indica}*, or Indian porcupine is a member of the Old World porcupines." + "It is quite an adaptable rodent, found throughout southern Asia and the Middle East." - + "It is tolerant of several different habitats: mountains, tropical and subtropical grasslands, scrublands, and forests." - + "It is a large rodent, growing more than 0.9 m = (3 ft) long and weighing 14.5 kg = (32 lb)! [citation needed] It is covered in multiple layers of quills." - + "The longest quills grow from its shoulders to about a third of the animal's length." + "Its tail is covered in short, hollow quills that can rattle when threatened." - + "It has broad feet and long claws for digging. When attacked, the Indian crested porcupine raises its quills and rattles the hollow quills on its tail." - + "If the predator persists past these threats, the porcupine launches a backwards assault, hoping to stab its attacker with its quills." - + "It does this so effectively that most brushes between predators and the Indian porcupine end in death or severe injury"; - // set description - resourceDetails.setDescription(updatedDescription); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - parseResponseAndValidate(resourceDetails, updatedRestResponse); - - // update resource description metadata: 1025 characters - updatedDescription = "The Indian crested porcupine *{Hystrix indica}*, or Indian porcupine is a member of the Old World porcupines." + "It is quite an adaptable rodent, found throughout southern Asia and the Middle East." - + "It is tolerant of several different habitats: mountains, tropical and subtropical grasslands, scrublands, and forests." - + "It is a large rodent, growing more than 0.9 m = (3 ft) long and weighing 14.5 kg = (32 lb)! [citation needed] It is covered in multiple layers of quills." - + "The longest quills grow from its shoulders to about a third of the animal's length." + "Its tail is covered in short, hollow quills that can rattle when threatened." - + "It has broad feet and long claws for digging. When attacked, the Indian crested porcupine raises its quills and rattles the hollow quills on its tail." - + "If the predator persists past these threats, the porcupine launches a backwards assault, hoping to stab its attacker with its quills." - + "It does this so effectively that most brushes between predators and the Indian porcupine end in death or severe injury."; - // set description - resourceDetails.setDescription(updatedDescription); - resource.add(1, "1024"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, uniqueId, ""); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_DESCRIPTION_EXCEEDS_LIMIT.name(), resource, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResource_TagsFormatValidation() throws Exception { - char[] notValidCharsArray = getTagInValidFormatChars(); - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check recourse created ", 201, restResponse.getErrorCode().intValue()); - String resourceName = resourceDetails.getName(); - - // update tag details - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - ArrayList<String> resourceTags = new ArrayList<String>(); - - String updatedTagField; - RestResponse updatedRestResponse; - List<String> variables = Arrays.asList("Resource", "tag"); - - for (int i = 0; i < notValidCharsArray.length; i++) { - updatedTagField = "UpdatedTag" + notValidCharsArray[i]; - resourceTags = new ArrayList<String>(); - resourceTags.add(updatedTagField); - resourceTags.add(resourceDetails.getName()); - // set description - updatedResourceDetails.setTags(resourceTags); - - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource icon", 400, updatedRestResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating resource icon", "Bad Request", updatedRestResponse.getResponseMessage().toString()); - - } - - } - - @Test - public void UpdateResourceCategory_negativeFlow() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after update resource", 201, restResponse.getErrorCode().intValue()); - Resource resourceBeforeUpdate = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - String uniqueID = resourceDetails.getUniqueId(); - - // Update resource Category Successfully - ResourceReqDetails updatedResourceDetails = resourceDetails; - - updatedResourceDetails.removeAllCategories(); - updatedResourceDetails.addCategoryChain(ServiceCategoriesEnum.MOBILITY.getValue(), ResourceCategoryEnum.APPLICATION_L4_DATABASE.getSubCategory()); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - - // validate response - List<String> resourceList = new ArrayList<String>(); - resourceList.add(0, "Resource"); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CATEGORY.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource", 400, updatedRestResponse.getErrorCode().intValue()); - - // Updating resource category - updatedResourceDetails = defineUpdateResourceWithNonUpdatableFields(resourceBeforeUpdate); - updatedResourceDetails.addCategory(""); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - resourceList = new ArrayList<String>(); - resourceList.add(0, "Resource"); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource", 400, updatedRestResponse.getErrorCode().intValue()); - - // Updating resource category - updatedResourceDetails = defineUpdateResourceWithNonUpdatableFields(resourceBeforeUpdate); - updatedResourceDetails.addCategory("XXXXXX"); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // validate response - resourceList = new ArrayList<String>(); - resourceList.add(0, "Resource"); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_CATEGORY.name(), resourceList, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource", 400, updatedRestResponse.getErrorCode().intValue()); - - // CheckIn Resource - logger.debug("Changing resource life cycle "); - RestResponse checkoutResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); // NOT_CERTIFIED_CHECKIN - assertEquals("Check response code after checkin resource", 200, checkoutResource.getErrorCode().intValue()); - - // Update resource Category - updatedResourceDetails = defineUpdateResourceWithNonUpdatableFields(resourceBeforeUpdate); - updatedResourceDetails.addCategory(ServiceCategoriesEnum.VOIP.getValue()); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - // verify response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), Empty_List, updatedRestResponse.getResponse()); - assertEquals("Check response code after updating resource", 409, updatedRestResponse.getErrorCode().intValue()); - - // CheckIn Resource - logger.debug("Changing resource life cycle "); - RestResponse checkinResource = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); // NOT_CERTIFIED_CHECKIN - assertNotNull("check response object is not null after checkout resource", checkoutResource); - assertNotNull("check error code exists in response after checkIn resource", checkoutResource.getErrorCode()); - assertEquals("Check response code after checkin resource", 200, checkoutResource.getErrorCode().intValue()); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, uniqueID); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(resourceDetails, getRestResponse); - - } - - @Test - public void UpdateResourceCategorySuccessfully() throws Exception { - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after update resource", 201, restResponse.getErrorCode().intValue()); - Resource resourceBeforeUpdate = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - // Update resource Category Successfully - ResourceReqDetails updatedResourceDetails = resourceDetails; - - updatedResourceDetails.removeAllCategories(); - updatedResourceDetails.addCategoryChain(ResourceCategoryEnum.APPLICATION_L4_DATABASE.getCategory(), ResourceCategoryEnum.APPLICATION_L4_DATABASE.getSubCategory()); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncModifierDetails, resourceDetails.getUniqueId(), ""); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, updatedRestResponse.getErrorCode().intValue()); - // parseResponseAndValidateNonUpdatable(updatedResourceDetails, - // updatedRestResponse); - parseResponseAndValidate(updatedResourceDetails, updatedRestResponse); - - // validate category updated - assertTrue(updatedResourceDetails.getCategories().get(0).getName().equals(ResourceCategoryEnum.APPLICATION_L4_DATABASE.getCategory())); - - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncModifierDetails, resourceDetails.getUniqueId()); - assertNotNull("check response object is not null after update resource", getRestResponse); - parseResponseAndValidate(updatedResourceDetails, getRestResponse); - - ResourceRestUtils.deleteResourceByNameAndVersion(sdncModifierDetails, updatedResourceDetails.getName(), "0.1"); - } - - // Benny - - @Test - public void Validation_UpdateIcon() throws Exception { - // Fields to update (Forbidden) - String _updatedIcon = "mySecondIcon.Jpg"; - - // administrator permissions - User sdncAdminModifierDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // define and create resource - ResourceRestUtils.deleteResourceByNameAndVersion(sdncAdminModifierDetails, resourceDetails.getName(), "0.1"); - - RestResponse restResponse = createResource(sdncAdminModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - String resourceName = resourceDetails.getName(); - - // update metadata details - ResourceReqDetails updatedResourceDetails = defineUpdatedResourse(resourceName); - // change icon of metadata - updatedResourceDetails.setIcon(_updatedIcon); - // PUT request - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncAdminModifierDetails, resourceDetails.getUniqueId(), ""); - - // validate response - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_INVALID_ICON.name(), Arrays.asList("Resource"), updatedRestResponse.getResponse()); - - // empty icon - _updatedIcon = ""; - updatedResourceDetails.setIcon(_updatedIcon); - updatedRestResponse = ResourceRestUtils.updateResourceMetadata(updatedResourceDetails, sdncAdminModifierDetails, resourceDetails.getUniqueId(), ""); - assertNotNull("check response object is not null after update resource", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_ICON.name(), Arrays.asList("Resource"), updatedRestResponse.getResponse()); - - // get resource with original name. original metadata should be returned - RestResponse getRestResponse = ResourceRestUtils.getResource(sdncAdminModifierDetails, resourceDetails.getUniqueId()); - // validate response - assertNotNull("check response object is not null after get resource", getRestResponse); - assertNotNull("check error code exists in response after get resource", getRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", 200, getRestResponse.getErrorCode().intValue()); - - // parse updated response to javaObject - Resource getResourceRespJavaObject = ResponseParser.convertResourceResponseToJavaObject(getRestResponse.getResponse()); - // validate that metadata was not changed - ResourceValidationUtils.validateResourceReqVsResp(resourceDetails, getResourceRespJavaObject); - - ResourceRestUtils.deleteResourceByNameAndVersion(sdncAdminModifierDetails, updatedResourceDetails.getName(), "0.1"); - - } - - @Test - public void UpdateResourceTypeSuccess() throws Exception { - // LCS is CheckOut - String newResourceType = ResourceTypeEnum.VL.toString(); - String currentResourceType = resourceDetails.getResourceType(); - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - resourceDetails.setResourceType(newResourceType); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - assertEquals("Check response code after create resource", 200, updatedRestResponse.getErrorCode().intValue()); - Resource updatedResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(updatedRestResponse.getResponse()); - // assertTrue("Check resource type after update resource", - // updatedResourceJavaObject.getResourceType().toString().equals(resourceType)); - assertTrue("Check resource type after update resource", updatedResourceJavaObject.getResourceType().toString().equals(currentResourceType)); - - } - - @Test - public void UpdateResourceTypeAndNameSuccess() throws Exception { - // LCS is CheckOut - String newResourceType = ResourceTypeEnum.VL.toString(); - String currentResourceType = resourceDetails.getResourceType(); - String newResourceName = "new Name"; - - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - resourceDetails.setResourceType(newResourceType); - resourceDetails.setName(newResourceName); - List<String> tags = resourceDetails.getTags(); - tags.add(newResourceName); - resourceDetails.setTags(tags); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - assertEquals("Check response code after create resource", 200, updatedRestResponse.getErrorCode().intValue()); - Resource updatedResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(updatedRestResponse.getResponse()); - assertTrue("Check resource type after update resource", updatedResourceJavaObject.getResourceType().toString().equals(currentResourceType)); - assertTrue("Check resource name after update resource", updatedResourceJavaObject.getName().equals(newResourceName)); - - } - - @Test - public void UpdateResourceTypeAfterResourceCertification() throws Exception { - - String newResourceType = ResourceTypeEnum.VF.toString(); - String currentResourceType = resourceDetails.getResourceType(); - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - resourceDetails.setResourceType(newResourceType); - restResponse = LifecycleRestUtils.certifyResource(resourceDetails); - assertEquals("Check response code after resource CheckIn", 200, restResponse.getErrorCode().intValue()); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after resource CheckIn", 200, restResponse.getErrorCode().intValue()); - currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - assertEquals("Check response code after create resource", 200, updatedRestResponse.getErrorCode().intValue()); - Resource updatedResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(updatedRestResponse.getResponse()); - // assertTrue("Check resource type after update resource", - // updatedResourceJavaObject.getResourceType().toString().equals(newResourceType)); - assertTrue("Check resource type after update resource", updatedResourceJavaObject.getResourceType().toString().equals(currentResourceType)); - - } - - @Test - public void UpdateResourceTypeCheckInLCS() throws Exception { - - String resourceType = ResourceTypeEnum.VL.toString(); - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - resourceDetails.setResourceType(resourceType); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncModifierDetails, LifeCycleStatesEnum.CHECKIN); - assertEquals("Check response code after resource CheckIn", 200, restResponse.getErrorCode().intValue()); - - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - - assertNotNull("check response object is not null after create resouce", updatedRestResponse); - assertNotNull("check error code exists in response after create resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after create resource", errorInfo.getCode(), updatedRestResponse.getErrorCode()); - - List<String> variables = new ArrayList<>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResourceTypeCertifiedLCS() throws Exception { - - String resourceType = ResourceTypeEnum.VL.toString(); - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - restResponse = LifecycleRestUtils.certifyResource(resourceDetails); - assertEquals("Check response code after resource CheckIn", 200, restResponse.getErrorCode().intValue()); - - resourceDetails.setResourceType(resourceType); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - - assertNotNull("check response object is not null after create resouce", updatedRestResponse); - assertNotNull("check error code exists in response after create resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after create resource", errorInfo.getCode(), updatedRestResponse.getErrorCode()); - - List<String> variables = new ArrayList<>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, updatedRestResponse.getResponse()); - - } - - @Test - public void UpdateResourceTypeInvalidType() throws Exception { - - String resourceType = "INVALID TYPE"; - RestResponse restResponse = createResource(sdncModifierDetails, resourceDetails); - assertEquals("Check response code after create resource", 201, restResponse.getErrorCode().intValue()); - Resource currentResourceJavaObject = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - resourceDetails.setResourceType(resourceType); - RestResponse updatedRestResponse = ResourceRestUtils.updateResourceMetadata(resourceDetails, sdncModifierDetails, currentResourceJavaObject.getUniqueId(), ""); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_CONTENT.name()); - - assertNotNull("check response object is not null after update resouce", updatedRestResponse); - assertNotNull("check error code exists in response after update resource", updatedRestResponse.getErrorCode()); - assertEquals("Check response code after update resource", errorInfo.getCode(), updatedRestResponse.getErrorCode()); - - List<String> variables = new ArrayList<>(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), variables, updatedRestResponse.getResponse()); - - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VFResourceInstanceNameCRUD.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VFResourceInstanceNameCRUD.java deleted file mode 100644 index 895390f764..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VFResourceInstanceNameCRUD.java +++ /dev/null @@ -1,480 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; - -import fj.data.Either; - -public class VFResourceInstanceNameCRUD extends ComponentBaseTest { - - protected static ServiceReqDetails serviceDetails; - protected static ResourceReqDetails resourceDetailsVFC; - protected static ResourceReqDetails resourceDetailsVL; - protected static ResourceReqDetails resourceDetailsVF; - protected static ResourceReqDetails resourceDetailsCP; - protected static ComponentInstanceReqDetails resourceInstanceReqDetailsVF; - protected static ComponentInstanceReqDetails resourceInstanceReqDetailsVFC; - protected static ComponentInstanceReqDetails resourceInstanceReqDetailsVL; - protected static ComponentInstanceReqDetails resourceInstanceReqDetailsCP; - protected static User sdncDesignerDetails1; - protected static User sdncTesterDeatails1; - protected static User sdncAdminDetails1; - protected static ArtifactReqDetails heatArtifactDetails; - protected static ArtifactReqDetails defaultArtifactDetails; - protected static int maxLength = 50; - protected static Resource resourceVF = null; - - @Rule - public static TestName name = new TestName(); - - public VFResourceInstanceNameCRUD() { - super(name, VFResourceInstanceNameCRUD.class.getName()); - } - - @BeforeMethod - - public void init() throws Exception { - - // serviceDetails = ElementFactory.getDefaultService(); - // resourceDetailsVFC = - // ElementFactory.getDefaultResourceByType(ResourceTypeEnum.VFC.toString(), - // "resourceVFC"); - // resourceDetailsVF = - // ElementFactory.getDefaultResourceByType(ResourceTypeEnum.VF.toString(), - // "resourceVF3"); - // resourceDetailsVL = - // ElementFactory.getDefaultResourceByType(ResourceTypeEnum.VL.toString(), - // "resourceVL"); - // resourceDetailsCP = - // ElementFactory.getDefaultResourceByType(ResourceTypeEnum.CP.toString(), - // "resourceCP"); - sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncTesterDeatails1 = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncAdminDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // heatArtifactDetails = - // ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - - Either<Resource, RestResponse> resourceDetailsCP_01e = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.CP, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(resourceDetailsCP_01e.left().value(), UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CHECKIN, true); - resourceDetailsCP = new ResourceReqDetails(resourceDetailsCP_01e.left().value()); - Either<Resource, RestResponse> resourceDetailsVL_01e = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VL, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(resourceDetailsVL_01e.left().value(), UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CHECKIN, true); - resourceDetailsVL = new ResourceReqDetails(resourceDetailsVL_01e.left().value()); - Either<Resource, RestResponse> resourceDetailsVF_01e = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true); - resourceDetailsVF = new ResourceReqDetails(resourceDetailsVF_01e.left().value()); - Either<Resource, RestResponse> resourceDetailsVFC_01e = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.changeComponentState(resourceDetailsVFC_01e.left().value(), UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CHECKIN, true); - resourceDetailsVFC = new ResourceReqDetails(resourceDetailsVFC_01e.left().value()); - - resourceInstanceReqDetailsVFC = ElementFactory.getDefaultComponentInstance("VFC", resourceDetailsVFC); - resourceInstanceReqDetailsVF = ElementFactory.getDefaultComponentInstance("VF", resourceDetailsVF); - resourceInstanceReqDetailsVL = ElementFactory.getDefaultComponentInstance("VL", resourceDetailsVL); - resourceInstanceReqDetailsCP = ElementFactory.getDefaultComponentInstance("CP", resourceDetailsCP); - sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncTesterDeatails1 = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncAdminDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - } - - @Test - public void addResourceInstanceToVF() throws Exception { - - createVFWithCertifiedResourceInstance(resourceDetailsCP, resourceInstanceReqDetailsCP); - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsCP.getName() + " 1"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void updateResourceInstanceName() throws Exception { - - // update resource instance name - String resourceInstanceUpdatedName = "resource New 2"; - - ResourceReqDetails updatedResourceDetailsVLC = changeResouceName(resourceDetailsVFC, - resourceInstanceUpdatedName); - createVFWithCertifiedResourceInstance(updatedResourceDetailsVLC, resourceInstanceReqDetailsVFC); - - resourceInstanceReqDetailsVFC.setName(resourceInstanceUpdatedName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetailsVFC, sdncDesignerDetails1, resourceVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertTrue(updateResourceInstanceResponse.getErrorCode() == BaseRestUtils.STATUS_CODE_SUCCESS); - - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceUpdatedName); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void updateResourceInstanceNameToNextGeneratedName() throws Exception { - - // update resource instance name - String resourceInstanceUpdatedName = resourceInstanceReqDetailsCP.getName() + " 2"; - - ResourceReqDetails updatedResourceDetailsVL = changeResouceName(resourceDetailsVL, resourceInstanceUpdatedName); - createVFWithCertifiedResourceInstance(updatedResourceDetailsVL, resourceInstanceReqDetailsVL); - resourceInstanceReqDetailsCP.setName(resourceInstanceUpdatedName); - - // add second resource instance - RestResponse response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetailsCP, - sdncDesignerDetails1, resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsVL.getName() + " 1"); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsCP.getName() + " 2"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void normolizeUpdatedResourceInstanceName() throws Exception { - - String resourceInstanceUpdatedName = "resource new - .2"; - String normalizedName = "resourcenew2"; - - ResourceReqDetails updatedResourceDetailsVL = changeResouceName(resourceDetailsVL, resourceInstanceUpdatedName); - - createVFWithCertifiedResourceInstance(updatedResourceDetailsVL, resourceInstanceReqDetailsVL); - // update resource instance name - resourceInstanceReqDetailsCP.setName(resourceInstanceUpdatedName); - - // add second resource instance - RestResponse response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetailsCP, - sdncDesignerDetails1, resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsVL.getName() + " 1"); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsCP.getName() + " 2"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void updatedResourceInstanceNameToEmpty() throws Exception { - - createVFWithCertifiedResourceInstance(resourceDetailsVL, resourceInstanceReqDetailsVL); - String resourceInstanceUpdatedName = ""; - String resourceInstancePreviousName = resourceDetailsCP.getName(); - - // add second resource instance - RestResponse response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetailsCP, - sdncDesignerDetails1, resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - resourceInstanceReqDetailsCP.setName(resourceInstanceUpdatedName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails1, resourceVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - assertEquals("Check response code after RI update request", 200, - updateResourceInstanceResponse.getErrorCode().intValue()); - // change request - // ErrorInfo errorInfo = - // Utils.parseYaml(ActionStatus.MISSING_COMPONENT_NAME.name()); - // utils.validateResponseCode(updateResourceInstanceResponse, - // errorInfo.getCode(), "update resource instance"); - // - // List<String> variables = Arrays.asList("Resource Instance"); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_COMPONENT_NAME.name(), - // variables, updateResourceInstanceResponse.getResponse()); - - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsVL.getName() + " 1"); - resourceInstanceExpectedListName.add(resourceInstancePreviousName + " 3"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void updatedResourceNameLengthExceedMaximumCharacters() throws Exception { - - String resourceInstancePreviousName = resourceDetailsCP.getName(); - // update resource instance name - String resourceInstanceUpdatedName = "a"; - for (int i = 0; i < maxLength; i++) { - resourceInstanceUpdatedName += "b"; - } - // ResourceReqDetails updatedResourceDetailsVL = - // changeResouceName(resourceDetailsVL, resourceInstanceUpdatedName); - - createVFWithCertifiedResourceInstance(resourceDetailsVL, resourceInstanceReqDetailsVL); - // add second resource instance - RestResponse response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetailsCP, - sdncDesignerDetails1, resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - String prevName = resourceInstanceReqDetailsCP.getName(); - resourceInstanceReqDetailsCP.setName(resourceInstanceUpdatedName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails1, resourceVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name()); - // utils.validateResponseCode(updateResourceInstanceResponse, - // errorInfo.getCode(), "update resource instance"); - - List<String> variables = Arrays.asList("Resource Instance", "50"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT.name(), variables, - updateResourceInstanceResponse.getResponse()); - - resourceInstanceReqDetailsCP.setName(prevName); - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsVL.getName() + " 1"); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsCP.getName() + " 2"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - @Test - public void updatedResourceNameWithUnSupportedCharacters() throws Exception { - - createVFWithCertifiedResourceInstance(resourceDetailsVL, resourceInstanceReqDetailsVL); - String resourceInstancePreviousName = resourceDetailsCP.getName(); - // update resource instance name - String resourceInstanceUpdatedName = "a???<>"; - - // add second resource instance - RestResponse response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetailsCP, - sdncDesignerDetails1, resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - String prevValue = resourceInstanceReqDetailsCP.getName(); - resourceInstanceReqDetailsCP.setName(resourceInstanceUpdatedName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails1, resourceVF.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_COMPONENT_NAME.name()); - // ResourceRestUtils.validateResponseCode(updateResourceInstanceResponse, - // errorInfo.getCode(), "update resource instance"); - - List<String> variables = Arrays.asList("Resource Instance"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_COMPONENT_NAME.name(), variables, - updateResourceInstanceResponse.getResponse()); - - resourceInstanceReqDetailsCP.setName(prevValue); - - // validate RI name - List<ComponentInstance> resourceInstances = resourceVF.getComponentInstances(); - List<String> resourceInstanceListName = new ArrayList<String>(); - for (int i = 0; i < resourceInstances.size(); i++) { - resourceInstanceListName.add(resourceInstances.get(i).getName()); - } - List<String> resourceInstanceExpectedListName = new ArrayList<String>(); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsVL.getName() + " 1"); - resourceInstanceExpectedListName.add(resourceInstanceReqDetailsCP.getName() + " 2"); - String message = "resource instance name"; - Utils.compareArrayLists(resourceInstanceListName, resourceInstanceExpectedListName, message); - - } - - private static ResourceReqDetails changeResouceName(ResourceReqDetails resourceDet, - String resourceInstanceUpdatedName) throws Exception { - - ResourceReqDetails updatedResourceDetails = new ResourceReqDetails(); - updatedResourceDetails = resourceDet; - updatedResourceDetails.setName(resourceInstanceUpdatedName); - List<String> tags = new ArrayList<String>(); - tags.add(resourceInstanceUpdatedName); - updatedResourceDetails.setTags(tags); - Gson gson = new Gson(); - String updatedResourceBodyJson = gson.toJson(updatedResourceDetails); - RestResponse response = LifecycleRestUtils.changeResourceState(resourceDet, sdncDesignerDetails1, - resourceDet.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertTrue("change LS state to CHECKOUT, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - response = ResourceRestUtils.updateResourceMetadata(updatedResourceBodyJson, sdncDesignerDetails1, - updatedResourceDetails.getUniqueId()); - assertEquals("Check response code after updateresource name", 200, response.getErrorCode().intValue()); - response = LifecycleRestUtils.changeResourceState(updatedResourceDetails, sdncDesignerDetails1, - resourceDet.getVersion(), LifeCycleStatesEnum.CHECKIN); - - return updatedResourceDetails; - - } - - // private Component changeResouceName(Resource resourceDet, String - // resourceInstanceUpdatedName) throws Exception{ - // - // User defaultUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // Resource updatedResourceDetails = resourceDet; - // RestResponse response = - // LifecycleRestUtils.changeComponentState(updatedResourceDetails, - // defaultUser, LifeCycleStatesEnum.CHECKOUT, "state changed"); - // assertTrue("change LS state to CHECKOUT, returned status:" + - // response.getErrorCode(),response.getErrorCode() == 200); - // updatedResourceDetails.setName(resourceInstanceUpdatedName); - // List<String> tags = new ArrayList<String>(); - // tags.add(resourceInstanceUpdatedName); - // updatedResourceDetails.setTags(tags); - // Gson gson = new Gson(); - // ResourceReqDetails resourceReqDetails = new - // ResourceReqDetails(updatedResourceDetails); - // String updatedResourceBodyJson = gson.toJson(resourceReqDetails); - // response = ResourceRestUtils.updateResource(updatedResourceBodyJson, - // defaultUser, updatedResourceDetails.getUniqueId()); - // assertEquals("Check response code after updateresource name", 200, - // response.getErrorCode().intValue()); - // response = - // LifecycleRestUtils.changeComponentState(updatedResourceDetails, - // defaultUser, LifeCycleStatesEnum.CHECKIN, "state changed"); - // assertEquals("Check response code after updateresource name", 200, - // response.getErrorCode().intValue()); - // - // return updatedResourceDetails; - // - // } - - private void createVFWithCertifiedResourceInstance(ResourceReqDetails resourceDetails, - ComponentInstanceReqDetails resourceInstanceReqDetails) throws Exception { - - RestResponse response = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails1, - resourceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals("Check response code after CHECKOUT", 200, response.getErrorCode().intValue()); - - // add heat artifact to resource and certify - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails1, - resourceDetails.getUniqueId()); - assertTrue("add HEAT artifact to resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - response = LifecycleRestUtils.certifyResource(resourceDetails); - assertEquals("Check response code after CERTIFY request", 200, response.getErrorCode().intValue()); - - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - - resourceInstanceReqDetails.setComponentUid(resourceDetails.getUniqueId()); - response = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, sdncDesignerDetails1, - resourceVF); - assertEquals("Check response code after create RI", 201, response.getErrorCode().intValue()); - - resourceVF = convertResourceGetResponseToJavaObject(resourceDetailsVF); - } - - protected Resource convertResourceGetResponseToJavaObject(ResourceReqDetails resourceDetails) throws IOException { - RestResponse response = ResourceRestUtils.getResource(resourceDetails, sdncDesignerDetails1); - assertEquals("Check response code after get resource", 200, response.getErrorCode().intValue()); - return ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ValidateExtendedVfData.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ValidateExtendedVfData.java deleted file mode 100644 index 37e7539fd9..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/ValidateExtendedVfData.java +++ /dev/null @@ -1,315 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.List; - -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.json.simple.JSONValue; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.AssocType; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import fj.data.Either; - -public class ValidateExtendedVfData extends ComponentBaseTest { - - protected Resource resourceDetailsVF; - protected Resource resourceDetailsCP_01; - protected Resource resourceDetailsVL_01; - protected Resource resourceDetailsVFCcomp; - - protected User sdncUserDetails; - - @Rule - public static TestName name = new TestName(); - - public ValidateExtendedVfData() { - super(name, ValidateExtendedVfData.class.getName()); - } - - @BeforeMethod - public void create() throws Exception { - - sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - Either<Resource, RestResponse> resourceDetailsVFe = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VF, UserRoleEnum.DESIGNER, true); - resourceDetailsVF = resourceDetailsVFe.left().value(); - Either<Resource, RestResponse> resourceDetailsCP_01e = AtomicOperationUtils - .createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.CP, NormativeTypesEnum.PORT, - ResourceCategoryEnum.GENERIC_DATABASE, UserRoleEnum.DESIGNER, true); - resourceDetailsCP_01 = resourceDetailsCP_01e.left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsCP_01, UserRoleEnum.DESIGNER, - true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_VOL, resourceDetailsCP_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_VOL, resourceDetailsCP_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_NET, resourceDetailsCP_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, resourceDetailsCP_01, UserRoleEnum.DESIGNER, - true, true); - AtomicOperationUtils.changeComponentState(resourceDetailsCP_01, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - Either<Resource, RestResponse> resourceDetailsVL_01e = AtomicOperationUtils - .createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VL, NormativeTypesEnum.NETWORK, - ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS, UserRoleEnum.DESIGNER, true); - resourceDetailsVL_01 = resourceDetailsVL_01e.left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVL_01, UserRoleEnum.DESIGNER, - true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_VOL, resourceDetailsVL_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_VOL, resourceDetailsVL_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT_NET, resourceDetailsVL_01, - UserRoleEnum.DESIGNER, true, true); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.OTHER, resourceDetailsVL_01, UserRoleEnum.DESIGNER, - true, true); - AtomicOperationUtils.changeComponentState(resourceDetailsVL_01, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - - Either<Resource, RestResponse> resourceDetailsVFCcompE = AtomicOperationUtils - .createResourcesByTypeNormTypeAndCatregory(ResourceTypeEnum.VFC, NormativeTypesEnum.COMPUTE, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, UserRoleEnum.DESIGNER, true); - resourceDetailsVFCcomp = resourceDetailsVFCcompE.left().value(); - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - - ComponentInstance resourceDetailsCP_01ins = AtomicOperationUtils - .addComponentInstanceToComponentContainer(resourceDetailsCP_01, resourceDetailsVF, - UserRoleEnum.DESIGNER, true) - .left().value(); - ComponentInstance resourceDetailsVL_01ins = AtomicOperationUtils - .addComponentInstanceToComponentContainer(resourceDetailsVL_01, resourceDetailsVF, - UserRoleEnum.DESIGNER, true) - .left().value(); - ComponentInstance resourceDetailsVFCcomp_ins = AtomicOperationUtils - .addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, resourceDetailsVF, - UserRoleEnum.DESIGNER, true) - .left().value(); - - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - AtomicOperationUtils.associate2ResourceInstances(resourceDetailsVF, resourceDetailsCP_01ins, - resourceDetailsVL_01ins, AssocType.LINKABLE.getAssocType(), UserRoleEnum.DESIGNER, true); - AtomicOperationUtils.associate2ResourceInstances(resourceDetailsVF, resourceDetailsCP_01ins, - resourceDetailsVFCcomp_ins, AssocType.BINDABLE.getAssocType(), UserRoleEnum.DESIGNER, true); - - } - - @Test - public void getResourceLatestVersion() throws Exception { - - RestResponse response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("change LC state to CHECKIN, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - // resourceDetailsVF = - // AtomicOperationUtils.getResourceObject(resourceDetailsVF, - // UserRoleEnum.DESIGNER); - RestResponse getResourceLatestVersionResponse = ResourceRestUtils.getResourceLatestVersionList(sdncUserDetails); - assertTrue("response code is not 200, returned :" + getResourceLatestVersionResponse.getErrorCode(), - getResourceLatestVersionResponse.getErrorCode() == 200); - - List<Resource> resourceList = ResourceRestUtils - .restResponseToResourceObjectList(getResourceLatestVersionResponse.getResponse()); - Resource resource = ResourceRestUtils.getResourceObjectFromResourceListByUid(resourceList, - resourceDetailsVF.getUniqueId()); - - callAllCheckMethods(resource); - } - - @Test - public void getFollowedResources() throws Exception { - - RestResponse response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("change LC state to CHECKIN, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - // resourceDetailsVF = - // AtomicOperationUtils.getResourceObject(resourceDetailsVF, - // UserRoleEnum.DESIGNER); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - RestResponse getFollowedResourcesResponse = ResourceRestUtils.getFollowedList(sdncUserDetails); - String json = getFollowedResourcesResponse.getResponse(); - JSONObject jsonResp = (JSONObject) JSONValue.parse(json); - JSONArray resources = (JSONArray) jsonResp.get("resources"); - - List<Resource> resourceList = ResourceRestUtils.restResponseToResourceObjectList(resources.toString()); - Resource resource = ResourceRestUtils.getResourceObjectFromResourceListByUid(resourceList, - resourceDetailsVF.getUniqueId()); - // TODO if get followed list Api should return full object data? - // callAllCheckMethods(resource); - } - - @Test - public void lifeCycleChekInRequest() throws Exception { - - RestResponse response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("change LC state to CHECKIN, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - // resourceDetailsVF = - // AtomicOperationUtils.getResourceObject(resourceDetailsVF, - // UserRoleEnum.DESIGNER); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - callAllCheckMethods(resource); - } - - @Test - public void lifeCycleChekOutRequest() throws Exception { - - RestResponse response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("change LC state to CHECKIN, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKOUT); - assertTrue("change LC state to CHECKOUT, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - callAllCheckMethods(resource); - } - - @Test - public void lifeCycleRequestForCertification() throws Exception { - - RestResponse response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CHECKIN); - assertTrue("change LC state to CHECKIN, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - response = LifecycleRestUtils.changeComponentState(resourceDetailsVF, sdncUserDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertTrue("change LC state to CERTIFICATIONREQUEST, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - callAllCheckMethods(resource); - } - - @Test - public void lifeCycleCertificationRequest() throws Exception { - - RestResponse response = AtomicOperationUtils - .changeComponentState(resourceDetailsVF, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, false) - .getRight(); - assertTrue("change LC state to CERTIFY, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(response.getResponse()); - callAllCheckMethods(resource); - } - - @Test - public void checkGetResourceAfterCertificationRequest() throws Exception { - - RestResponse response = AtomicOperationUtils - .changeComponentState(resourceDetailsVF, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, false) - .getRight(); - assertTrue("change LC state to CERTIFY, returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - resourceDetailsVF = AtomicOperationUtils.getResourceObject(resourceDetailsVF, UserRoleEnum.DESIGNER); - - callAllCheckMethods(resourceDetailsVF); - } - - @Test - public void updateResourceMetadata() throws Exception { - - resourceDetailsVF.setDescription("stamStam"); - ResourceReqDetails resourceDetailsVFreqD = new ResourceReqDetails(resourceDetailsVF); - RestResponse updateResourceResponse = ResourceRestUtils.updateResourceMetadata(resourceDetailsVFreqD, - sdncUserDetails, resourceDetailsVF.getUniqueId()); - assertTrue("response code is not 200, returned :" + updateResourceResponse.getErrorCode(), - updateResourceResponse.getErrorCode() == 200); - - Resource resource = ResponseParser.convertResourceResponseToJavaObject(updateResourceResponse.getResponse()); - - callAllCheckMethods(resource); - } - - private void checkResourceInstances(Resource resource) { - assertNotNull("resource component Instances list is null ", resource.getComponentInstances()); - assertTrue("resource component Instances list is empty ", !resource.getComponentInstances().equals("")); - } - - private void checkResourceInstancesProperties(Resource resource) { - assertNotNull("component Instances properies list is null ", resource.getComponentInstancesProperties()); - assertTrue("component Instances properies list is empty ", - !resource.getComponentInstancesProperties().equals("")); - } - - private void checkResourceInstancesRelations(Resource resource) { - assertNotNull("component Instances Relations list is null ", resource.getComponentInstancesRelations()); - assertTrue("component Instances Relations list is empty ", - !resource.getComponentInstancesRelations().equals("")); - } - - private void checkResourceCapabilities(Resource resource) { - assertNotNull("component Instances Capabilities list is null ", resource.getCapabilities()); - assertTrue("component Instances Capabilities list is empty ", !resource.getCapabilities().equals("")); - } - - private void checkResourceRequirements(Resource resource) { - assertNotNull("component Instances Requirements list is null ", resource.getRequirements()); - assertTrue("component Instances Requirements list is empty ", !resource.getRequirements().equals("")); - } - - private void callAllCheckMethods(Resource resource) { - - checkResourceInstances(resource); - checkResourceInstancesProperties(resource); - checkResourceInstancesRelations(resource); - checkResourceCapabilities(resource); - checkResourceRequirements(resource); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VfComponentInstanceCRUDTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VfComponentInstanceCRUDTest.java deleted file mode 100644 index dddab57873..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/resource/VfComponentInstanceCRUDTest.java +++ /dev/null @@ -1,1795 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.resource; - -import static org.junit.Assert.assertTrue; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_ALREADY_EXISTS; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_DELETE; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_INVALID_CONTENT; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_NOT_FOUND; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.CapReqDef; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.CapabilityRequirementRelationship; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.RelationshipImpl; -import org.openecomp.sdc.be.model.RelationshipInfo; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class VfComponentInstanceCRUDTest extends ComponentInstanceBaseTest { - - @Rule - public static TestName name = new TestName(); - - public VfComponentInstanceCRUDTest() { - super(name, VfComponentInstanceCRUDTest.class.getName()); - } - - @BeforeMethod - public void before() throws Exception { - init(); - createComponents(); - } - - // CREATE Resource - private void createComponents() throws Exception { - createAtomicResource(resourceDetailsVFC_01); - LifecycleRestUtils.changeResourceState(resourceDetailsVFC_01, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsVFC_02); - LifecycleRestUtils.changeResourceState(resourceDetailsVFC_02, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsCP_01); - LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsCP_02); - LifecycleRestUtils.changeResourceState(resourceDetailsCP_02, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsVL_01); - LifecycleRestUtils.changeResourceState(resourceDetailsVL_01, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsVL_02); - LifecycleRestUtils.changeResourceState(resourceDetailsVL_02, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createVF(resourceDetailsVF_02); - } - - @Test - public void createVfcInstanceByDesigner() throws Exception { - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVFC_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test(enabled = false) // DE189419 - public void createInstanceOfVfToItself() throws Exception { - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVF_02); - createAtomicResourceInstance = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertTrue(createAtomicResourceInstance.getErrorCode() == STATUS_CODE_NOT_FOUND); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createVfcInstanceByAdmin() throws Exception { - User user = sdncAdminDetails; - createVF(resourceDetailsVF_01, user); - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_01, - resourceDetailsVFC_01, user); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_01, 1, 0); - } - - @Test - public void createCpInstance() throws Exception { - // Create CP instance - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createVlInstance() throws Exception { - // Create VL instance - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void updateResourceInstanceNameLessMaxLegth() throws Exception { - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("xxxxXthisXstringxisx49XcharcatersXlengthXxxxxxxxx"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - - } - - @Test - public void updateInstanceNameExceedMaxLegth() throws Exception { - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("xxxxXthisXstringxisx51XcharcatersXlengthXxxxxxxxxxx"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT, - updateResourceInstanceResponse.getErrorCode().intValue()); - } - - @Test - public void updateResourceInstanceNameHasMaxLegth() throws Exception { - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("xxxxXthisXstringxisx50XcharcatersXlengthXxxxxxxxxx"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - } - - @Test - public void resourceInstanceNameIsEmpty() throws Exception { - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - resourceInstanceReqDetails.setName(""); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "name"); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "1").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 1"), - instanceName); - } - - @Test - public void resourceInstanceNameIsNull() throws Exception { - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - resourceInstanceReqDetails.setName(null); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "name"); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "1").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 1"), - instanceName); - } - - @Test - public void resourceInstanceNameValidation01() throws Exception { - // 2 Instances - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "name"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "1").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 1"), - instanceName); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "normalizedName"); - instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "name"); - componentInstance = ResponseParser.parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), - ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "2").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", (resourceDetailsVFC_01.getName() + " 2"), - instanceName); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void resourceInstanceNameValidation02() throws Exception { - - // 2 Instances - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "name"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "1").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 1"), - instanceName); - resourceInstanceReqDetails = ElementFactory.getComponentResourceInstance(resourceDetailsCP_01); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "normalizedName"); - instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "name"); - componentInstance = ResponseParser.parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), - ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsCP_01.getName() + "2").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", (resourceDetailsCP_01.getName() + " 2"), - instanceName); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createVfcInstanceByTester() throws Exception { // Response 409 - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncTesterDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void createVfcInstance_UserIdIsEmpty() throws Exception { - - User sdncUserDetails = new User(); - sdncUserDetails.setUserId(""); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncUserDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void createVfcInstance_UserIdIsNonAsdcUser() throws Exception { - - User sdncUserDetails = new User(); - sdncUserDetails.setUserId("bt4567"); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncUserDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void createAllAtomicInstances() throws Exception { - - // Add to VF resource VFC, CP and VL instances - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCP_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 3, 0); - } - - @Test - public void createDefferentVfcInstances() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVFC_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createDefferentCpInstances() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCP_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createDefferentVLInstances() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVL_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createSeveralInstanceOfSameVFC() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVFC_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createSeveralInstanceOfSameVL() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVL_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createSeveralInstanceOfSameCP() throws Exception { - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCP_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void createInstanceOfCpToVfc() throws Exception { // Add to CP to VFC - // (not allowed) - - ComponentInstanceReqDetails resourceInstanceReqDetailsCP = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - ComponentInstanceReqDetails resourceInstanceReqDetailsVFC = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails, resourceInstanceReqDetailsVFC.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createInstanceVfcToCp() throws Exception { // (not allowed) - - ComponentInstanceReqDetails resourceInstanceReqDetailsCP = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - ComponentInstanceReqDetails resourceInstanceReqDetailsVFC = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsVFC, sdncDesignerDetails, resourceInstanceReqDetailsCP.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createInstanceVlToVfc() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetailsVL = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - ComponentInstanceReqDetails resourceInstanceReqDetailsVFC = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsVFC, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsVL, sdncDesignerDetails, resourceInstanceReqDetailsVFC.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createInstanceToNonSupportedComponentType() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetailsCP = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetailsCP, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE_INSTANCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_INVALID_CONTENT, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - // ("Create instance without position is allowed") - @Test - public void createInstanceOfVlWithoutPosXAndPosY() throws Exception { // instance - // does - // not - // have - // position - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - resourceInstanceReqDetails.setPosX(""); - resourceInstanceReqDetails.setPosY(""); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - // Create instance without position is allowed") - @Test - public void createInstanceOfVlWithPositionNull() throws Exception { // instance - // does - // not - // have - // position - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - resourceInstanceReqDetails.setPosX(null); - resourceInstanceReqDetails.setPosY(null); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void createResourceInstanceForNonCheckedOutVF() throws Exception { - - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncAdminDetails, - "0.1", LifeCycleStatesEnum.CHECKIN); - resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - AssertJUnit.assertEquals("Check response code after create user", STATUS_CODE_SUCCESS, - checkInResponse.getErrorCode().intValue()); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - createResourceInstanceResponse.getErrorCode().intValue()); - } - - @Test - public void createResourceInstanceVfCheckedOutByOtherUser() throws Exception { - - // Admin try to add RI to VF which is checked-Out By Designer - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncAdminDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void createResourceInstanceForNonExistingVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, "blablabla", ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - createResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - // Delete - @Test - public void deleteVfcInstanceByDesigner() throws Exception { - - // Create RI - RestResponse createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVFC_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String compInstId = ResponseParser.getUniqueIdFromResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = deleteAtomicInstanceForVF(compInstId, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(deleteResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void deleteVfcInstanceByAdmin() throws Exception { - createVF(resourceDetailsVF_01, sdncAdminDetails); - RestResponse createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_01, - resourceDetailsVL_01, sdncAdminDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String compInstId = ResponseParser.getUniqueIdFromResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_01, 1, 0); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = deleteAtomicInstanceForVF(compInstId, resourceDetailsVF_01, - sdncAdminDetails); - ResourceRestUtils.checkDeleteResponse(deleteResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_01, 0, 0); - } - - @Test - public void deleteCpInstance() throws Exception { - - RestResponse createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String compInstId = ResponseParser.getUniqueIdFromResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = deleteAtomicInstanceForVF(compInstId, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(deleteResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void deleteVlInstance() throws Exception { - - RestResponse createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String compInstId = ResponseParser.getUniqueIdFromResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = deleteAtomicInstanceForVF(compInstId, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(deleteResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - } - - @Test - public void deleteOneVlInstance() throws Exception { - - // RI-1 - RestResponse createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String compInstId = ResponseParser.getUniqueIdFromResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // RI-2 - createResourceInstanceResponse = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVL_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - // Delete Resource instance RI-1 - RestResponse deleteResourceInstanceResponse = deleteAtomicInstanceForVF(compInstId, resourceDetailsVF_02, - sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(deleteResourceInstanceResponse); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteVfcInstanceCheckedByOtherUser() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncTesterDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteInstanceNonSupportedComponentType() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE_INSTANCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_INVALID_CONTENT, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteInstanceFromNonVF() throws Exception { - // RI-1 - - ComponentInstanceReqDetails resourceInstanceVlReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceVlReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - // RI-2 - ComponentInstanceReqDetails resourceInstanceCplReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceCplReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance2 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance2, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - // Delete VL instance from CP instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceInstanceCplReqDetails.getUniqueId(), - resourceInstanceVlReqDetails.getUniqueId(), ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - } - - @Test - public void deleteNonExistingInstanceFromVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceVlReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceVlReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - resourceInstanceVlReqDetails.setUniqueId("1234567890"); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceVlReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteCpInstanceFromNonCheckOutVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceCpReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceCpReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, - "0.1", LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - checkInResponse.getErrorCode().intValue()); - resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceCpReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteVlInstanceFromNonCheckOutVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceVlReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceVlReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, - "0.1", LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - checkInResponse.getErrorCode().intValue()); - resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceVlReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteVfcInstanceFromNonCheckOutVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceVfcReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceVfcReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - RestResponse checkInResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, - "0.1", LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - checkInResponse.getErrorCode().intValue()); - resourceDetailsVF_02.setLifecycleState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - // Delete Resource instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceVfcReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteVlInstance_UserIdIsNonAsdcUser() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - // Delete Resource instance by non-ASDC User - User sdncUserDetails = new User(); - sdncUserDetails.setUserId("bt4567"); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncUserDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - deleteResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void deleteAlreadyDeletedInstance() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_DELETE, - deleteResourceInstanceResponse.getErrorCode().intValue()); - deleteCompInstReqCapFromExpected(componentInstance.getUniqueId()); - getComponentAndValidateRIs(resourceDetailsVF_02, 0, 0); - deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncDesignerDetails, - resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - deleteResourceInstanceResponse.getErrorCode().intValue()); - } - - @Test - public void reCreateDeletedInstance() throws Exception { - - // 2 Instances - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "name"); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "1").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 1"), - instanceName); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "normalizedName"); - instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "name"); - componentInstance = ResponseParser.parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), - ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "2").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", (resourceDetailsVFC_01.getName() + " 2"), - instanceName); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - // Delete one instance - RestResponse deleteResourceInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance( - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), resourceInstanceReqDetails.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_DELETE, - deleteResourceInstanceResponse.getErrorCode().intValue()); - deleteCompInstReqCapFromExpected(componentInstance.getUniqueId()); - // Create same instance again - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - instanceNormalizedName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), - "normalizedName"); - instanceName = ResponseParser.getValueFromJsonResponse(createResourceInstanceResponse.getResponse(), "name"); - componentInstance = ResponseParser.parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), - ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "3").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance Name ", (resourceDetailsVFC_01.getName() + " 3"), - instanceName); - - } - - // Update - @Test - public void updateVfcInstanceNameByDesigner() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("abcd"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, "abcd"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, "abcd"); - } - - @Test - public void updateVfcInstanceNameByAdmin() throws Exception { - User user = sdncAdminDetails; - createVF(resourceDetailsVF_01, user); - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncAdminDetails, resourceDetailsVF_01.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_01, 1, 0); - vfcResourceInstanceReqDetails.setName("ABCD E"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncAdminDetails, resourceDetailsVF_01.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, "abcde"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, "ABCD E"); - } - - @Test - public void updateInstanceNameAllowedCharacters() throws Exception { - // Allowed characters: Alphanumeric (a-zA-Z0-9), space (' '), underscore - // ('_'), dash ('-'), dot ('.')) - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("Abcd_1234567890-qwert-yuiop.zxcvb"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - // assertEquals("Check if RI normalizedName is correct ", - // riNormalizedName, "abcd_1234567890-qwert-yuiop.zxcv" ); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, "Abcd_1234567890-qwert-yuiop.zxcvb"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, - "abcd1234567890qwertyuiopzxcvb"); - - } - - @Test - public void updateVfcInstanceNameEmpty() throws Exception { - // see US534663 In case a designer removes the current resource instance - // name then BE has to generate again the "default" resource instance - // name - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = ""; - vfcResourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String instanceNormalizedName = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "name"); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "2").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", (resourceDetailsVFC_01.getName() + " 2"), - instanceName); - } - - @Test - public void updateVfcInstanceNameNull() throws Exception { - // see US534663 In case a designer removes the current resource instance - // name then BE has to generate again the "default" resource instance - // name - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = null; - vfcResourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - final String updateResponse = updateResourceInstanceResponse.getResponse(); - String instanceNormalizedName = ResponseParser.getValueFromJsonResponse(updateResponse, "normalizedName"); - String instanceName = ResponseParser.getValueFromJsonResponse(updateResponse, "name"); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", - (resourceDetailsVFC_01.getName() + "2").toLowerCase(), instanceNormalizedName); - AssertJUnit.assertEquals("check Resource Instance normalizedName ", (resourceDetailsVFC_01.getName() + " 2"), - instanceName); - } - - @Test - public void updateCpInstanceName() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("AbcD"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, "abcd"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, "AbcD"); - } - - @Test - public void updateVlInstanceName() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName("ABCD"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, "abcd"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, "ABCD"); - } - - @Test - public void updateInstanceNameToArleadyExistInstanceName02() throws Exception { - - // Create VFC instance - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance vfcComponentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(vfcComponentInstance, ComponentTypeEnum.RESOURCE); - // Create CP instance - ComponentInstanceReqDetails cpResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance cpComponentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(cpComponentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 2, 0); - cpResourceInstanceReqDetails.setName(vfcComponentInstance.getName()); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_ALREADY_EXISTS, - updateResourceInstanceResponse.getErrorCode().intValue()); - } - - @Test - public void updateInstanceNameMaxLength() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = "Qwertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl12345"; - vfcResourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, newName.toLowerCase()); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, newName); - } - - @Test - public void updateInstanceNameExceedMaxLength() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = "Qwertyuiop1234567890asdfAhjklzxcvbnmasdfghjkl123456"; - vfcResourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_COMPONENT_NAME_EXCEEDS_LIMIT, - updateResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void updateCpInstanceCheckedByOtherUser() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = "Qwertyuiop1234567890"; - resourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetails, sdncAdminDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - updateResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void UpdateVfcInstance_UserIdIsNonAsdcUser() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = "Qwertyuiop1234567890"; - resourceInstanceReqDetails.setName(newName); - User nonSdncUserDetails = new User(); - nonSdncUserDetails.setUserId("bt4567"); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetails, nonSdncUserDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_RESTRICTED_OPERATION, - updateResourceInstanceResponse.getErrorCode().intValue()); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - } - - @Test - public void UpdateResourceInstanceFormNonExistingVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - // LifecycleRestUtils.changeResourceState(resourceDetailsVL_01, - // sdncAdminDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String newName = "Qwertyuiop1234567890"; - resourceInstanceReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceReqDetails, sdncDesignerDetails, "blablabla", ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - updateResourceInstanceResponse.getErrorCode().intValue()); - } - - @Test - public void updateNonExistingInstanceFromVF() throws Exception { - - ComponentInstanceReqDetails resourceInstanceVlReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - resourceInstanceVlReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance1 = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance1, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - resourceInstanceVlReqDetails.setUniqueId("1234567890"); - // String newName= "Qwertyuiop1234567890"; - // resourceInstanceVlReqDetails.setName(newName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - resourceInstanceVlReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - updateResourceInstanceResponse.getErrorCode().intValue()); - } - - // Update - @Test - public void updateVfcInstanceNameAsVfName() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - vfcResourceInstanceReqDetails.setName(resourceDetailsVF_02.getName()); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String resourceNameFromJsonResponse = ResponseParser.getNameFromResponse(updateResourceInstanceResponse); - AssertJUnit.assertEquals(resourceNameFromJsonResponse, vfcResourceInstanceReqDetails.getName()); - String riNormalizedName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "normalizedName"); - String riName = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "name"); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riNormalizedName, - resourceDetailsVF_02.getName().toLowerCase()); - AssertJUnit.assertEquals("Check if RI normalizedName is correct ", riName, resourceDetailsVF_02.getName()); - } - - @Test - public void updateInstanceNameInvalidCharacters() throws Exception { - char invalidChars[] = { '~', '!', '$', '%', '^', '*', '(', ')', '"', '{', '}', '[', ']', '?', '>', '<', '/', - '|', '\\', ',' }; - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String newName = "Abcd1"; - String updateName; - for (int i = 0; i < invalidChars.length; i++) { - updateName = newName + invalidChars[i]; - vfcResourceInstanceReqDetails.setName(updateName); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_INVALID_CONTENT, - updateResourceInstanceResponse.getErrorCode().intValue()); - } - } - - // Update Position - @Test - public void updateVfcInstancePosition() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String updatePosX = "130"; - String updatePosY = "180"; - vfcResourceInstanceReqDetails.setPosX(updatePosX); - vfcResourceInstanceReqDetails.setPosY(updatePosY); - vfcResourceInstanceReqDetails.setName(null); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String posXFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posX"); - String posYFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - } - - @Test - public void updateVlInstancePosition() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVL_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String updatePosX = "130"; - String updatePosY = "180"; - vfcResourceInstanceReqDetails.setPosX(updatePosX); - vfcResourceInstanceReqDetails.setPosY(updatePosY); - vfcResourceInstanceReqDetails.setName(null); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String posXFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posX"); - String posYFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - } - - @Test - public void updateCpInstancePosition() throws Exception { - - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String updatePosX = "130"; - String updatePosY = "180"; - vfcResourceInstanceReqDetails.setPosX(updatePosX); - vfcResourceInstanceReqDetails.setPosY(updatePosY); - vfcResourceInstanceReqDetails.setName(null); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String posXFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posX"); - String posYFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - } - - @Test - public void updateInstancePositionNegativePosition() throws Exception { - - ComponentInstanceReqDetails cpResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstance componentInstance = ResponseParser - .parseToObjectUsingMapper(createResourceInstanceResponse.getResponse(), ComponentInstance.class); - addCompInstReqCapToExpected(componentInstance, ComponentTypeEnum.RESOURCE); - getComponentAndValidateRIs(resourceDetailsVF_02, 1, 0); - String updatePosX = "-100"; - String updatePosY = "-100"; - cpResourceInstanceReqDetails.setPosX(updatePosX); - cpResourceInstanceReqDetails.setPosY(updatePosY); - cpResourceInstanceReqDetails.setName(null); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String posXFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posX"); - String posYFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - } - - @Test - public void updateInstancesPositionSameLocationForBothInstances() throws Exception { - - ComponentInstanceReqDetails cpResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - ComponentInstanceReqDetails vfcResourceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(resourceDetailsVFC_01); - createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkCreateResponse(createResourceInstanceResponse); - String updatePosX = "100"; - String updatePosY = "500"; - vfcResourceInstanceReqDetails.setPosX(updatePosX); - vfcResourceInstanceReqDetails.setPosY(updatePosY); - vfcResourceInstanceReqDetails.setName(null); - cpResourceInstanceReqDetails.setPosX(updatePosX); - cpResourceInstanceReqDetails.setPosY(updatePosY); - cpResourceInstanceReqDetails.setName(null); - RestResponse updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - vfcResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - String posXFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posX"); - String posYFromJsonResponse = ResponseParser - .getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - updateResourceInstanceResponse = ComponentInstanceRestUtils.updateComponentInstance( - cpResourceInstanceReqDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), - ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(updateResourceInstanceResponse); - posXFromJsonResponse = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "posX"); - posYFromJsonResponse = ResponseParser.getValueFromJsonResponse(updateResourceInstanceResponse.getResponse(), - "posY"); - AssertJUnit.assertEquals(posXFromJsonResponse, updatePosX); - AssertJUnit.assertEquals(posYFromJsonResponse, updatePosY); - } - - @Test - public void createAllAtomicInstancesTestGetReqCapAPI_suc() throws Exception { - - // Add to VF resource VFC, CP and VL instances - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCP_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - - getVfResourceReqCapUsingAPI(3, 0, sdncDesignerDetails); - - } - - // END of Update - - @Test - public void createAllAtomicInstancesTestGetReqCapAPIfailed() throws Exception { - - // Add to VF resource VFC, CP and VL instances - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCP_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - resourceDetailsVF_02.setUniqueId("dummy"); - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncAdminDetails, - resourceDetailsVF_02); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, - getResourceResponse.getErrorCode().intValue()); - - } - - @Test - public void associateInVF() throws Exception { - - ResourceReqDetails resourceDetailsReq = ElementFactory.getDefaultResourceByType("SoftCompRouter", - NormativeTypesEnum.SOFTWARE_COMPONENT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, - sdncDesignerDetails.getUserId(), ResourceTypeEnum.VFC); // resourceType - // = VFC - ResourceReqDetails resourceDetailsCap = ElementFactory.getDefaultResourceByType("MyComput", - NormativeTypesEnum.COMPUTE, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VFC); // resourceType = VFC - createAtomicResource(resourceDetailsReq); - LifecycleRestUtils.changeResourceState(resourceDetailsReq, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsCap); - LifecycleRestUtils.changeResourceState(resourceDetailsCap, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - - RestResponse riReqR = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsReq, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(riReqR); - RestResponse riCapR = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsCap, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(riCapR); - - ComponentInstance riReq = ResponseParser.parseToObject(riReqR.getResponse(), ComponentInstance.class); - ComponentInstance riCap = ResponseParser.parseToObject(riCapR.getResponse(), ComponentInstance.class); - - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - resourceDetailsVF_02); - - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get("tosca.capabilities.Container"); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get("tosca.capabilities.Container"); - - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - requirementDef.setFromNode(riReq.getUniqueId()); - requirementDef.setToNode(riCap.getUniqueId()); - - RelationshipInfo pair = new RelationshipInfo(); - pair.setRequirementOwnerId(riReq.getUniqueId()); - pair.setCapabilityOwnerId(riCap.getUniqueId()); - pair.setRequirement("host"); - RelationshipImpl relationship = new RelationshipImpl(); - relationship.setType("tosca.capabilities.Container"); - pair.setRelationships(relationship); - pair.setCapabilityUid(capList.get(0).getUniqueId()); - pair.setRequirementUid(reqList.get(0).getUniqueId()); - List<CapabilityRequirementRelationship> relationships = new ArrayList<>(); - CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship(); - relationships.add(capReqRel); - capReqRel.setRelation(pair); - requirementDef.setRelationships(relationships); - - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - associateInstances.getErrorCode().intValue()); - - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - resourceDetailsVF_02); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - - List<RequirementDefinition> list = capReqDef.getRequirements().get("tosca.capabilities.Container"); - AssertJUnit.assertEquals("Check requirement", null, list); - - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF_02.getUniqueId(), ComponentTypeEnum.RESOURCE); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - dissociateInstances.getErrorCode().intValue()); - - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - resourceDetailsVF_02); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - - list = capReqDef.getRequirements().get("tosca.capabilities.Container"); - AssertJUnit.assertEquals("Check requirement", 1, list.size()); - - } - - @Test - public void testUnsatisfiedCpReqInVF() throws Exception { - - // Certify all the needed atomic resources - RestResponse response = LifecycleRestUtils.certifyResource(resourceDetailsVFC_02); - ResourceRestUtils.checkSuccess(response); - response = LifecycleRestUtils.certifyResource(resourceDetailsCP_01); - ResourceRestUtils.checkSuccess(response); - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, - resourceDetailsVF_02.getUniqueId()); - ResourceRestUtils.checkSuccess(response); - - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String compInstName = ResponseParser.getNameFromResponse(createAtomicResourceInstance); - String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - RestResponse submitForTesting = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, - sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - String[] variables = new String[] { resourceDetailsVF_02.getName(), "VF", "CP (Connection Point)", compInstName, - "requirement", "tosca.capabilities.network.Bindable", "fulfilled" }; - BaseValidationUtils.checkErrorResponse(submitForTesting, - ActionStatus.REQ_CAP_NOT_SATISFIED_BEFORE_CERTIFICATION, variables); - - createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsVF_02, resourceDetailsVFC_02, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String computeCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - fulfillCpRequirement(resourceDetailsVF_02, cpCompInstId, computeCompInstId, computeCompInstId, - sdncDesignerDetails, ComponentTypeEnum.RESOURCE); - - submitForTesting = LifecycleRestUtils.changeResourceState(resourceDetailsVF_02, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - BaseValidationUtils.checkSuccess(submitForTesting); - } - - private void getVfResourceReqCapUsingAPI(int numberOfRIs, int numberOfRelations, User user) - throws IOException, Exception { - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncAdminDetails, - resourceDetailsVF_02); - AssertJUnit.assertEquals("Check response code ", STATUS_CODE_SUCCESS, - getResourceResponse.getErrorCode().intValue()); - // ResourceValidationUtils.validateResp(getResourceResponse, - // resourceRespJavaObject); - // int numberOfActualRIs = resource.getComponentInstances()!=null ? - // resource.getComponentInstances().size() : 0; - // int numberOfActualRelations = - // resource.getComponentInstancesRelations()!=null ? - // resource.getComponentInstancesRelations().size() : 0; - // assertEquals("Check number of RIs meet the expected number", - // numberOfRIs ,numberOfActualRIs); - // assertEquals("Check number of RI relations meet the expected number", - // numberOfRelations ,numberOfActualRelations); - - //// get VF actual Capabilities and Requirements and validate according - //// to expected - Resource vfResource = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), - Resource.class); - verifyReqCap(vfResource); - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ChangeServiceDistributionStatusApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ChangeServiceDistributionStatusApiTest.java deleted file mode 100644 index c8a20cf44a..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ChangeServiceDistributionStatusApiTest.java +++ /dev/null @@ -1,1008 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.DistributionStatusEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ServiceValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class ChangeServiceDistributionStatusApiTest extends ComponentBaseTest { - - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - protected User sdncDesignerDetails; - protected User sdncAdminDetails; - protected User sdncGovernorDeatails; - protected User sdncTesterDetails; - protected User sdncOpsDetails; - protected ComponentInstanceReqDetails resourceInstanceReqDetails; - protected Component resourceDetailsVFCcomp; - protected Component serviceDetailsCompp; - - private String userRemarks = "commentTest"; - - private List<String> variablesAsList; - - @Rule - public static TestName name = new TestName(); - - public ChangeServiceDistributionStatusApiTest() throws Exception { - super(name, ChangeServiceDistributionStatusApiTest.class.getName()); - - } - - @BeforeMethod - public void init() throws Exception { - - variablesAsList = new ArrayList<String>(); - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncGovernorDeatails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - sdncTesterDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncOpsDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - resourceDetailsVFCcomp = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - true, true); - - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - Service serviceServ = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, serviceServ, - UserRoleEnum.DESIGNER, true); - - serviceDetails = new ServiceReqDetails(serviceServ); - - } - - // -----------------------------------------------T E S T - // S--------------------------------------------// - - @Test - public void approveNotCertifiedService_checkout() throws Exception { - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void approveNotCertifiedService_checkedin() throws Exception { - RestResponse checkinResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals(200, checkinResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.NOT_CERTIFIED_CHECKIN, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void approveNotCertifiedService_inProgress() throws Exception { - RestResponse certReqResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(200, certReqResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DApprove"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.READY_FOR_CERTIFICATION.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DApprove", LifecycleStateEnum.READY_FOR_CERTIFICATION, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - - } - - @Test - public void approveNotCertifiedService_readyForCer() throws Exception { - approveNotCertifiedService_inProgress(); - DbUtils.deleteFromEsDbByPattern("_all"); - - RestResponse startCertResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(200, startCertResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DApprove"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setDprevStatus(""); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFICATION_IN_PROGRESS, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void rejectNotCertifiedService_checkeout() throws Exception { - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT.name()); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setDprevStatus(""); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void rejectNotCertifiedService_checkedin() throws Exception { - RestResponse startCertResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - assertEquals(200, startCertResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name()); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setDprevStatus(""); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.NOT_CERTIFIED_CHECKIN, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void rejectNotCertifiedService_inProgress() throws Exception { - RestResponse startCertResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(200, startCertResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.READY_FOR_CERTIFICATION.name()); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setDprevStatus(""); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.READY_FOR_CERTIFICATION, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - } - - @Test - public void rejectNotCertifiedService_readyForCer() throws Exception { - rejectNotCertifiedService_inProgress(); - DbUtils.deleteFromEsDbByPattern("_all"); - - RestResponse startCertResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(200, startCertResp.getErrorCode().intValue()); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 403, serviceDetails.getVersion()); - - variablesAsList = Arrays.asList(serviceDetails.getVersion(), serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name(), - variablesAsList, changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // version, sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setDprevStatus(""); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setStatus("403"); - // expectedResourceAuditJavaObject.setDesc(String.format(errorInfo.getMessageId() - // + ": " + errorInfo.getMessage(), version, - // serviceDetails.getServiceName())); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFICATION_IN_PROGRESS, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - "403", ActionStatus.SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION, sdncAdminDetails); - - } - - @Test - public void approveCertifiedService_bysdncGovernorDeatails() throws Exception { - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncGovernorDeatails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(changeDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_APPROVED, null, null, sdncGovernorDeatails); - } - - @Test - public void approveCertifiedService_bysdncAdminDetails() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(changeDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_APPROVED, null, null, sdncAdminDetails); - } - - @Test - public void approveCertifiedService_byDesigner() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncDesignerDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.RESTRICTED_OPERATION.name()); - // String auditAction="DApprove"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncDesignerDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setStatus("409"); - // expectedResourceAuditJavaObject.setDesc(errorInfo.getMessageId() + ": - // " + errorInfo.getMessage()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncDesignerDetails); - } - - @Test - public void approveCertifiedService_byTester() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncTesterDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.RESTRICTED_OPERATION.name()); - // String auditAction="DApprove"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncTesterDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setStatus("409"); - // expectedResourceAuditJavaObject.setDesc(errorInfo.getMessageId() + ": - // " + errorInfo.getMessage()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncTesterDetails); - } - - @Test - public void approveCertifiedService_byOps() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncOpsDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncOpsDetails); - - } - - @Test - public void rejectCertifiedService_bysdncGovernorDeatails() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncGovernorDeatails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(changeDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_REJECTED); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_REJECTED); - - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncGovernorDeatails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setPrevState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_REJECTED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_REJECTED, null, null, sdncGovernorDeatails); - - } - - @Test - public void rejectCertifiedService_bysdncAdminDetails() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(changeDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_REJECTED); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_REJECTED); - - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncAdminDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setPrevState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_REJECTED.name()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_REJECTED, null, null, sdncAdminDetails); - } - - @Test - public void rejectCertifiedService_byDesigner() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncDesignerDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.RESTRICTED_OPERATION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncDesignerDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setPrevState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setStatus("409"); - // expectedResourceAuditJavaObject.setDesc(errorInfo.getMessageId() + ": - // " + errorInfo.getMessage()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncDesignerDetails); - } - - @Test - public void rejectCertifiedService_byTester() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncTesterDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.RESTRICTED_OPERATION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncTesterDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setPrevState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setStatus("409"); - // expectedResourceAuditJavaObject.setDesc(errorInfo.getMessageId() + ": - // " + errorInfo.getMessage()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncTesterDetails); - } - - @Test - public void rejectCertifiedService_byOps() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncOpsDetails, 409, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - // ErrorInfo errorInfo = - // utils.parseYaml(ActionStatus.RESTRICTED_OPERATION.name()); - // String auditAction="DReject"; - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(certifyService, - // certifyService.getVersion(), sdncOpsDetails); - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setResourceType("Service"); - // expectedResourceAuditJavaObject.setCurrState(LifecycleStateEnum.CERTIFIED.name()); - // expectedResourceAuditJavaObject.setPrevState(LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name()); - // expectedResourceAuditJavaObject.setDprevStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setDcurrStatus(DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name()); - // expectedResourceAuditJavaObject.setStatus("409"); - // expectedResourceAuditJavaObject.setDesc(errorInfo.getMessageId() + ": - // " + errorInfo.getMessage()); - // expectedResourceAuditJavaObject.setComment(userRemarks); - // expectedResourceAuditJavaObject.setPrevVersion("0.1"); - // - // AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, - // auditAction); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, - DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED, "409", ActionStatus.RESTRICTED_OPERATION, - sdncOpsDetails); - } - - @Test - public void approveServiceNotFound() throws Exception { - String previuosId = serviceDetails.getUniqueId(); - serviceDetails.setUniqueId("dummyId"); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 404, serviceDetails.getVersion()); - serviceDetails.setUniqueId(previuosId); - - variablesAsList = Arrays.asList("dummyId"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), variablesAsList, - changeDistStatusAndValidate.getResponse()); - - } - - @Test - public void rejectServiceNotFound() throws Exception { - String previuosId = serviceDetails.getUniqueId(); - serviceDetails.setUniqueId("dummyId"); - - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 404, serviceDetails.getVersion()); - serviceDetails.setUniqueId(previuosId); - - variablesAsList = Arrays.asList("dummyId"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), variablesAsList, - changeDistStatusAndValidate.getResponse()); - - } - - @Test - public void rejectService_emptyComment() throws Exception { - userRemarks = ""; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - } - - @Test - public void rejectService_nullComment() throws Exception { - userRemarks = null; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - } - - @Test - public void rejectService_spaceComment() throws Exception { - userRemarks = " "; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - } - - @Test - public void approveService_emptyComment() throws Exception { - userRemarks = ""; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - } - - @Test - public void approveService_nullComment() throws Exception { - userRemarks = null; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - } - - @Test - public void approveService_spaceComment() throws Exception { - userRemarks = " "; - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse changeDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 400, certifyService.getVersion()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_CONTENT.name(), new ArrayList<String>(), - changeDistStatusAndValidate.getResponse()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED); - - } - - @Test - public void distributionStatusChange_approve_Reject_AprroveBysdncAdminDetails() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - - RestResponse approveDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncGovernorDeatails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(approveDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse rejectDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_REJECTED, sdncGovernorDeatails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(rejectDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_REJECTED); - - validateAudit("DReject", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_APPROVED, - DistributionStatusEnum.DISTRIBUTION_REJECTED, null, null, sdncGovernorDeatails); - - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse secondApproveDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncAdminDetails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(secondApproveDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - validateAudit("DApprove", LifecycleStateEnum.CERTIFIED, DistributionStatusEnum.DISTRIBUTION_REJECTED, - DistributionStatusEnum.DISTRIBUTION_APPROVED, null, null, sdncAdminDetails); - - } - - @Test - public void distributeNotCertifiedServiceTest() throws Exception { - RestResponse approveDistStatusAndValidate = changeDistStatusAndValidate(DistributionStatusEnum.DISTRIBUTED, - sdncGovernorDeatails, 200, serviceDetails.getVersion()); - - RestResponse getService = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTED); - - } - - @Test - public void distributeCertifiedServiceTest() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse approveDistStatusAndValidate = changeDistStatusAndValidate(DistributionStatusEnum.DISTRIBUTED, - sdncGovernorDeatails, 200, certifyService.getVersion()); - - RestResponse getService = ServiceRestUtils.getService(certifyService, sdncDesignerDetails); - getDistrubtionStatusValue(getService, DistributionStatusEnum.DISTRIBUTED); - - } - - @Test - public void approveCheckedoutCertifiedServiceTest() throws Exception { - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - RestResponse approveDistStatusAndValidate = changeDistStatusAndValidate( - DistributionStatusEnum.DISTRIBUTION_APPROVED, sdncGovernorDeatails, 200, certifyService.getVersion()); - getDistrubtionStatusValue(approveDistStatusAndValidate, DistributionStatusEnum.DISTRIBUTION_APPROVED); - - RestResponse checkoutResp = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - assertEquals(200, checkoutResp.getErrorCode().intValue()); - // Utils r = new Utils(); - - String distributionStatus = ResponseParser.getValueFromJsonResponse(checkoutResp.getResponse(), - "distributionStatus"); - // Utils r1 = new Utils(); - String lifecycleState = ResponseParser.getValueFromJsonResponse(checkoutResp.getResponse(), "lifecycleState"); - - assertTrue("NOT_CERTIFIED_CHECKOUT".equals(lifecycleState)); - assertTrue("DISTRIBUTION_NOT_APPROVED".equals(distributionStatus)); - } - - private RestResponse changeDistStatusAndValidate(DistributionStatusEnum distStatus, User user, int errorCode, - String serviceVersion) throws Exception { - RestResponse distributionResponse = LifecycleRestUtils.changeDistributionStatus(serviceDetails, serviceVersion, - user, userRemarks, distStatus); - assertNotNull(distributionResponse); - assertNotNull(distributionResponse.getErrorCode()); - assertEquals(errorCode, distributionResponse.getErrorCode().intValue()); - - if (userRemarks == " " || userRemarks == null) { - userRemarks = ""; - } - - return distributionResponse; - } - - private void getDistrubtionStatusValue(RestResponse response, DistributionStatusEnum expectedDistributionValue) - throws Exception { - String actualDistributionValue = ResponseParser.getValueFromJsonResponse(response.getResponse(), - "distributionStatus"); - assertEquals(expectedDistributionValue.name(), actualDistributionValue); - } - - private void validateAudit(String Action, LifecycleStateEnum currState, DistributionStatusEnum dPrevStatus, - DistributionStatusEnum dCurrStatus, String status, ActionStatus errorInfoFromFile, User user) - throws Exception { - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceDetails.getVersion(), user); - expectedResourceAuditJavaObject.setAction(Action); - expectedResourceAuditJavaObject.setResourceType("Service"); - expectedResourceAuditJavaObject.setCurrState(currState.name()); - expectedResourceAuditJavaObject.setDprevStatus(dPrevStatus.name()); - expectedResourceAuditJavaObject.setDcurrStatus(dCurrStatus.name()); - expectedResourceAuditJavaObject.setComment(userRemarks); - expectedResourceAuditJavaObject.setDesc("OK"); - - if (errorInfoFromFile != null) { - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(errorInfoFromFile.name()); - expectedResourceAuditJavaObject - .setDesc(AuditValidationUtils.buildAuditDescription(errorInfo, variablesAsList)); - } - - if (status != null) - expectedResourceAuditJavaObject.setStatus(status); - - if (currState != LifecycleStateEnum.CERTIFIED) { - expectedResourceAuditJavaObject.setModifierName(""); - } - - AuditValidationUtils.validateAuditDistribution(expectedResourceAuditJavaObject, Action); - } - - // private ServiceReqDetails certifyService() throws Exception - // { - // ServiceReqDetails certifyService = - // LifecycleRestUtils.certifyService(serviceDetails, - // serviceDetails.getVersion(), sdncAdminDetails); - //// version = certifyService.getVersion(); - // - // return certifyService; - // } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/CreateServiceMetadataApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/CreateServiceMetadataApiTest.java deleted file mode 100644 index 56cfeb54ea..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/CreateServiceMetadataApiTest.java +++ /dev/null @@ -1,1300 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import org.json.JSONObject; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.config.Config; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ProductReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedResourceAuditJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpHeaderEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.Utils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ServiceValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.Test; - -import com.fasterxml.jackson.annotation.JsonIgnore; - -public class CreateServiceMetadataApiTest extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(CreateServiceMetadataApiTest.class.getName()); - - String serviceBaseVersion = "0.1"; - - @Rule - public static TestName name = new TestName(); - - public CreateServiceMetadataApiTest() { - super(name, CreateServiceMetadataApiTest.class.getName()); - } - - @Test - public void createDefaultService() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // String creator = - // ElementFactory.getDefaultUser(UserRoleEnum.ADMIN).getUserId(); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", 201, restResponse.getErrorCode().intValue()); - - // validate create service response vs actual - - Service service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, service, sdncUserDetails, - (LifecycleStateEnum) null); - - // validate get service response vs actual - restResponse = ServiceRestUtils.getService(serviceDetails, sdncUserDetails); - service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, service, sdncUserDetails, - (LifecycleStateEnum) null); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createDefaultServiceUserDesigner() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", 201, restResponse.getErrorCode().intValue()); - - // validate create service response vs actual - - Service service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, service, sdncUserDetails, - (LifecycleStateEnum) null); - - // validate get service response vs actual - restResponse = ServiceRestUtils.getService(serviceDetails, sdncUserDetails); - service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceUserNotFound() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncUserDetails.setUserId("no1234"); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - restResponse.getResponse()); - - // validate audit - - sdncUserDetails.setFirstName(""); - sdncUserDetails.setLastName(""); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setModifierName(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceUserNotAllowed() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setCurrState(""); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceEmptyName() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - String serviceName = ""; - serviceDetails.setName(serviceName); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_COMPONENT_NAME.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_COMPONENT_NAME.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceEmptyCategory() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - String category = ""; - - serviceDetails.setCategories(null); - // serviceDetails.addCategory(category); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_CATEGORY.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_CATEGORY.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceEmptyTag() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ArrayList<String> tags = new ArrayList<String>(); - tags.add(""); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setTags(tags); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FIELD_FORMAT.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service", "tag"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceEmptyDescription() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - String description = ""; - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setDescription(description); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_MISSING_DESCRIPTION.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceEmptyTags() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ArrayList<String> tags = new ArrayList<String>(); - tags.add(""); - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setTags(tags); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_FIELD_FORMAT.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service", "tag"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.INVALID_FIELD_FORMAT.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceByPutHttpMethod() throws Exception { - - String method = "PUT"; - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - - RestResponse restResponse = ServiceRestUtils.createServiceByHttpMethod(serviceDetails, sdncUserDetails, method, - Urls.CREATE_SERVICE); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.NOT_ALLOWED.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - restResponse.getResponse()); - - // //validate audit - // - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // resourceUtils.constructFieldsForAuditValidation(serviceDetails, - // serviceBaseVersion, sdncUserDetails); - // - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - // - // String auditDesc = - // AuditValidationUtils.buildAuditDescription(errorInfo, variables); - // expectedResourceAuditJavaObject.setDesc(auditDesc); - // - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction); - - } - - @Test - public void createServiceByDeleteHttpMethod() throws Exception { - - String method = "DELETE"; - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - - RestResponse restResponse = ServiceRestUtils.createServiceByHttpMethod(serviceDetails, sdncUserDetails, method, - Urls.CREATE_SERVICE); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.NOT_ALLOWED.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.NOT_ALLOWED.name(), variables, - restResponse.getResponse()); - - // //validate audit - // - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // resourceUtils.constructFieldsForAuditValidation(serviceDetails, - // serviceBaseVersion, sdncUserDetails); - // - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setAction(auditAction); - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - // - // String auditDesc = - // AuditValidationUtils.buildAuditDescription(errorInfo, variables); - // expectedResourceAuditJavaObject.setDesc(auditDesc); - // - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction); - - } - - @Test - public void createServiceTagLengthExceedLimit() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - StringBuffer tagBuffer = new StringBuffer(); - for (int i = 0; i < 1025; i++) { - tagBuffer.append("a"); - } - ArrayList<String> tags = new ArrayList<String>(); - tags.add(tagBuffer.toString()); - serviceDetails.setTags(tags); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_SINGLE_TAG_EXCEED_LIMIT.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("50"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_SINGLE_TAG_EXCEED_LIMIT.name(), variables, - restResponse.getResponse()); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc("50")); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - /* - * ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - * ServiceValidationUtils.constructFieldsForAuditValidation( - * serviceDetails, serviceBaseVersion, sdncUserDetails); - * - * String auditAction="Create"; - * expectedResourceAuditJavaObject.setAction(auditAction); - * expectedResourceAuditJavaObject.setPrevState(""); - * expectedResourceAuditJavaObject.setPrevVersion(""); - * expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum. - * NOT_CERTIFIED_CHECKOUT).toString()); - * expectedResourceAuditJavaObject.setStatus(errorInfo.getCode(). - * toString()); expectedResourceAuditJavaObject.setDesc(auditDesc); - * - * AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - * auditAction, null); - */ - - } - - @Test - public void createServiceAlreadyExistException() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // create service with the same name - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - - // validate create service response vs actual - - List<String> variables = Arrays.asList("Service", serviceDetails.getName()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.COMPONENT_NAME_ALREADY_EXIST.name(), variables, - restResponse.getResponse()); - - // validate audit - - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void createServiceWrongContactId() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setContactId("123as"); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.COMPONENT_INVALID_CONTACT.name()); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", errorInfo.getCode(), restResponse.getErrorCode()); - } - - @Test - public void createServiceProjectName() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setProjectCode("12345"); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - Integer expectedCode = 201; - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", expectedCode, restResponse.getErrorCode()); - Service service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - - assertEquals("12345", service.getProjectCode()); - } - - @Test - public void createAndGetByNameAndVersion() throws Exception { - - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - // create - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - assertEquals("Check response code after create service", 201, restResponse.getErrorCode().intValue()); - - // get - restResponse = ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, serviceDetails.getName(), - serviceBaseVersion); - assertEquals("Check response code after get service", 200, restResponse.getErrorCode().intValue()); - - Service service = ResponseParser.convertServiceResponseToJavaObject(restResponse.getResponse()); - String uniqueId = service.getUniqueId(); - serviceDetails.setUniqueId(uniqueId); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, service, sdncUserDetails, - (LifecycleStateEnum) null); - } - - //// US553874 - - @JsonIgnore - @Test - public void createServiceIsVNF_isFalse() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after updating Interface Artifact", 201, - restResponse.getErrorCode().intValue()); - - // get service and verify that service created with isVNF defined in - // serviceDetails - RestResponse serviceByNameAndVersion = ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - serviceDetails.getName(), serviceBaseVersion); - Service serviceObject = ResponseParser - .convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, serviceObject, sdncUserDetails, - LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @JsonIgnore - @Test - public void createServiceIsVNF_isTrue() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after updating Interface Artifact", 201, - restResponse.getErrorCode().intValue()); - - // get service and verify that service created with isVNF defined in - // serviceDetails - RestResponse serviceByNameAndVersion = ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - serviceDetails.getName(), serviceBaseVersion); - Service serviceObject = ResponseParser - .convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, serviceObject, sdncUserDetails, - LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - - // validate audit - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setDesc("OK"); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @JsonIgnore - @Test(enabled = false) - public void createServiceIsVNF_isNull() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - // clean audit DB before service creation - DbUtils.cleanAllAudits(); - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - assertNotNull("check response object is not null after create service", restResponse); - assertEquals("Check response code after updating Interface Artifact", 400, - restResponse.getErrorCode().intValue()); - List<String> variables = Arrays.asList("VNF Service Indicator"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_DATA.name(), variables, - restResponse.getResponse()); - - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc("VNF Service Indicator")); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - } - - @JsonIgnore - @Test(enabled = false) - public void createServiceEmptyIsVNF() throws Exception { - - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - - DbUtils.cleanAllAudits(); - - // send create service toward BE - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - - assertNotNull("check response object is not null after create service", restResponse); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after create service", restResponse.getErrorCode(), - restResponse.getErrorCode()); - - // validate create service response vs actual - List<String> variables = Arrays.asList("VNF Service Indicator"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_DATA.name(), variables, - restResponse.getResponse()); - - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, serviceBaseVersion, sdncUserDetails); - - String auditAction = "Create"; - expectedResourceAuditJavaObject.setAction(auditAction); - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - String auditDesc = AuditValidationUtils.buildAuditDescription(errorInfo, variables); - expectedResourceAuditJavaObject.setDesc(auditDesc); - - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - private RestResponse createServiceWithMissingAttribute(String serviceDetails, User sdncModifierDetails) - throws Exception { - - Config config = Utils.getConfig(); - - Map<String, String> headersMap = ServiceRestUtils.prepareHeadersMap(sdncModifierDetails, false); - headersMap.put(HttpHeaderEnum.CACHE_CONTROL.getValue(), "no-cache"); - - HttpRequest http = new HttpRequest(); - String url = String.format(Urls.CREATE_SERVICE, config.getCatalogBeHost(), config.getCatalogBePort()); - // TODO: ADD AUTHENTICATION IN REQUEST - logger.debug(url); - logger.debug("Send POST request to create service: {}", url); - logger.debug("Service body: {}", serviceDetails); - logger.debug("Service headers: {}", headersMap); - RestResponse sendCreateUserRequest = http.httpSendPost(url, serviceDetails, headersMap); - - return sendCreateUserRequest; - - } - - @JsonIgnore - @Test(enabled = false) - public void createServiceVersion_isVNFDoesNotExistInJson() throws Exception { - - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // clean audit DB before updating service - DbUtils.cleanAllAudits(); - - // remove isVNF from json sent to create service - JSONObject jObject = new JSONObject(serviceDetails); - jObject.remove("VNF"); - - // send create service toward BE - RestResponse restResponse = createServiceWithMissingAttribute(jObject.toString(), sdncUserDetails); - assertNotNull("check error code exists in response after create service", restResponse.getErrorCode()); - assertEquals("Check response code after updating Interface Artifact", 400, - restResponse.getErrorCode().intValue()); - List<String> variables = new ArrayList<String>(); - variables.add("VNF Service Indicator"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_DATA.name(), variables, - restResponse.getResponse()); - - // validate audit - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.MISSING_DATA.name()); - ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = ServiceValidationUtils - .constructFieldsForAuditValidation(serviceDetails, "0.1", sdncUserDetails); - String auditAction = "Create"; - expectedResourceAuditJavaObject.setPrevState(""); - expectedResourceAuditJavaObject.setPrevVersion(""); - expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - expectedResourceAuditJavaObject.setStatus(errorInfo.getCode().toString()); - expectedResourceAuditJavaObject.setDesc(errorInfo.getAuditDesc("VNF Service Indicator")); - AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, auditAction, null, false); - - } - - @Test - public void checkInvariantUuidIsImmutable() throws Exception { - // choose the user to create service - User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - Component resourceDetailsVFCcomp = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.ADMIN, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVFCcomp, UserRoleEnum.ADMIN, - true, true); - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.ADMIN, - LifeCycleStatesEnum.CERTIFY, true); - - // fill new service details - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - String invariantUuidDefinedByUser = "!!!!!!!!!!!!!!!!!!!!!!!!"; - serviceDetails.setInvariantUUID(invariantUuidDefinedByUser); - - // create service - RestResponse restResponseCreation = ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - BaseRestUtils.checkStatusCode(restResponseCreation, "create request failed", false, 201); - Service service = ResponseParser.convertServiceResponseToJavaObject(restResponseCreation.getResponse()); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, service, - UserRoleEnum.ADMIN, true); - - String invariantUUIDcreation = service.getInvariantUUID(); - - // validate get service response vs actual - RestResponse restResponseGetting = ServiceRestUtils.getService(serviceDetails, sdncUserDetails); - BaseRestUtils.checkSuccess(restResponseGetting); - service = ResponseParser.convertServiceResponseToJavaObject(restResponseGetting.getResponse()); - String invariantUUIDgetting = service.getInvariantUUID(); - - assertEquals(invariantUUIDcreation, invariantUUIDgetting); - - // Update service with new invariant UUID - RestResponse restResponseUpdate = ServiceRestUtils.updateService(serviceDetails, sdncUserDetails); - BaseRestUtils.checkSuccess(restResponseUpdate); - Service updatedService = ResponseParser.convertServiceResponseToJavaObject(restResponseUpdate.getResponse()); - String invariantUUIDupdating = updatedService.getInvariantUUID(); - assertEquals(invariantUUIDcreation, invariantUUIDupdating); - - // Do checkin - RestResponse restResponseCheckin = LifecycleRestUtils.changeServiceState(serviceDetails, sdncUserDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKIN); - BaseRestUtils.checkSuccess(restResponseCheckin); - Service checkinService = ResponseParser.convertServiceResponseToJavaObject(restResponseCheckin.getResponse()); - String invariantUUIDcheckin = checkinService.getInvariantUUID(); - String version = checkinService.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcheckin); - assertEquals(version, "0.1"); - - // Do checkout - RestResponse restResponseCheckout = LifecycleRestUtils.changeServiceState(serviceDetails, sdncUserDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CHECKOUT); - BaseRestUtils.checkSuccess(restResponseCheckout); - Service checkoutService = ResponseParser.convertServiceResponseToJavaObject(restResponseCheckout.getResponse()); - String invariantUUIDcheckout = checkoutService.getInvariantUUID(); - version = checkoutService.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcheckout); - assertEquals(version, "0.2"); - - // do certification request - RestResponse restResponseCertificationRequest = LifecycleRestUtils.changeServiceState(serviceDetails, - sdncUserDetails, serviceDetails.getVersion(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - BaseRestUtils.checkSuccess(restResponseCertificationRequest); - Service certificationRequestService = ResponseParser - .convertServiceResponseToJavaObject(restResponseCertificationRequest.getResponse()); - String invariantUUIDcertificationRequest = certificationRequestService.getInvariantUUID(); - version = certificationRequestService.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcertificationRequest); - assertEquals(version, "0.2"); - - // start certification - RestResponse restResponseStartCertification = LifecycleRestUtils.changeServiceState(serviceDetails, - sdncUserDetails, serviceDetails.getVersion(), LifeCycleStatesEnum.STARTCERTIFICATION); - BaseRestUtils.checkSuccess(restResponseStartCertification); - Service startCertificationRequestService = ResponseParser - .convertServiceResponseToJavaObject(restResponseStartCertification.getResponse()); - String invariantUUIDStartCertification = startCertificationRequestService.getInvariantUUID(); - version = startCertificationRequestService.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDStartCertification); - assertEquals(version, "0.2"); - - // certify - RestResponse restResponseCertify = LifecycleRestUtils.changeServiceState(serviceDetails, sdncUserDetails, - serviceDetails.getVersion(), LifeCycleStatesEnum.CERTIFY); - BaseRestUtils.checkSuccess(restResponseCertify); - Service certifyService = ResponseParser.convertServiceResponseToJavaObject(restResponseCertify.getResponse()); - String invariantUUIDcertify = certifyService.getInvariantUUID(); - version = certifyService.getVersion(); - assertEquals(invariantUUIDcreation, invariantUUIDcertify); - assertEquals(version, "1.0"); - - } - - // US672129 Benny - private void getServiceValidateInvariantUuid(String serviceUniqueId, String invariantUUIDcreation) - throws Exception { - RestResponse getService = ServiceRestUtils.getService(serviceUniqueId, - ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER)); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, getService.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(getService)); - } - - @Test // invariantUUID generated when the component is created and never - // changed - public void serviceInvariantUuid() throws Exception { - User designerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - User testerUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - User pmUser = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - Component resourceDetailsVFCcomp = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - true, true); - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - // create service - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - serviceDetails.setInvariantUUID("123456"); - RestResponse restResponse = ServiceRestUtils.createService(serviceDetails, designerUser); - assertEquals("Check response code after create resource", BaseRestUtils.STATUS_CODE_CREATED, - restResponse.getErrorCode().intValue()); - Service service = ResponseParser.parseToObjectUsingMapper(restResponse.getResponse(), Service.class); - // invariantUUID generated when the component is created and never - // changed - String invariantUUIDcreation = ResponseParser.getInvariantUuid(restResponse); - // Add VF instance to service - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, service, - UserRoleEnum.DESIGNER, true); - // get resource and verify InvariantUuid is not changed - getServiceValidateInvariantUuid(service.getUniqueId(), invariantUUIDcreation); - - // Update service with new invariant UUID - restResponse = ServiceRestUtils.updateService(serviceDetails, designerUser); - assertEquals("Check response code after create resource", BaseRestUtils.STATUS_CODE_SUCCESS, - restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // Checkin - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, LifeCycleStatesEnum.CHECKIN); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // Checkout - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // certification request - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // start certification - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // certify - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, LifeCycleStatesEnum.CERTIFY); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // update resource - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - serviceDetails.setDescription("updatedDescription"); - restResponse = ServiceRestUtils.updateService(serviceDetails, designerUser); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // certification request - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // Checkout - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // certification request - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // start certification - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // cancel certification - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, - LifeCycleStatesEnum.CANCELCERTIFICATION); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // start certification - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // failure - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, testerUser, - LifeCycleStatesEnum.FAILCERTIFICATION); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // Checkout - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, - LifeCycleStatesEnum.CHECKOUT); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // Checkin - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, LifeCycleStatesEnum.CHECKIN); - assertEquals(BaseRestUtils.STATUS_CODE_SUCCESS, restResponse.getErrorCode().intValue()); - assertEquals(invariantUUIDcreation, ResponseParser.getInvariantUuid(restResponse)); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - // create instance - ProductReqDetails productDetails = ElementFactory.getDefaultProduct(); - RestResponse createProductResponse = ProductRestUtils.createProduct(productDetails, pmUser); - assertEquals(BaseRestUtils.STATUS_CODE_CREATED, createProductResponse.getErrorCode().intValue()); - ComponentInstanceReqDetails serviceInstanceReqDetails = ElementFactory - .getComponentResourceInstance(serviceDetails); - RestResponse createServiceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance( - serviceInstanceReqDetails, pmUser, productDetails.getUniqueId(), ComponentTypeEnum.PRODUCT); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_CREATED, - createServiceInstanceResponse.getErrorCode().intValue()); - getServiceValidateInvariantUuid(serviceDetails.getUniqueId(), invariantUUIDcreation); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetAllServiceVersions.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetAllServiceVersions.java deleted file mode 100644 index 760d002856..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetAllServiceVersions.java +++ /dev/null @@ -1,350 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.execute.lifecycle.LCSbaseTest; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class GetAllServiceVersions extends ComponentBaseTest { - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - protected User sdncDesignerDetails; - protected User sdncDesignerDetails2; - protected User sdncAdminDetails; - protected User sdncGovernorDeatails; - protected User sdncTesterDetails; - protected User sdncOpsDetails; - protected ComponentInstanceReqDetails resourceInstanceReqDetails; - protected Component resourceDetailsVFCcomp; - protected Service serviceServ; - - @Rule - public static TestName name = new TestName(); - - public GetAllServiceVersions() { - super(name, GetAllServiceVersions.class.getName()); - ; - } - - @BeforeMethod - public void setUp() throws Exception { - - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncDesignerDetails2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncGovernorDeatails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - sdncTesterDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncOpsDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - resourceDetailsVFCcomp = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - true, true); - - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - serviceServ = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, serviceServ, - UserRoleEnum.DESIGNER, true); - - serviceDetails = new ServiceReqDetails(serviceServ); - - } - - @Test - public void GetAllServiceVersions_Version05() throws Exception { - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - } - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - - } - - @Test - public void GetAllServiceVersions_Version01() throws Exception { - - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncDesignerDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_Version15() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - } - - RestResponse changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - // serviceServ.setUniqueId(serviceDetails.getUniqueId()); - // RestResponse changeServiceState = - // AtomicOperationUtils.changeComponentState(serviceServ, - // UserRoleEnum.ADMIN, LifeCycleStatesEnum.CERTIFY, false).getRight(); - - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - for (int x = 0; x < 5; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - } - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_Version25() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - } - - // getting to version 1.0 - RestResponse changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - // getting to version 1.5 - for (int x = 0; x < 5; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - } - - // getting to version 2.0 - changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - // getting to version 2.5 - for (int x = 0; x < 5; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - } - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_ReadyForCertification_version05() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - } - - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_CertifactionInProgress_version05() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - } - - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncAdminDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.STARTCERTIFICATION); - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_Certified_version10() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - // get to version 0.5 - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - - } - - // get version 1.0 - RestResponse changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_Certified_version20() throws Exception { - // addMandatoryArtifactsToService(); - Map<String, String> origVersionsMap = new HashMap<String, String>(); - // get to version 0.5 - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - } - - // get version 1.0 - RestResponse changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - // get version 1.5 - for (int x = 0; x < 4; x++) { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - } - - // get version 2.0 - changeServiceState = LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - assertTrue("certify service request returned status:" + changeServiceState.getErrorCode(), - changeServiceState.getErrorCode() == 200); - origVersionsMap.put(serviceDetails.getVersion(), serviceDetails.getUniqueId()); - - // validate get response - RestResponse serviceGetResponse = ServiceRestUtils.getService(serviceDetails, sdncAdminDetails); - Service res = ResponseParser.convertServiceResponseToJavaObject(serviceGetResponse.getResponse()); - Map<String, String> getVersionsMap = res.getAllVersions(); - assertTrue(origVersionsMap.equals(getVersionsMap)); - } - - @Test - public void GetAllServiceVersions_ServiceNotFound() throws Exception { - - RestResponse serviceGetResponse = ServiceRestUtils.getService("123456789", sdncAdminDetails); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.SERVICE_NOT_FOUND.name()); - assertEquals("Check response code after get service without cache", errorInfo.getCode(), - serviceGetResponse.getErrorCode()); - - List<String> variables = Arrays.asList("123456789"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_NOT_FOUND.name(), variables, - serviceGetResponse.getResponse()); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetComponentAuditApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetComponentAuditApiTest.java deleted file mode 100644 index 846b5d24d3..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetComponentAuditApiTest.java +++ /dev/null @@ -1,368 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.http.HttpStatus; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.HttpRequest; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.FileUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.common.api.Constants; -import org.openecomp.sdc.common.datastructure.AuditingFieldsKeysEnum; -import org.openecomp.sdc.common.datastructure.Wrapper; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; - -import fj.data.Either; - -public class GetComponentAuditApiTest extends ComponentBaseTest { - - public static final String SERVICES_API = "services"; - public static final String RESOURCES_API = "resources"; - - protected User sdncAdminUser; - protected User sdncDesignerUser; - protected User sdncTesterUser; - - @Rule - public static TestName name = new TestName(); - - public GetComponentAuditApiTest() { - super(name, GetComponentAuditApiTest.class.getName()); - } - - // in case tests fail, run this method as test to create mapping in ES - public void updateElasticSearchMapping() throws IOException { - Either<String, Exception> fileContentUTF8 = FileUtils - .getFileContentUTF8("src\\test\\resources\\CI\\other\\mapping.json"); - AssertJUnit.assertTrue(fileContentUTF8.isLeft()); - - final String ES_TEMPLATE_URL = "http://%s:%s/_template/audit_template"; - String url = String.format(ES_TEMPLATE_URL, config.getEsHost(), config.getEsPort()); - - RestResponse sendHttpPost = new HttpRequest().sendHttpPost(url, fileContentUTF8.left().value(), null); - AssertJUnit.assertTrue(sendHttpPost.getErrorCode() == HttpStatus.SC_OK); - } - - @BeforeMethod - public void init() { - sdncAdminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncDesignerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncTesterUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - ; - - } - - @Test - public void testServiceAuditCertifiedVersion() throws Exception { - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - Wrapper<String> versionZeroOneIDWrapper = new Wrapper<String>(), - versionZeroTwoIDWrapper = new Wrapper<String>(); - - createBasicServiceForAudit(versionZeroOneIDWrapper, versionZeroTwoIDWrapper, serviceDetails, true); - // First Certification - - LifecycleRestUtils.certifyService(serviceDetails); - // LCSbaseTest.certifyService(serviceDetails); - AssertJUnit.assertTrue(serviceDetails.getVersion().equals("1.0")); - - // Second Certification - increaseServiceVersion(serviceDetails, "1.1"); - increaseServiceVersion(serviceDetails, "1.2"); - increaseServiceVersion(serviceDetails, "1.3"); - increaseServiceVersion(serviceDetails, "1.4"); - LifecycleRestUtils.certifyService(serviceDetails); - AssertJUnit.assertTrue(serviceDetails.getVersion().equals("2.0")); - String certifiedId = serviceDetails.getUniqueId(); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerUser, LifeCycleStatesEnum.CHECKOUT); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerUser, LifeCycleStatesEnum.CHECKIN); - - JsonElement element = getAuditJson(SERVICES_API, certifiedId); - // audits kept: 5*check ins + 4*check outs + 2*artifact payload - // updates(tosca) + certification request + certification start + - // certification success - // + 3 A&AI(ArtifactDelete, ArtifactUpload, ArtifactUpdate) - List<String> actions = new ArrayList<>(); - JsonArray jsonArray = element.getAsJsonArray(); - for( int i =0 ; i < jsonArray.size(); i++){ - actions.add(jsonArray.get(i).getAsJsonObject().get(AuditingFieldsKeysEnum.AUDIT_ACTION.getDisplayName()).getAsString()); - } - long checkinCount = actions.stream().filter( e -> e.equals(AuditingActionEnum.CHECKIN_RESOURCE.getName())).count(); - assertTrue(checkinCount == 5); - - long checkOutCount = actions.stream().filter( e -> e.equals(AuditingActionEnum.CHECKOUT_RESOURCE.getName())).count(); - assertTrue(checkOutCount == 4); - - long certificationRequestCount = actions.stream().filter( e -> e.equals(AuditingActionEnum.CERTIFICATION_REQUEST_RESOURCE.getName())).count(); - assertTrue(certificationRequestCount == 1); - - long certificationStartCount = actions.stream().filter( e -> e.equals(AuditingActionEnum.START_CERTIFICATION_RESOURCE.getName())).count(); - assertTrue(certificationStartCount == 1); - - long certificationSuccessCount = actions.stream().filter( e -> e.equals(AuditingActionEnum.CERTIFICATION_SUCCESS_RESOURCE.getName())).count(); - assertTrue(certificationSuccessCount == 1); - - - } - - protected void certifyResource(ResourceReqDetails defaultResource) throws IOException { - RestResponse response = LifecycleRestUtils.changeResourceState(defaultResource, sdncDesignerUser, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - response = LifecycleRestUtils.changeResourceState(defaultResource, sdncTesterUser, - LifeCycleStatesEnum.STARTCERTIFICATION); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - response = LifecycleRestUtils.changeResourceState(defaultResource, sdncTesterUser, LifeCycleStatesEnum.CERTIFY); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - } - - protected JsonElement getAuditJson(String componentType, String componentId) throws IOException { - Map<String, String> headers = new HashMap<String, String>() { - { - put(Constants.USER_ID_HEADER, UserRoleEnum.ADMIN.getUserId()); - } - }; - String url = String.format(Urls.GET_COMPONENT_AUDIT_RECORDS, config.getCatalogBeHost(), - config.getCatalogBePort(), componentType, componentId); - - RestResponse httpSendGet = new HttpRequest().httpSendGet(url, headers); - AssertJUnit.assertTrue(httpSendGet.getErrorCode() == HttpStatus.SC_OK); - JsonElement element = ResponseParser.parseToObject(httpSendGet.getResponse(), JsonElement.class); - AssertJUnit.assertTrue(element.isJsonArray()); - return element; - } - - protected void createBasicServiceForAudit(Wrapper<String> versionZeroOneIDWrapper, - Wrapper<String> versionZeroTwoIDWrapper, ServiceReqDetails serviceDetails, Boolean withResInst) - throws Exception { - - User designerUser = sdncDesignerUser; - - RestResponse response = ServiceRestUtils.createService(serviceDetails, designerUser); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_CREATED); - versionZeroOneIDWrapper.setInnerElement(serviceDetails.getUniqueId()); - - if (withResInst) { - Resource resourceObj = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceObj, UserRoleEnum.DESIGNER, true, - true); - AtomicOperationUtils.changeComponentState(resourceObj, UserRoleEnum.DESIGNER, LifeCycleStatesEnum.CERTIFY, - true); - ResourceReqDetails resource = new ResourceReqDetails(resourceObj); - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory.getDefaultComponentInstance(); - resourceInstanceReqDetails.setComponentUid(resource.getUniqueId()); - ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, sdncDesignerUser, - serviceDetails.getUniqueId(), ComponentTypeEnum.SERVICE); - - // ServiceUtils.createCertResourceWithDeploymentArt(serviceDetails, - // "myResource"); - } - - response = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - AssertJUnit.assertTrue(serviceDetails.getVersion().equals("0.1")); - - response = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, LifeCycleStatesEnum.CHECKOUT); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - // ServiceUtils.addServiceDeploymentArtifact(serviceDetails.getUniqueId(), - // designerUser); - versionZeroTwoIDWrapper.setInnerElement(serviceDetails.getUniqueId()); - AssertJUnit.assertTrue(serviceDetails.getVersion().equals("0.2")); - response = LifecycleRestUtils.changeServiceState(serviceDetails, designerUser, LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - - increaseServiceVersion(serviceDetails, "0.3"); - - increaseServiceVersion(serviceDetails, "0.4"); - - increaseServiceVersion(serviceDetails, "0.5"); - - } - - protected void increaseServiceVersion(ServiceReqDetails serviceDetails, String excpectedVersion) throws Exception { - RestResponse response = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerUser, - LifeCycleStatesEnum.CHECKOUT); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - AssertJUnit.assertTrue(serviceDetails.getVersion().equals(excpectedVersion)); - response = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerUser, LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - } - - protected void createBasicResourceForAudit(Wrapper<String> versionOnePointTwoIDWrapper, - ResourceReqDetails defaultResource) throws Exception { - - RestResponse response = ResourceRestUtils.createResource(defaultResource, sdncDesignerUser); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_CREATED); - - // ArtifactDefinition artifactDef = new - // ArtifactUtils().constructDefaultArtifactInfo(); - // response = resourceUtils.add_artifact(defaultResource, - // sdncDesignerUser, defaultResource.getVersion(), artifactDef); - // assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - - ArtifactReqDetails heatArtifactDetails = ElementFactory - .getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerUser, - defaultResource.getUniqueId()); - AssertJUnit.assertTrue("add HEAT artifact to resource request returned status:" + response.getErrorCode(), - response.getErrorCode() == 200); - - response = LifecycleRestUtils.changeResourceState(defaultResource, sdncDesignerUser, - LifeCycleStatesEnum.CHECKIN); - - increaseResourceVersion(defaultResource, "0.2"); - - increaseResourceVersion(defaultResource, "0.3"); - - increaseResourceVersion(defaultResource, "0.4"); - - increaseResourceVersion(defaultResource, "0.5"); - - certifyResource(defaultResource); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - AssertJUnit.assertTrue(defaultResource.getVersion().equals("1.0")); - - increaseResourceVersion(defaultResource, "1.1"); - - increaseResourceVersion(defaultResource, "1.2"); - versionOnePointTwoIDWrapper.setInnerElement(defaultResource.getUniqueId()); - - increaseResourceVersion(defaultResource, "1.3"); - - increaseResourceVersion(defaultResource, "1.4"); - - } - - protected void increaseResourceVersion(ResourceReqDetails defaultResource, String expectedVersion) - throws IOException { - RestResponse response = LifecycleRestUtils.changeResourceState(defaultResource, sdncDesignerUser, - LifeCycleStatesEnum.CHECKOUT); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - AssertJUnit.assertTrue(defaultResource.getVersion().equals(expectedVersion)); - response = LifecycleRestUtils.changeResourceState(defaultResource, sdncDesignerUser, - LifeCycleStatesEnum.CHECKIN); - AssertJUnit.assertTrue(response.getErrorCode() == HttpStatus.SC_OK); - } - - @Test - public void testServiceAuditLastUncertifiedVersion() throws Exception { - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - Wrapper<String> versionZeroOneIDWrapper = new Wrapper<String>(), - versionZeroTwoIDWrapper = new Wrapper<String>(); - - createBasicServiceForAudit(versionZeroOneIDWrapper, versionZeroTwoIDWrapper, serviceDetails, false); - - JsonElement element = getAuditJson(SERVICES_API, versionZeroTwoIDWrapper.getInnerElement()); - - assertTrue(element.getAsJsonArray().size() == 3); - - } - - @Test - public void testServiceAuditFirstUncertifiedVersion() throws Exception { - - ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - Wrapper<String> versionZeroOneIDWrapper = new Wrapper<String>(), - versionZeroTwoIDWrapper = new Wrapper<String>(); - - createBasicServiceForAudit(versionZeroOneIDWrapper, versionZeroTwoIDWrapper, serviceDetails, false); - - JsonElement element = getAuditJson(SERVICES_API, versionZeroOneIDWrapper.getInnerElement()); - - assertTrue(element.getAsJsonArray().size() == 3); - - } - - @Test - public void testResourceAuditUncertifiedVersion() throws Exception { - - ResourceReqDetails defaultResource = ElementFactory.getDefaultResource(); - Wrapper<String> versionOnePointTwoIDWrapper = new Wrapper<String>(); - - createBasicResourceForAudit(versionOnePointTwoIDWrapper, defaultResource); - - JsonElement element = getAuditJson(RESOURCES_API, versionOnePointTwoIDWrapper.getInnerElement()); - - assertTrue(element.getAsJsonArray().size() == 3); - - } - - @Test - public void testResourceAuditCertifiedVersion() throws Exception { - - ResourceReqDetails defaultResource = ElementFactory.getDefaultResource(); - Wrapper<String> versionOnePointTwoIDWrapper = new Wrapper<String>(); - - createBasicResourceForAudit(versionOnePointTwoIDWrapper, defaultResource); - - certifyResource(defaultResource); - assertTrue(defaultResource.getVersion().equals("2.0")); - String certifiedId = defaultResource.getUniqueId(); - - increaseResourceVersion(defaultResource, "2.1"); - - increaseResourceVersion(defaultResource, "2.2"); - - JsonElement element = getAuditJson(RESOURCES_API, certifiedId); - - assertTrue(element.getAsJsonArray().size() == 13); - - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetServiceLatestVersionTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetServiceLatestVersionTest.java deleted file mode 100644 index 19bed4d380..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/GetServiceLatestVersionTest.java +++ /dev/null @@ -1,684 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_RESTRICTED_OPERATION; -import static org.testng.AssertJUnit.assertNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.List; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonParser; - -public class GetServiceLatestVersionTest extends ComponentInstanceBaseTest { - - protected ArtifactReqDetails heatArtifactDetails; - - @Rule - public static TestName name = new TestName(); - - public GetServiceLatestVersionTest() { - super(name, GetServiceLatestVersionTest.class.getName()); - } - - @BeforeMethod - public void before() throws Exception { - initMembers(); - createAtomicResource(resourceDetailsVFC_01); - changeResourceStateToCertified(resourceDetailsVFC_01); - createAtomicResource(resourceDetailsCP_01); - changeResourceStateToCertified(resourceDetailsCP_01); - createAtomicResource(resourceDetailsVL_01); - changeResourceStateToCertified(resourceDetailsVL_01); - createVF(resourceDetailsVF_01); - certifyVf(resourceDetailsVF_01); - createService(serviceDetails_01); - createService(serviceDetails_02); - createService(serviceDetails_03); - createProduct(productDetails_01); - createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); // create - // certified - // VF - // instance - // in - // service - /* - * RestResponse restResponse = - * LifecycleRestUtils.changeServiceState(serviceDetails_01, - * sdncDesignerDetails, LifeCycleStates.CHECKIN); - * ResourceRestUtils.checkSuccess(restResponse); - */ - } - - public void initMembers() throws Exception { - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - sdncPsDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_STRATEGIST1); - sdncPmDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1); - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncTesterDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - resourceDetailsVFC_01 = ElementFactory.getDefaultResourceByType("VFC100", NormativeTypesEnum.COMPUTE, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VFC.toString()); // resourceType = VFC - resourceDetailsVF_01 = ElementFactory.getDefaultResourceByType("VF100", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - resourceDetailsCP_01 = ElementFactory.getDefaultResourceByType("CP100", NormativeTypesEnum.PORT, - ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.CP.toString()); - resourceDetailsVL_01 = ElementFactory.getDefaultResourceByType("VL100", NormativeTypesEnum.NETWORK, - ResourceCategoryEnum.GENERIC_NETWORK_ELEMENTS, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VL.toString()); - serviceDetails_01 = ElementFactory.getDefaultService("newtestservice1", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - serviceDetails_02 = ElementFactory.getDefaultService("newtestservice2", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - serviceDetails_03 = ElementFactory.getDefaultService("newtestservice3", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - productDetails_01 = ElementFactory.getDefaultProduct("product01"); - } - - @Test - public void getServicesLatestVersionServiceInCheckOutState() throws Exception { - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncPsDetails1); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertNull("No Service returned, one service in checkout state 0.1", servcieFromList); - } - - @Test - public void getServicesLatestVersionServiceInCheckInState() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncPsDetails1); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.1")); - } - - @Test - public void getServicesLatestVersionByPm() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncPmDetails1); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.1")); - } - - @Test - public void getServicesLatestVersionByAdmin() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncAdminDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.1")); - } - - @Test - public void getServicesLatestVersionService02CheckOutState() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - String serviceUniqueID = ResponseParser.getUniqueIdFromResponse(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceUniqueID); - assertTrue(servcieFromList.getVersion().equals("0.1")); - servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertNull(servcieFromList); - } - - @Test - public void getServicesLatestVersionService02CheckInState() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.2")); - } - - @Test - public void getServicesLatestVersionServiceWaitingForCertification() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.2")); - } - - @Test - public void getServicesLatestVersionServiceCertificationInProgress() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.2")); - } - - @Test - public void getServicesLatestVersionServiceCertificationFail() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.FAILCERTIFICATION); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.2")); - } - - @Test - public void getServicesLatestVersionServiceCertifed() throws Exception { - certifyService(serviceDetails_01); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("1.0")); - } - - @Test - public void getLatestVersionServiceHasSeveralCertifedVersion_01() throws Exception { - RestResponse certifyServiceResponse; - String serviceUniqueIdFromResponse = null; - int numberOfCertifiedService = 3; - for (int i = 0; i < numberOfCertifiedService; i++) { - certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - if (i == (numberOfCertifiedService - 1)) { - serviceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(certifyServiceResponse); - } - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - } - // We have service with following versions : 1.0, 2.0 ,3.0 and - // 3.1(checkedOut) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceUniqueIdFromResponse); - assertTrue(servcieFromList.getVersion().equals("3.0")); - } - - @Test - public void getLatestVersionServiceHasSeveralCertifedVersions02() throws Exception { - RestResponse certifyServiceResponse; - certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - // We have service with following versions : 1.0, 2.0 - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("2.0")); - } - - @Test - public void getLatestVersionServiceCertifedWasCheckedOutAndCheckedin() throws Exception { - RestResponse certifyServiceResponse; - int numberOfCertifiedService = 3; - for (int i = 0; i < numberOfCertifiedService; i++) { - certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - } - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - // We have service with following versions : 1.0, 2.0 and 2.1(checkedIn) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("3.1")); - } - - @Test - public void getLatestVersionServiceCheckOutCertifedService() throws Exception { - RestResponse restResponse; - String serviceUniqueIdFromResponse = null; - RestResponse certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - for (int i = 0; i < 11; i++) { - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - if (i == (10)) { - serviceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(restResponse); - } - } - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - // We have service with following versions : 1.0 and 1.11(Check-out) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceUniqueIdFromResponse); - assertTrue(servcieFromList.getVersion().equals("1.11")); - } - - @Test - public void getLatestVersionServiceCheckOutCheckInCertifedService() throws Exception { - RestResponse restResponse; - String serviceUniqueIdFromResponse = null; - RestResponse certifyServiceResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(certifyServiceResponse); - for (int i = 0; i < 12; i++) { - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - if (i == (11)) { - serviceUniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(restResponse); - } - } - // We have service with following versions : 1.0 and 1.11(Check-out) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceUniqueIdFromResponse); - assertTrue(servcieFromList.getVersion().equals("1.12")); - } - - @Test - public void getLatestVersionServiceCertifedCheckedOutAndInWaitingForCertificationState() throws Exception { - certifyService(serviceDetails_01); // 1.0 - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ServiceRestUtils.checkSuccess(restResponse); - // We have service with following versions : 1.0 and 1.1(Waiting For - // Certification) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("1.1")); - } - - @Test - public void getLatestVersionServiceCertifedCheckedOutAndInCertificationInProgressState() throws Exception { - certifyService(serviceDetails_01); // 1.0 - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ServiceRestUtils.checkSuccess(restResponse); - // We have service with following versions : 1.0 and 1.1(Certification - // In Progress) - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("1.1")); - } - - // DE190818 - @Test(enabled = false) - public void getLatestVersionByNonAsdcUser() throws Exception { - User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - nonAsdcUser.setUserId("gg750g"); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(nonAsdcUser); - assertTrue(getServicesLatestVersion.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - getServicesLatestVersion.getResponse()); - } - - // DE190818 - @Test(enabled = false) - public void getLatestVersionUserIdIsEmpty() throws Exception { - User nonAsdcUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - nonAsdcUser.setUserId(""); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(nonAsdcUser); - assertTrue(getServicesLatestVersion.getErrorCode() == STATUS_CODE_RESTRICTED_OPERATION); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_OPERATION.name(), new ArrayList<String>(), - getServicesLatestVersion.getResponse()); - } - - @Test - public void getServicesLatestVersionByTester() throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncTesterDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 1); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_01.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.1")); - } - - @Test - public void getLatestVersionSeveralServicesInDifferentVersion() throws Exception { - RestResponse restResponse = certifyService(serviceDetails_01); // 1.0 - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = certifyService(serviceDetails_01); - ServiceRestUtils.checkSuccess(restResponse); - String service1_UniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); // serviceDetails_01 - // version is 2.1 - // (check-out) - - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_02, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); // serviceDetails_02 - // version 0.2 - // (Check-in) - - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_03, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - String service3_UniqueIdFromResponse = ResponseParser.getUniqueIdFromResponse(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails_03, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); // serviceDetails_03 - // version 0.2 - // (Check-out) - - RestResponse getServicesLatestVersion = ServiceRestUtils.getServiceLatestVersionList(sdncDesignerDetails); - ServiceRestUtils.checkSuccess(getServicesLatestVersion); - List<Service> serviceList = restResponseToResourceObjectList(getServicesLatestVersion); - assertTrue(serviceList.size() == 3); - Service servcieFromList = getResourceObjectFromResourceListByUid(serviceList, service1_UniqueIdFromResponse); - assertTrue(servcieFromList.getVersion().equals("2.0")); - servcieFromList = getResourceObjectFromResourceListByUid(serviceList, serviceDetails_02.getUniqueId()); - assertTrue(servcieFromList.getVersion().equals("0.2")); - servcieFromList = getResourceObjectFromResourceListByUid(serviceList, service3_UniqueIdFromResponse); - assertTrue(servcieFromList.getVersion().equals("0.1")); - } - - /////////////////////////////////////////////////////////////// - private RestResponse certifyService(ServiceReqDetails serviceDetails) throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKOUT); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - ServiceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeServiceState(serviceDetails, sdncTesterDetails, - LifeCycleStatesEnum.CERTIFY); - ServiceRestUtils.checkSuccess(restResponse); - return restResponse; - } - - protected List<Service> restResponseToResourceObjectList(RestResponse restResponse) { - JsonElement jelement = new JsonParser().parse(restResponse.getResponse()); - JsonArray jsonArray = jelement.getAsJsonArray(); - List<Service> restResponseArray = new ArrayList<>(); - Service service = null; - for (int i = 0; i < jsonArray.size(); i++) { - String serviceString = (String) jsonArray.get(i).toString(); - service = ResponseParser.convertServiceResponseToJavaObject(serviceString); - restResponseArray.add(service); - } - return restResponseArray; - } - - protected Service getResourceObjectFromResourceListByUid(List<Service> serviceList, String uid) { - if (serviceList != null && serviceList.size() > 0) { - for (Service service : serviceList) { - if (service.getUniqueId().equals(uid)) - return service; - } - } else - return null; - return null; - } - - private RestResponse changeResourceStateToCertified(ResourceReqDetails resourceDetails) throws Exception { - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncDesignerDetails, - LifeCycleStatesEnum.CERTIFICATIONREQUEST); - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, - LifeCycleStatesEnum.STARTCERTIFICATION); - } else - return restResponse; - if (restResponse.getErrorCode() == 200) { - restResponse = LifecycleRestUtils.changeResourceState(resourceDetails, sdncTesterDetails, - LifeCycleStatesEnum.CERTIFY); - if (restResponse.getErrorCode() == 200) { - String newVersion = ResponseParser.getVersionFromResponse(restResponse); - resourceDetails.setVersion(newVersion); - resourceDetails.setLifecycleState(LifecycleStateEnum.CERTIFIED); - resourceDetails.setLastUpdaterUserId(sdncTesterDetails.getUserId()); - resourceDetails.setLastUpdaterFullName(sdncTesterDetails.getFullName()); - String uniqueIdFromRresponse = ResponseParser.getValueFromJsonResponse(restResponse.getResponse(), - "uniqueId"); - resourceDetails.setUniqueId(uniqueIdFromRresponse); - } - } - return restResponse; - } - - // private void certifyVf(ResourceReqDetails resource) throws Exception { - // RestResponse createAtomicResourceInstance = - // createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVFC_01, - // sdncDesignerDetails); - // ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - // createAtomicResourceInstance = - // createAtomicInstanceForVFDuringSetup(resource, resourceDetailsCP_01, - // sdncDesignerDetails); - // ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - // createAtomicResourceInstance = - // createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVL_01, - // sdncDesignerDetails); - // ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - // //createVFInstanceDuringSetup(service, resource, sdncDesignerDetails); - // RestResponse response = - // ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, - // sdncDesignerDetails, resource.getUniqueId()); - // ResourceRestUtils.checkSuccess(response); - // RestResponse changeResourceStateToCertified = - // changeResourceStateToCertified(resource); - // ResourceRestUtils.checkSuccess(changeResourceStateToCertified); - // } - - private void certifyVf(ResourceReqDetails resource) throws Exception { - RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsCP_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVFC_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String computeCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resource, resourceDetailsVL_01, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String vlCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - // Fixing Vl/Cp req/cap - ComponentTypeEnum containerCompType = ComponentTypeEnum.RESOURCE; - User user = sdncDesignerDetails; - fulfillCpRequirement(resource, cpCompInstId, computeCompInstId, computeCompInstId, user, containerCompType); - consumeVlCapability(resource, cpCompInstId, vlCompInstId, cpCompInstId, user, containerCompType); - - RestResponse response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, - sdncDesignerDetails, resource.getUniqueId()); - ResourceRestUtils.checkSuccess(response); - RestResponse changeResourceStateToCertified = changeResourceStateToCertified(resource); - ResourceRestUtils.checkSuccess(changeResourceStateToCertified); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ReqCapOccurrencesTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ReqCapOccurrencesTest.java deleted file mode 100644 index fdec8346fc..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ReqCapOccurrencesTest.java +++ /dev/null @@ -1,1194 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils.STATUS_CODE_SUCCESS; -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.LinkedHashMap; -import java.util.List; - -import org.apache.http.client.ClientProtocolException; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.CapReqDef; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.CapabilityRequirementRelationship; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.RelationshipImpl; -import org.openecomp.sdc.be.model.RelationshipInfo; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.general.ImportUtils; -import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class ReqCapOccurrencesTest extends ComponentInstanceBaseTest { - - private ImportReqDetails importReqDetails1; // atomic resource - private ImportReqDetails importReqDetails2; - private ImportReqDetails importReqDetails3; - private ImportReqDetails importReqDetails4; - private Resource resourceVFC1; - private Resource resourceVFC2; - private Resource resourceVFC3; - private Resource resourceVFC4; - private ResourceReqDetails resourceDetailsVF100; - private ResourceReqDetails resourceDetailsVF200; - private Resource resourceVF100; - private Resource resourceVF200; - protected String testResourcesPath; - - protected final String importYmlWithReq11 = "softwareComponentReq11.yml"; - protected final String importYmlWithReq12 = "softwareComponentReq12.yml"; - protected final String importYmlWithCap11 = "computeCap11.yml"; - protected final String importYmlWithCap1Unbounded = "computeCap1UNBOUNDED.yml"; - protected final String capabilitiesAndRequirementsType = "tosca.capabilities.Container"; - - public ReqCapOccurrencesTest() { - super(new TestName(), ReqCapOccurrencesTest.class.getSimpleName()); - } - - @BeforeMethod - public void before() throws Exception { - // Do not use call init() from ComponentInstanceBaseTest - expectedContainerCapabilities = new LinkedHashMap<String, List<CapabilityDefinition>>(); - expectedContainerRequirements = new LinkedHashMap<String, List<RequirementDefinition>>(); - removedRequirements = new HashMap<>(); - expectedContInstReqCap = new HashMap<>(); - - RestResponse importResourceResponse; - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // import yml file location - String sourceDir = config.getResourceConfigDir(); - final String workDir = "importToscaResourceByCreateUrl"; - testResourcesPath = sourceDir + File.separator + workDir; - ///// Create atomic resources ///////////////////////// - // import VFC1 with Requirements : MIN=1 MAX=2 - ///// (tosca.capabilities.Container) - importReqDetails1 = ElementFactory.getDefaultImportResource("VFC1"); - importResourceResponse = importedResource(importReqDetails1, importYmlWithReq12); - // resourceVFC1 = - // ResponseParser.convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - RestResponse restResponse = LifecycleRestUtils.changeResourceState(importReqDetails1, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - resourceVFC1 = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - // import VFC2 with Capabilities : MIN 1 MAX UNBOUNDED - // (tosca.capabilities.Container) - importReqDetails2 = ElementFactory.getDefaultImportResource("VFC2"); - importResourceResponse = importedResource(importReqDetails2, importYmlWithCap1Unbounded); - // resourceVFC2 = - // ResponseParser.convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - restResponse = LifecycleRestUtils.changeResourceState(importReqDetails2, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - resourceVFC2 = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - // import VFC3 with Capabilities : MIN 1 MAX 1 - // (tosca.capabilities.Container) - importReqDetails3 = ElementFactory.getDefaultImportResource("VFC3"); - importResourceResponse = importedResource(importReqDetails3, importYmlWithCap11); - // resourceVFC3 = - // ResponseParser.convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - restResponse = LifecycleRestUtils.changeResourceState(importReqDetails3, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - resourceVFC3 = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - // import VFC4 with Requirements : MIN 1 MAX 1 - // (tosca.capabilities.Container) - importReqDetails4 = ElementFactory.getDefaultImportResource("VFC4"); - importResourceResponse = importedResource(importReqDetails4, importYmlWithReq11); - // resourceVFC4 = - // ResponseParser.convertResourceResponseToJavaObject(importResourceResponse.getResponse()); - restResponse = LifecycleRestUtils.changeResourceState(importReqDetails4, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - resourceVFC4 = ResponseParser.convertResourceResponseToJavaObject(restResponse.getResponse()); - - // create VF100 - resourceDetailsVF100 = ElementFactory.getDefaultResourceByType("VF1000", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - RestResponse createResourceVF100 = ResourceRestUtils.createResource(resourceDetailsVF100, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceVF100); - // create VF200 - resourceDetailsVF200 = ElementFactory.getDefaultResourceByType("VF2000", NormativeTypesEnum.ROOT, - ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, sdncDesignerDetails.getUserId(), - ResourceTypeEnum.VF.toString()); - RestResponse createResourceVF200 = ResourceRestUtils.createResource(resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createResourceVF200); - // Create Service - serviceDetails_01 = ElementFactory.getDefaultService("newtestservice1", ServiceCategoriesEnum.MOBILITY, - sdncDesignerDetails.getUserId()); - RestResponse createServiceRestResponse = ServiceRestUtils.createService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createServiceRestResponse); - - } - - // US628514 Capability/Requirement "Occurrences" attribute in CREATE/DELETE - // Relation APIs - // Container = SERVICE , Container instance = VF - @Test - public void capAndReqOccurrencesInServiceAndHisInstancesNoAssociation() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC1 (Req MIN=1 MAX=2) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC21 (Cap MIN=1 MAX=UNBOUNDED) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "1"; - String containerMaxReq = "2"; - String containerMinCap = "1"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test - public void serviceInstanceAssociationReqMaxOccurrencesNotReached() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC1 (Req MIN=1 MAX=2) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC2 (Cap MIN=1 MAX=UNBOUNDED) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test - public void serviceInstanceAssociationReqMaxOccurrencesIsReached() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC4 (Req MIN=1 MAX=1) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC2 (Cap MIN=1 MAX=UNBOUNDED) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test - public void associateServiceInstanceWhenReqMaxOccurrencesAlreadyReached() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC4 (Req MIN=1 MAX=1) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC2 (Cap MIN=1 MAX=UNBOUNDED) to VF2.00 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf1Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf2Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // associate same instances again - when requirement Max Occurrences - // reached - associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, - serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_NOT_FOUND, - associateInstances.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(vf1Name); - varibales.add(vf2Name); - varibales.add("host"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND.name(), varibales, - associateInstances.getResponse()); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test - public void serviceInstanceAssociationCapMaxOccurrencesIsReached() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC1 (Req MIN=1 MAX=2) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC3 (Cap MIN=1 MAX=1) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test - public void associationServiceInstanceWhenCapMaxOccurrencesAlreadyReached() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC1 (Req MIN=1 MAX=2) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC3 (Cap MIN=1 MAX=1) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - // RestResponse createVFInstResp = createVFInstance(serviceDetails_01, - // resourceDetailsVF100, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf1Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - // createVFInstResp = createVFInstance(serviceDetails_01, - // resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf2Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - // associate same instances again - when requirement Max Occurrences - // reached - associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, - serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_NOT_FOUND, - associateInstances.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(vf1Name); - varibales.add(vf2Name); - varibales.add("host"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND.name(), - varibales, associateInstances.getResponse()); - } - - @Test - public void associationAndDisassociateServiceInstancesWhenReqMaxOccurrencesAlreadyReached() - throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC4 (Req MIN=1 MAX=1) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC3 (Cap MIN=1 MAX=1) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - RestResponse createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - sdncDesignerDetails); - // RestResponse createVFInstResp = createVFInstance(serviceDetails_01, - // resourceDetailsVF100, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - // createVFInstResp = createVFInstance(serviceDetails_01, - // resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VF Instances - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - // Disassociate 2 VF Instances - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, - dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF100.getUniqueId()).isEmpty()); - // get service and verify Occurrences in container and container - // instance requirements and Capabilities - getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - containerMinReq = "1"; - containerMaxReq = "1"; - containerMinCap = "1"; - containerMaxCap = "1"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - } - - @Test(enabled = false) - public void aaaa() throws Exception, Exception { - RestResponse getResourseRestResponse; - // Add instance of VFC1 (Req MIN=1 MAX=2) to VF1000 - ComponentInstance componentInstanceReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceReq); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Add instance of VFC3 (Cap MIN=1 MAX=1) to VF2000 - ComponentInstance componentInstanceCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF200); - assertNotNull(componentInstanceCap); - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF200.getUniqueId()); - resourceVF200 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Check-In both VFs - RestResponse restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF100, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - restResponse = LifecycleRestUtils.changeResourceState(resourceDetailsVF200, sdncDesignerDetails, - LifeCycleStatesEnum.CHECKIN); - ResourceRestUtils.checkSuccess(restResponse); - // Create VF instances - // RestResponse createVFInstResp = - // createVFInstanceDuringSetup(serviceDetails_01, resourceDetailsVF100, - // sdncDesignerDetails); - RestResponse createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF100, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf1Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // createVFInstResp = createVFInstanceDuringSetup(serviceDetails_01, - // resourceDetailsVF200, sdncDesignerDetails); - createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF200, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String vf2Name = ResponseParser.getValueFromJsonResponse(createVFInstResp.getResponse(), "name"); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // associate 2 VFs - String capType = capabilitiesAndRequirementsType; - String reqName = "host"; - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, - serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, - capList, reqList, componentInstanceReq.getUniqueId(), componentInstanceCap.getUniqueId()); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - ResourceRestUtils.checkSuccess(associateInstances); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - // get service - RestResponse getServiceResponse = ServiceRestUtils.getService(serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkSuccess(getServiceResponse); - Service service = ResponseParser.parseToObjectUsingMapper(getServiceResponse.getResponse(), Service.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, containerMinReq, - containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(service, capabilitiesAndRequirementsType, - resourceVF200, resourceVF100); - // associate same instances again - when requirement Max Occurrences - // reached - associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, - serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_NOT_FOUND, - associateInstances.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(vf1Name); - varibales.add(vf2Name); - varibales.add("host"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND.name(), - varibales, associateInstances.getResponse()); - } - - ////////////////////////////////////////////////////////////////////////////////////////////////// - // US628514 Capability/Requirement "Occurrences" attribute in CREATE/DELETE - ////////////////////////////////////////////////////////////////////////////////////////////////// Relation - ////////////////////////////////////////////////////////////////////////////////////////////////// APIs - // Container = VF , Container instance = VFC - @Test - public void capAndReqOccurrencesInVfAndHisInstancesNoAssociation() throws Exception, Exception { - // Add VFC1 and VFC2 instances in VF - ComponentInstance createComponentInstance1 = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(createComponentInstance1); - ComponentInstance createComponentInstance2 = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(createComponentInstance2); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "1"; - String containerMaxReq = "2"; - String containerMinCap = "1"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC2, resourceVFC1); - } - - @Test - public void vfInstanceAssociationReqMaxOccurrencesNotReached() throws Exception, Exception { - // Add VFC1 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=2) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC2 (with Capabilities: tosca.capabilities.Container, MIN=1, - // MAX=UNBOUNDED ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC2, resourceVFC1); - - } - - @Test - public void vfInstanceAssociationReqMaxOccurrencesIsReached() throws Exception, Exception { - // Add VFC4 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=1) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC2 (with Capabilities: tosca.capabilities.Container, MIN=1, - // MAX=UNBOUNDED ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC2, resourceVFC4); - } - - @Test - public void associateVfInstanceWhenReqMaxOccurrencesAlreadyReached() throws Exception, Exception { - // Add VFC4 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=1) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC2 (with Capabilities: tosca.capabilities.Container, MIN=1, - // MAX=UNBOUNDED ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails2, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "UNBOUNDED"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC2, resourceVFC4); - // associate same instances again - when requirement Max Occurrences - // reached - associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, - resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_NOT_FOUND, - associateInstances.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(componentInstanceWithReq.getName()); - varibales.add(componentInstanceWithCap.getName()); - varibales.add("host"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND.name(), varibales, - associateInstances.getResponse()); - - } - - @Test - public void vfInstanceAssociationCapMaxOccurrencesIsReached() throws Exception, Exception { - // Add VFC1 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=2) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC3 (with Capabilities: tosca.capabilities.Container, MIN=1 - // MAX=1 ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC3, resourceVFC1); - } - - @Test - public void associationVfInstanceWhenCapMaxOccurrencesAlreadyReached() throws Exception, Exception { - // Add VFC1 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=2) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails1, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC3 (with Capabilities: tosca.capabilities.Container, MIN=1 - // MAX=1 ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", STATUS_CODE_SUCCESS, associateInstances.getErrorCode().intValue()); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "1"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC3, resourceVFC1); - // associate same instances again - when requirement Max Occurrences - // reached - associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, - resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_NOT_FOUND, - associateInstances.getErrorCode().intValue()); - ArrayList<String> varibales = new ArrayList<String>(); - varibales.add(componentInstanceWithReq.getName()); - varibales.add(componentInstanceWithCap.getName()); - varibales.add("host"); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND.name(), - varibales, associateInstances.getResponse()); - } - - @Test - public void associationAndDisassociateVfInstancesWhenReqMaxOccurrencesAlreadyReached() throws Exception, Exception { - // Add VFC4 (with Requirements: tosca.capabilities.Container, MIN=1 - // MAX=1) instance to VF - ComponentInstance componentInstanceWithReq = createComponentInstance(importReqDetails4, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithReq); - // Add VFC3 (with Capabilities: tosca.capabilities.Container, MIN=1 - // MAX=1 ) instance to VF - ComponentInstance componentInstanceWithCap = createComponentInstance(importReqDetails3, sdncDesignerDetails, - resourceDetailsVF100); - assertNotNull(componentInstanceWithCap); - // associate Instances - CapReqDef capReqDefBeforeAssociate = getResourceReqCap(resourceDetailsVF100); - RequirementCapabilityRelDef requirementDef = setRelationshipBetweenInstances(componentInstanceWithReq, - componentInstanceWithCap, capReqDefBeforeAssociate); - RestResponse associateInstances = ComponentInstanceRestUtils.associateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - ResourceRestUtils.checkSuccess(associateInstances); - assertTrue(checkRealtionship(requirementDef.getFromNode(), requirementDef.getToNode(), - resourceDetailsVF100.getUniqueId())); - // GET resource - RestResponse getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - String containerMinReq = "0"; - String containerMaxReq = "0"; - String containerMinCap = "0"; - String containerMaxCap = "0"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC3, resourceVFC4); - // Disassociate 2 Instances - RestResponse dissociateInstances = ComponentInstanceRestUtils.dissociateInstances(requirementDef, - sdncDesignerDetails, resourceDetailsVF100.getUniqueId(), ComponentTypeEnum.RESOURCE); - assertEquals("Check response code ", BaseRestUtils.STATUS_CODE_SUCCESS, - dissociateInstances.getErrorCode().intValue()); - assertTrue(getComponentInstancesRelations(resourceDetailsVF100.getUniqueId()).isEmpty()); - // GET resource - getResourseRestResponse = ResourceRestUtils.getResource(sdncDesignerDetails, - resourceDetailsVF100.getUniqueId()); - resourceVF100 = ResponseParser.parseToObjectUsingMapper(getResourseRestResponse.getResponse(), Resource.class); - // Verify Container requirements and Capabilities - containerMinReq = "1"; - containerMaxReq = "1"; - containerMinCap = "1"; - containerMaxCap = "1"; - verifyContainerCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - containerMinReq, containerMaxReq, containerMinCap, containerMaxCap); - verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(resourceVF100, capabilitiesAndRequirementsType, - resourceVFC3, resourceVFC4); - } - - /////////////////////////////////////// - - private boolean checkRealtionship(String fromNode, String toNode, String resourceUniqueId) throws Exception { - List<RequirementCapabilityRelDef> componentInstancesRelations = getComponentInstancesRelations( - resourceUniqueId); - RequirementCapabilityRelDef requirementCapabilityRelDef = componentInstancesRelations.get(0); - boolean fromNodeCheck = requirementCapabilityRelDef.getFromNode().equals(fromNode); - boolean toNodeCheck = requirementCapabilityRelDef.getToNode().equals(toNode); - - return fromNodeCheck && toNodeCheck; - } - - private List<RequirementCapabilityRelDef> getComponentInstancesRelations(String resourceUniqueId) - throws ClientProtocolException, IOException { - Resource resource = getVfAsResourceObject(resourceUniqueId); - List<RequirementCapabilityRelDef> componenRelationInstances = resource.getComponentInstancesRelations(); - - return componenRelationInstances; - } - - private Resource getVfAsResourceObject(String resourceUniqueId) throws ClientProtocolException, IOException { - RestResponse getResource = ResourceRestUtils.getResource(resourceUniqueId); - Resource resource = ResponseParser.parseToObjectUsingMapper(getResource.getResponse(), Resource.class); - return resource; - } - - private RequirementCapabilityRelDef setRelationshipBetweenInstances(ComponentInstance riReq, - ComponentInstance riCap, CapReqDef capReqDef) throws Exception { - - String capbilityUid = capReqDef.getCapabilities().get("tosca.capabilities.Container").get(0).getUniqueId(); - String requirementUid = capReqDef.getRequirements().get("tosca.capabilities.Container").get(0).getUniqueId(); - - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - requirementDef.setFromNode(riReq.getUniqueId()); - requirementDef.setToNode(riCap.getUniqueId()); - - RelationshipInfo pair = new RelationshipInfo(); - pair.setRequirementOwnerId(riReq.getUniqueId()); - pair.setCapabilityOwnerId(riCap.getUniqueId()); - pair.setRequirement("host"); - RelationshipImpl relationship = new RelationshipImpl(); - relationship.setType("tosca.capabilities.Container"); - pair.setRelationships(relationship); - pair.setCapabilityUid(capbilityUid); - pair.setRequirementUid(requirementUid); - List<CapabilityRequirementRelationship> relationships = new ArrayList<>(); - CapabilityRequirementRelationship capReqRel = new CapabilityRequirementRelationship(); - relationships.add(capReqRel); - capReqRel.setRelation(pair); - requirementDef.setRelationships(relationships); - return requirementDef; - } - - private CapReqDef getResourceReqCap(ResourceReqDetails res) throws IOException { - RestResponse getResourceBeforeAssociate = ComponentRestUtils - .getComponentRequirmentsCapabilities(sdncDesignerDetails, resourceDetailsVF100); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceBeforeAssociate.getResponse(), CapReqDef.class); - return capReqDef; - } - - private RestResponse importedResource(ImportReqDetails importReqDetails, String ymlFile) throws Exception { - importReqDetails = ImportUtils.getImportResourceDetailsByPathAndName(importReqDetails, testResourcesPath, - ymlFile); - RestResponse importResourceResponse = ResourceRestUtils.createImportResource(importReqDetails, - sdncDesignerDetails, null); - assertEquals("Check response code after importing resource", BaseRestUtils.STATUS_CODE_CREATED, - importResourceResponse.getErrorCode().intValue()); - return importResourceResponse; - } - - private ComponentInstance createComponentInstance(ResourceReqDetails res, User user, ResourceReqDetails vf) - throws Exception { - RestResponse response = ResourceRestUtils.createResourceInstance(res, user, vf.getUniqueId()); - ResourceRestUtils.checkCreateResponse(response); - ComponentInstance compInstance = ResponseParser.parseToObject(response.getResponse(), ComponentInstance.class); - return compInstance; - } - - private void verifyContainerCapabilitiesAndRequirementsOccurrences(Component component, - String CapabilitiesAndRequirementsType, String minReqOccurrences, String maxReqOccurrences, - String minCapabilities, String maxCapabilities) throws Exception { - boolean isRequirementAppear = false; - boolean isCapabilityAppear = false; - List<RequirementDefinition> requirements; - List<CapabilityDefinition> capabilities; - requirements = component.getRequirements().get(CapabilitiesAndRequirementsType); - if (maxReqOccurrences == "0") { - assertTrue(requirements == null); - } // if container MAX requirement = 0 - if (maxReqOccurrences != "0") { - assertNotNull(requirements); - for (RequirementDefinition req : requirements) { - switch (req.getName()) { - case "host": - assertTrue("Check Min Requirement Occurrences ", req.getMinOccurrences().equals(minReqOccurrences)); - assertTrue("Check Max Requirement Occurrences ", req.getMaxOccurrences().equals(maxReqOccurrences)); - isRequirementAppear = true; - break; - } - assertTrue(isRequirementAppear); - isRequirementAppear = false; - } - } - // Container Capabilities - capabilities = component.getCapabilities().get(CapabilitiesAndRequirementsType); - if (maxCapabilities == "0") {// if container MAX capabilities = 0 - assertTrue(capabilities == null); - } - if (maxCapabilities != "0") { - assertNotNull(capabilities); - for (CapabilityDefinition cap : capabilities) { - switch (cap.getName()) { - case "host": - assertTrue("Check Min capability Occurrences ", cap.getMinOccurrences().equals(minCapabilities)); - assertTrue("Check Max capability Occurrences ", cap.getMaxOccurrences().equals(maxCapabilities)); - isCapabilityAppear = true; - break; - } - assertTrue(isCapabilityAppear); - isCapabilityAppear = false; - } - } - - } - - private void verifyContainerInstanceCapabilitiesAndRequirementsOccurrences(Component component, - String CapabilitiesAndRequirementsType, Resource vfWithCapabilities, Resource vfWithRequirements) - throws Exception { - boolean isCapReqAppear = false; - List<ComponentInstance> listOfComponentInstances = component.getComponentInstances(); - - for (ComponentInstance instance : listOfComponentInstances) { - if (instance.getComponentUid().equals(vfWithCapabilities.getUniqueId())) { - List<CapabilityDefinition> capFromResource = vfWithCapabilities.getCapabilities() - .get(CapabilitiesAndRequirementsType); - List<CapabilityDefinition> capFromInstance = instance.getCapabilities() - .get(CapabilitiesAndRequirementsType); - for (CapabilityDefinition resourceCap : capFromResource) - for (CapabilityDefinition instanceReq : capFromInstance) { - if (resourceCap.getUniqueId().equals(instanceReq.getUniqueId())) { - assertTrue("Check Min capability Occurrences ", - resourceCap.getMinOccurrences().equals(instanceReq.getMinOccurrences())); - assertTrue("Check Max capability Occurrences ", - resourceCap.getMaxOccurrences().equals(instanceReq.getMaxOccurrences())); - isCapReqAppear = true; - break; - } - - } - } - - if (instance.getComponentUid().equals(vfWithRequirements.getUniqueId())) { - List<RequirementDefinition> reqFromAtomicResource = vfWithRequirements.getRequirements() - .get(CapabilitiesAndRequirementsType); - List<RequirementDefinition> reqFromInstance = instance.getRequirements() - .get(CapabilitiesAndRequirementsType); - for (RequirementDefinition resourceReq : reqFromAtomicResource) - for (RequirementDefinition instanceReq : reqFromInstance) { - if (resourceReq.getUniqueId().equals(instanceReq.getUniqueId())) { - assertTrue("Check Min Requirement Occurrences ", - resourceReq.getMinOccurrences().equals(instanceReq.getMinOccurrences())); - assertTrue("Check Max Requirement Occurrences ", - resourceReq.getMaxOccurrences().equals(instanceReq.getMaxOccurrences())); - isCapReqAppear = true; - break; - } - } - } - assertTrue(isCapReqAppear); - isCapReqAppear = false; - } - - } - - private RequirementCapabilityRelDef getReqCapRelation(String reqCompInstId, String capCompInstId, String capType, - String reqName, List<CapabilityDefinition> capList, List<RequirementDefinition> reqList, - String vfc1UniqueId, String vfc2UniqueId) { - return ElementFactory.getReqCapRelation(reqCompInstId, capCompInstId, vfc1UniqueId, vfc2UniqueId, capType, - reqName, capList, reqList); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ServiceComponentInstanceCRUDTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ServiceComponentInstanceCRUDTest.java deleted file mode 100644 index ce2c996cc6..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/ServiceComponentInstanceCRUDTest.java +++ /dev/null @@ -1,1407 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertTrue; - -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import org.codehaus.jettison.json.JSONException; -import org.json.JSONArray; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.model.CapReqDef; -import org.openecomp.sdc.be.model.CapabilityDefinition; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.ComponentInstance; -import org.openecomp.sdc.be.model.RequirementCapabilityRelDef; -import org.openecomp.sdc.be.model.RequirementDefinition; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentInstanceBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.BaseValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class ServiceComponentInstanceCRUDTest extends ComponentInstanceBaseTest { - private static Logger log = LoggerFactory.getLogger(ServiceComponentInstanceCRUDTest.class.getName()); - private static final String SPACE_STRING = " "; - private static String REQUIREMENT_NAME = "host"; - private static String CAPABILITY_TYPE = "tosca.capabilities.Container"; - - private String reqOwnerId; - private String capOwnerId; - - public ServiceComponentInstanceCRUDTest() { - super(new TestName(), ServiceComponentInstanceCRUDTest.class.getSimpleName()); - } - - @BeforeMethod(alwaysRun = true) - public void before() throws Exception { - init(); - createComponents(); - } - - private void createComponents() throws Exception { - createAtomicResource(resourceDetailsVFC_01); - createAtomicResource(resourceDetailsVFC_02); - createAtomicResource(resourceDetailsCP_01); - LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncAdminDetails, "0.1", - LifeCycleStatesEnum.CHECKIN); - createAtomicResource(resourceDetailsVL_01); - createAtomicResource(resourceDetailsVL_02); - createVF(resourceDetailsVF_01); - createVF(resourceDetailsVF_02); - createPNF(resourceDetailsPNF_01); - createService(serviceDetails_01); - certifyResource(resourceDetailsVFC_01); - certifyResource(resourceDetailsVFC_02); - RestResponse createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_01, resourceDetailsVFC_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - reqOwnerId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - createAtomicResourceInstance = createAtomicInstanceForVFDuringSetup(resourceDetailsVF_02, resourceDetailsVFC_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - capOwnerId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance);// should - // be - // updated - // to - // getUniqueIdOfFirstInstance - // in - // service - // context - } - - private void certifyResource(ResourceReqDetails resource) throws Exception { - changeResourceLifecycleState(resource, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - changeResourceLifecycleState(resource, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION); - changeResourceLifecycleState(resource, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.CERTIFY); - } - - private void changeResourceLifecycleState(ResourceReqDetails resourceDetails, String userUserId, LifeCycleStatesEnum lifeCycleStates) throws Exception { - RestResponse response = LifecycleRestUtils.changeResourceState(resourceDetails, userUserId, lifeCycleStates); - LifecycleRestUtils.checkLCS_Response(response); - } - - private void changeServiceLifecycleState(ServiceReqDetails serviceDetails, User user, LifeCycleStatesEnum lifeCycleStates) throws Exception { - RestResponse response = LifecycleRestUtils.changeServiceState(serviceDetails, user, lifeCycleStates); - LifecycleRestUtils.checkLCS_Response(response); - } - - private void createVFInstanceFailWithoutChangeState(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception { - RestResponse createVFInstanceSuccessfullyWithoutChangeStateResp = createVFInstance(serviceDetails_01, vfResource, user); - checkErrorMessage(actionStatus, variables, errorCode, createVFInstanceSuccessfullyWithoutChangeStateResp); - } - - private void createVFInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, vfResource, user); - checkErrorMessage(actionStatus, variables, errorCode, createVFInstResp); - } - - private void deleteVFInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails vfResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException { - RestResponse deleteVFInstResp = deleteVFInstance(vfResource.getUniqueId(), serviceDetails_01, user); - checkErrorMessage(actionStatus, variables, errorCode, deleteVFInstResp); - } - - private void createAtomicResourceInstanceFailWithoutChangeState(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException { - RestResponse createAtomicInstResp = createAtomicInstanceForService(serviceDetails_01, atomicResource, user); - checkErrorMessage(actionStatus, variables, errorCode, createAtomicInstResp); - } - - private void createAtomicResourceInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException { - RestResponse createAtomicInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, atomicResource, user); - checkErrorMessage(actionStatus, variables, errorCode, createAtomicInstResp); - } - - private void deleteAtomicResourceInstanceFail(ActionStatus actionStatus, List<String> variables, ResourceReqDetails atomicResource, User user, int errorCode) throws Exception, FileNotFoundException, JSONException { - RestResponse deleteAtomicInstResp = deleteAtomicInstanceForService(atomicResource.getUniqueId(), serviceDetails_01, user); - checkErrorMessage(actionStatus, variables, errorCode, deleteAtomicInstResp); - } - - private void checkErrorMessage(ActionStatus actionStatus, List<String> variables, int errorCode, RestResponse response) throws Exception { - - log.debug(response.getResponse()); - AssertJUnit.assertEquals(errorCode, response.getErrorCode().intValue()); - ErrorValidationUtils.checkBodyResponseOnError(actionStatus.name(), variables, response.getResponse()); - } - - private RestResponse createCheckedinVFInstance(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception { - changeResourceLifecycleState(compInstOriginDetails, compInstOriginDetails.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN); - return createVFInstance(containerDetails, compInstOriginDetails, modifier); - } - - private RestResponse createCheckedinPNFInstance(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception { - return createCheckedinVFInstance(containerDetails, compInstOriginDetails, modifier); - } - - private RestResponse createCheckedinAtomicInstanceForService(ServiceReqDetails containerDetails, ResourceReqDetails compInstOriginDetails, User modifier) throws Exception { - changeResourceLifecycleState(compInstOriginDetails, compInstOriginDetails.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN); - return createAtomicInstanceForService(containerDetails, compInstOriginDetails, modifier); - } - - private void createVFInstanceAndAtomicResourceInstanceWithoutCheckin(ResourceReqDetails vf, ResourceReqDetails atomicResource, User user) throws Exception { - RestResponse createVFInstance = createVFInstance(serviceDetails_01, vf, user); - ResourceRestUtils.checkCreateResponse(createVFInstance); - RestResponse atomicInstanceForService = createAtomicInstanceForService(serviceDetails_01, atomicResource, user); - ResourceRestUtils.checkCreateResponse(atomicInstanceForService); - } - - private void createVFInstanceAndAtomicResourceInstanceSuccessully(ResourceReqDetails vf, ResourceReqDetails atomicResource) throws Exception, IOException { - createVFInstanceAndAtomicResourceInstanceSuccessully(vf, atomicResource, sdncDesignerDetails); - } - - private void createVFInstanceAndAtomicResourceInstanceSuccessully(ResourceReqDetails vf, ResourceReqDetails atomicResource, User user) throws Exception, IOException { - changeResourceLifecycleState(vf, vf.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN); - changeResourceLifecycleState(atomicResource, atomicResource.getCreatorUserId(), LifeCycleStatesEnum.CHECKIN); - createVFInstanceAndAtomicResourceInstanceWithoutCheckin(vf, atomicResource, user); - } - - @Test - public void createVFInstanceSuccessfullyTest() throws Exception { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void createPNFInstanceSuccessfullyTest() throws Exception { - RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createPNFInstResp); - getComponentAndValidateRIs(serviceDetails_01, 1, 0); -// createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); -// ResourceRestUtils.checkCreateResponse(createVFInstResp); -// getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void createVFAndAtomicInstanceTest() throws Exception { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - getComponentAndValidateRIs(serviceDetails_01, 4, 0); - } - - @Test - public void createPNFAndAtomicInstanceTest() throws Exception { - RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createPNFInstResp); - RestResponse createVLInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVLInstResp); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - - } - - private String createCpInstance() throws Exception { - // Create CP instance - RestResponse createAtomicResourceInstance = createAtomicInstanceForVF(resourceDetailsPNF_01, - resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - getComponentAndValidateRIs(resourceDetailsPNF_01, 1, 0); - return ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - } - - @Test - public void createPNFAndAtomicInstanceAssociatedTest() throws Exception { - reqOwnerId = createCpInstance(); - RestResponse createPNFInstResp = createCheckedinPNFInstance(serviceDetails_01, resourceDetailsPNF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createPNFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createPNFInstResp); - RestResponse createVLInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVLInstResp); - capOwnerId = ResponseParser.getUniqueIdFromResponse(createVLInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVLInstResp); - - String capType = "tosca.capabilities.network.Linkable"; - String reqName = "link"; - - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, capList, reqList); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - capReqDef = ResponseParser.parseToObjectUsingMapper(getResourceResponse.getResponse(), CapReqDef.class); - List<RequirementDefinition> list = capReqDef.getRequirements().get(capType); -// AssertJUnit.assertEquals("Check requirement", null, list); - getComponentAndValidateRIsOnly(serviceDetails_01, 2, 1); - } - - @Test - public void deleteAtomicInstanceTest() throws Exception { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - // 1 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - // 2 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_01, sdncDesignerDetails); - // 3 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails); - // 4 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - // To delete - String compInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // 3 rel - createVFInstResp = deleteAtomicInstanceForService(compInstId, serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(createVFInstResp); - getComponentAndValidateRIs(serviceDetails_01, 3, 0); - } - - @Test - public void deleteVFInstanceTest() throws Exception { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - // 1 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String compInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - // 2 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - createVFInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - // 3 rel - ResourceRestUtils.checkCreateResponse(createVFInstResp); - // 2 rel - createVFInstResp = deleteVFInstance(compInstId, serviceDetails_01, sdncDesignerDetails); - ResourceRestUtils.checkDeleteResponse(createVFInstResp); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void associateDissociateTwoVFs() throws Exception { - - RestResponse createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String fromCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String toCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - - String capType = CAPABILITY_TYPE; - String reqName = REQUIREMENT_NAME; - - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(fromCompInstId, toCompInstId, capType, reqName, capList, reqList); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<RequirementDefinition> list = capReqDef.getRequirements().get(capType); - AssertJUnit.assertEquals("Check requirement", null, list); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - list = capReqDef.getRequirements().get(capType); - AssertJUnit.assertEquals("Check requirement", 1, list.size()); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - private RequirementCapabilityRelDef getReqCapRelation(String reqCompInstId, String capCompInstId, String capType, String reqName, List<CapabilityDefinition> capList, List<RequirementDefinition> reqList) { - return ElementFactory.getReqCapRelation(reqCompInstId, capCompInstId, reqOwnerId, capOwnerId, capType, reqName, capList, reqList); - } - - @Test - public void createResourceInstanceByDifferentDesignerTest() throws Exception { - createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409); - createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void createResourceInstanceByDifferentDesignerTest_ServiceIsCheckedin() throws Exception { - User designer2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, designer2, LifeCycleStatesEnum.CHECKOUT); - - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01, designer2); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - } - - @Test - public void createResourceInstanceByTester() throws Exception { - createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409); - createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void createResourceInstanceWithNotASDCUserTest() throws Exception { - sdncDesignerDetails.setUserId("ab0001"); - createVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409); - createAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void createResourceInstanceWithEmptyUserIdTest() throws Exception { - sdncDesignerDetails.setUserId(""); - createVFInstanceFail(ActionStatus.MISSING_INFORMATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 403); - createAtomicResourceInstanceFail(ActionStatus.MISSING_INFORMATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 403); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void createResourceInstanceWithEmptyServiceUidTest() throws Exception { - serviceDetails_01.setUniqueId(""); - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - assertEquals(404, createVFInstResp.getErrorCode().intValue()); - RestResponse createAtomicInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - assertEquals(404, createAtomicInstResp.getErrorCode().intValue()); - } - - @Test - public void createResourceInstanceWhileResourceNotExistTest() throws Exception { - String vfResourceUniqueId = "1234"; - String atomicResourceUniqueId = "5678"; - - resourceDetailsVF_01.setUniqueId(vfResourceUniqueId); - resourceDetailsCP_01.setUniqueId(atomicResourceUniqueId); - - createVFInstanceFailWithoutChangeState(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404); - createAtomicResourceInstanceFailWithoutChangeState(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404); - } - - @Test - public void createResourceInstanceInServiceNotExistsTest() throws Exception { - serviceDetails_01.setUniqueId("1234"); - createVFInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404); - createAtomicResourceInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404); - } - - @Test - public void createResourceInstanceInCheckedinServiceTest() throws Exception { - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - - createVFInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409); - createAtomicResourceInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test(enabled = false) - public void createResourceInstance_ResourceInCheckoutStateTest() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - RestResponse createVFInstanceWithoutChangeStateResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ComponentInstanceRestUtils.checkCreateResponse(createVFInstanceWithoutChangeStateResp); - RestResponse createAtomicInstWithoutCheangeStateResp = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ComponentInstanceRestUtils.checkCreateResponse(createAtomicInstWithoutCheangeStateResp); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void createResourceInstance_ResourceInCertificationRequestStateTest() throws Exception { - changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - changeResourceLifecycleState(resourceDetailsCP_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void createResourceInstance_startCertificationStateTest() throws Exception { - changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - changeResourceLifecycleState(resourceDetailsCP_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CERTIFICATIONREQUEST); - - changeResourceLifecycleState(resourceDetailsVF_01, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION); - changeResourceLifecycleState(resourceDetailsCP_01, sdncTesterDetails.getUserId(), LifeCycleStatesEnum.STARTCERTIFICATION); - - createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - } - - @Test - public void createResourceInstance_certifiedStateTest() throws Exception { - certifyResource(resourceDetailsVF_01); - certifyResource(resourceDetailsCP_01); - - createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails); - } - - @Test - public void createResourceInstance_OneHasDifferentOwner() throws Exception { - User designer2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - - ResourceReqDetails vfResource = new ResourceReqDetails(resourceDetailsVF_01, "0.1"); - vfResource.setUniqueId(null); - vfResource.setName("newVF"); - vfResource.setTags(new ArrayList<String>(Arrays.asList(vfResource.getName()))); - createVF(vfResource, designer2); - - RestResponse atomicInstanceForService = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(atomicInstanceForService); - createVFInstanceFailWithoutChangeState(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), vfResource, designer2, 409); - - getComponentAndValidateRIs(serviceDetails_01, 1, 0); - } - - @Test - public void indexesOfVFInstancesTest() throws Exception { - String firstInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "1"; - String secondInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "2"; - String thirdInstanceName = resourceDetailsVF_01.getName() + SPACE_STRING + "3"; - - LifecycleRestUtils.changeResourceState(resourceDetailsVF_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - - RestResponse createFirstVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createSecondVFInstResp); - RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createThirdVFInstResp); - - Component service = getComponentAndValidateRIs(serviceDetails_01, 3, 0); - List<ComponentInstance> componentInstancesList = service.getComponentInstances(); - for (ComponentInstance instance : componentInstancesList) { - String instanceName = instance.getName(); - boolean isEqualToFirstInstanceName = instanceName.equals(firstInstanceName); - boolean isEqualToSecondInstanceName = instanceName.equals(secondInstanceName); - boolean isEqualToThirdInstanceName = instanceName.equals(thirdInstanceName); - assertTrue(isEqualToFirstInstanceName || isEqualToSecondInstanceName || isEqualToThirdInstanceName); - } - } - - @Test - public void vfInstancesAmountInTwoServiceVersionsTest() throws Exception { - String oldServiceUniqueId = serviceDetails_01.getUniqueId(); - - createTwoCheckedinVFInstances(); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - - String newSerivceUniqueIdAfterChangeLifecycleState = serviceDetails_01.getUniqueId(); - getComponentAndValidateRIsAfterChangeLifecycleState(oldServiceUniqueId, serviceDetails_01, 2, 0); - - // Check old version - checkServiceOldVersionRIs(oldServiceUniqueId, newSerivceUniqueIdAfterChangeLifecycleState, 2, 0); - - // Add one more resource instance to second version of service - LifecycleRestUtils.changeResourceState(resourceDetailsVL_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - RestResponse createAtomicResourceInstResp = createAtomicResourceInstanceToSecondServiceVersion(newSerivceUniqueIdAfterChangeLifecycleState, resourceDetailsVL_01); - String atomicResourceUniqueId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstResp); - getComponentAndValidateRIsAfterAddingAtomicResourceInstance(oldServiceUniqueId, serviceDetails_01, 3, 0); - - // Check that RIs are same as in the beginning - like in old version of - // service - deleteCompInstReqCapFromExpected(atomicResourceUniqueId); - checkServiceOldVersionRIs(oldServiceUniqueId, newSerivceUniqueIdAfterChangeLifecycleState, 2, 0); - - } - - private void createTwoCheckedinVFInstances() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createSecondVFInstResp); - } - - private void getComponentAndValidateRIsAfterAddingAtomicResourceInstance(String oldComponentUniqueId, ComponentReqDetails componentDetails, int numOfRIs, int numOfRelations) throws Exception { - getComponentAndValidateRIsAfterChangeLifecycleState(oldComponentUniqueId, componentDetails, numOfRIs, numOfRelations); - - } - - private void checkServiceOldVersionRIs(String oldUniqueId, String newUniqueId, int numOfRIs, int numOfRelations) throws IOException, Exception { - serviceDetails_01.setUniqueId(oldUniqueId); - getComponentAndValidateRIsAfterChangeLifecycleState(newUniqueId, serviceDetails_01, numOfRIs, numOfRelations); - } - - private RestResponse createAtomicResourceInstanceToSecondServiceVersion(String secondServiceUniqueId, ResourceReqDetails resourceToAdd) throws Exception { - serviceDetails_01.setUniqueId(secondServiceUniqueId); - RestResponse createAtomicResourceInstResp = createAtomicInstanceForService(serviceDetails_01, resourceToAdd, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstResp); - return createAtomicResourceInstResp; - } - - @Test - public void createResourceInstanceToUnsupportedComponentTest() throws Exception { - String unsupportedType = "unsupported"; - ComponentInstanceReqDetails resourceInstanceReqDetails = ElementFactory.getComponentResourceInstance(resourceDetailsCP_01); - RestResponse createResourceInstanceResponse = ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, sdncDesignerDetails, serviceDetails_01.getUniqueId(), unsupportedType); - checkErrorMessage(ActionStatus.UNSUPPORTED_ERROR, new ArrayList<String>(Arrays.asList(unsupportedType)), 400, createResourceInstanceResponse); - } - - @Test - public void deleteResourceInstanceByDifferentDesignerTest() throws Exception { - - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01); - - deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409); - deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), 409); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void deleteResourceInstanceByDifferentDesignerTest_ServiceIsCheckedin() throws Exception { - - String oldServiceUniqueId = serviceDetails_01.getUniqueId(); - - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - RestResponse createAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstResp); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), LifeCycleStatesEnum.CHECKOUT); - String newServiceUniqueId = serviceDetails_01.getUniqueId(); - - String oldVFInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - String newVFInstanceUniqueId = oldVFInstanceUniqueId.replaceAll(oldServiceUniqueId, serviceDetails_01.getUniqueId()); - String oldAtomicResourceInstanceUniqueId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstResp); - String newAtomicResourceInstanceUniqueId = oldAtomicResourceInstanceUniqueId.replaceAll(oldServiceUniqueId, serviceDetails_01.getUniqueId()); - - deleteVFInstanceAndAtomicResourceInstanceSuccessfully(newVFInstanceUniqueId, newAtomicResourceInstanceUniqueId, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2)); - - serviceDetails_01.setUniqueId(oldServiceUniqueId); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - serviceDetails_01.setUniqueId(newServiceUniqueId); - updateExpectedReqCapAfterChangeLifecycleState(oldServiceUniqueId, serviceDetails_01.getUniqueId()); - deleteCompInstReqCapFromExpected(newVFInstanceUniqueId); - deleteCompInstReqCapFromExpected(newAtomicResourceInstanceUniqueId); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - private void deleteVFInstanceAndAtomicResourceInstanceSuccessfully(String vfInstanceUniqueId, String atomicResourceInstanceUniqueId) throws IOException, Exception { - deleteVFInstanceAndAtomicResourceInstanceSuccessfully(vfInstanceUniqueId, atomicResourceInstanceUniqueId, sdncDesignerDetails); - } - - private void deleteVFInstanceAndAtomicResourceInstanceSuccessfully(String vfInstanceUniqueId, String atomicResourceInstanceUniqueId, User user) throws IOException, Exception { - RestResponse deleteVFInstResp = deleteVFInstance(vfInstanceUniqueId, serviceDetails_01, user); - ResourceRestUtils.checkDeleteResponse(deleteVFInstResp); - RestResponse deleteAtomicResourceInsResp = deleteAtomicInstanceForService(atomicResourceInstanceUniqueId, serviceDetails_01, user); - ResourceRestUtils.checkDeleteResponse(deleteAtomicResourceInsResp); - } - - @Test - public void deleteResourceInstanceByTesterUserTest() throws Exception { - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01); - deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409); - deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), 409); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void deleteResourceInstanceByNotASDCUserTest() throws Exception { - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01); - User notASDCUser = new User(); - notASDCUser.setUserId("ab0001"); - deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, notASDCUser, 409); - deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, notASDCUser, 409); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void deleteResourceInstanceFromCheckedinServiceTest() throws Exception { - createVFInstanceAndAtomicResourceInstanceSuccessully(resourceDetailsVF_01, resourceDetailsCP_01); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409); - deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void deleteResourceInstanceWhileResourceCertifiedStateTest() throws Exception { - certifyResource(resourceDetailsVF_01); - certifyResource(resourceDetailsCP_01); - - RestResponse createVFInstance = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstance); - String vfInstUniqueId = ResponseParser.getUniqueIdFromResponse(createVFInstance); - RestResponse atomicInstanceForService = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(atomicInstanceForService); - String atomicInstUniqueId = ResponseParser.getUniqueIdFromResponse(atomicInstanceForService); - - deleteVFInstanceAndAtomicResourceInstanceSuccessfully(vfInstUniqueId, atomicInstUniqueId); - - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - // fail - bug DE191849 - @Test - public void deleteNotFoundResourceInstanceTest() throws Exception, Throwable { - - resourceDetailsVF_01.setUniqueId("1234"); - resourceDetailsCP_01.setUniqueId("5678"); - - deleteVFInstanceFail(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404); - deleteAtomicResourceInstanceFail(ActionStatus.RESOURCE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - - // {"requestError":{"serviceException":{"messageId":"SVC4503","text":"Error: - // Requested '%1' service was not found.","variables":["1234"]}}}> - } - - @Test - public void deleteResourceInstanceFromServiceNotFoundTest() throws Exception, Throwable { - serviceDetails_01.setUniqueId("1234"); - deleteVFInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsVF_01, sdncDesignerDetails, 404); - deleteAtomicResourceInstanceFail(ActionStatus.SERVICE_NOT_FOUND, new ArrayList<String>(Arrays.asList("")), resourceDetailsCP_01, sdncDesignerDetails, 404); - } - - @Test - public void deleteResourceInstanceFromUnsupportedTypeTest() throws Exception { - String unsupportedType = "unsupportedType"; - RestResponse deleteVFInstanceResponse = ComponentInstanceRestUtils.deleteComponentInstance(sdncDesignerDetails, serviceDetails_01.getUniqueId(), resourceDetailsVF_01.getUniqueId(), unsupportedType); - checkErrorMessage(ActionStatus.UNSUPPORTED_ERROR, new ArrayList<String>(Arrays.asList(unsupportedType)), 400, deleteVFInstanceResponse); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void deleteResourceInstanceWithEmptyServiceUidTest() throws Exception, Throwable { - serviceDetails_01.setUniqueId(""); - RestResponse deleteVFInstResp = deleteVFInstance(resourceDetailsVF_01.getUniqueId(), serviceDetails_01, sdncDesignerDetails); - assertEquals(404, deleteVFInstResp.getErrorCode().intValue()); - } - - @Test - public void deleteResourceInstanceWithEmptyResourceInstanceUidTest() throws Exception, Throwable { - RestResponse deleteVFInstResp = deleteVFInstance("", serviceDetails_01, sdncDesignerDetails); - assertEquals(405, deleteVFInstResp.getErrorCode().intValue()); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - @Test - public void deleteResourceInstanceWithEmptyUserIdTest() throws Exception { - sdncDesignerDetails.setUserId(""); - deleteVFInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsVF_01, sdncDesignerDetails, 409); - deleteAtomicResourceInstanceFail(ActionStatus.RESTRICTED_OPERATION, new ArrayList<String>(), resourceDetailsCP_01, sdncDesignerDetails, 409); - getComponentAndValidateRIs(serviceDetails_01, 0, 0); - } - - // fail - bug DE188994 - @Test - public void associateResourceInstanceToResourceInstanceNotFoundTest() throws Exception, Throwable { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - String capCompInstId = "1234"; - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - List<CapabilityDefinition> capListBeforeAssociate = new ArrayList<CapabilityDefinition>(); - CapabilityDefinition cap = new CapabilityDefinition(); - cap.setUniqueId(capCompInstId); - capListBeforeAssociate.add(cap); - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList(capCompInstId))); - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, - // requirementsAfterAssoicate); - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capabilitiesAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 1, 0); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "VF100 1", - // "9ae76786-2a9c-4409-95cb-db32885ed07f.eece8aaf-eb9f-4aff-b9a5-a11ca11de9e5.vf1001", - // "host" - // ] - } - - // this case is not relevant any more, it is tested as part of occurrences - // story - @Test(enabled = false) - public void associateOnceAgainExistingRelationTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - ////////////////////////////////////////////// - // NO ERROR - RELATION ALREADY EXIST - // assocaiteInstancesFail(requirementDef, sdncDesignerDetails, - // ActionStatus.RESOURCE_INSTANCE_NOT_FOUND, 404, new - // ArrayList<String>(Arrays.asList(capCompInstId))); - ////////////////////////////////////////////// - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListAfterAssociate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - - // AssertJUnit.assertEquals("Check requirement", null, - // reqListAfterAssociate); - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capListAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - // "messageId": "SVC4119", - // "text": "Error: No relation found between resource instances - // \u0027%1\u0027 and \u0027%2\u0027 for requirement \u0027%3\u0027.", - // "variables": [ - // "VF100 1", - // "VF_admin 2", - // "host" - - } - - @Test - public void associateInstancesInMissingServiceTest() throws Exception { - serviceDetails_01.setUniqueId("1234"); - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.SERVICE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList(""))); - } - - @Test - public void associateAfterDeletingResourceTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - ResourceRestUtils.deleteResource(resourceDetailsVF_01.getUniqueId(), sdncDesignerDetails.getUserId()); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - - // for (CapabilityDefinition capabilityDefinition : - // capListBeforeAssociate) { - // if (capabilityDefinition.getType().equals(CAPABILITY_TYPE)){ - // capabilityDefinition.setMinOccurrences("0"); - // } - // } - // - // List<RequirementDefinition> reqListAfterAssociate = - // capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // - // AssertJUnit.assertEquals("Check requirement", null, - // reqListAfterAssociate); - // - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capListAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - } - - @Test - public void associateInstancesInCheckedinServiceTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - - assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, requirementsAfterAssoicate); - AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, capabilitiesAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - // fail - bug DE188994 - @Test - public void associateAfterCheckoutAllInstancesTest() throws Exception { - String firstVFUniqueId = resourceDetailsVF_01.getUniqueId(); - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - String secondVFUniqueId = resourceDetailsVF_02.getUniqueId(); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - changeResourceLifecycleState(resourceDetailsVF_01, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CHECKOUT); - changeResourceLifecycleState(resourceDetailsVF_02, sdncDesignerDetails.getUserId(), LifeCycleStatesEnum.CHECKOUT); - - requirementDef.setFromNode(requirementDef.getFromNode().replaceAll(firstVFUniqueId, resourceDetailsVF_01.getUniqueId())); - requirementDef.setToNode(requirementDef.getToNode().replaceAll(secondVFUniqueId, resourceDetailsVF_02.getUniqueId())); - - assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, - // requirementsAfterAssoicate); - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capabilitiesAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - // "messageId": "SVC4116", - // "text": "Error: Invalid Content.", - // "variables": [ - // "e9dcea15-ce27-4381-a554-4278973cefb1.d0b3affd-cf92-4626-adfe-961b44103924.vf1001", - // "e9dcea15-ce27-4381-a554-4278973cefb1.d0b3affd-cf92-4626-adfe-961b44103924.vf1001", - // "host" - // ] - - } - - @Test - public void associateInstancesByDifferentUsersTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.TESTER), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.OPS), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - assocaiteInstancesFail(requirementDef, ElementFactory.getDefaultUser(UserRoleEnum.PRODUCT_MANAGER1), ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, requirementsAfterAssoicate); - AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, capabilitiesAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - private void assocaiteInstancesFail(RequirementCapabilityRelDef requirementDef, User user, ActionStatus actionStatus, int errorCode, List<String> variables) throws IOException, Exception { - RestResponse associateInstancesResp = ComponentInstanceRestUtils.associateInstances(requirementDef, user, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - checkErrorMessage(actionStatus, variables, errorCode, associateInstancesResp); - } - - private void dissoicateInstancesFail(RequirementCapabilityRelDef requirementDef, User user, ActionStatus actionStatus, int errorCode, List<String> variables) throws IOException, Exception { - RestResponse dissoicateInstancesResp = ComponentInstanceRestUtils.dissociateInstances(requirementDef, user, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - checkErrorMessage(actionStatus, variables, errorCode, dissoicateInstancesResp); - } - - @Test - public void associateWithMissingServiceUidTest() throws Exception { - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - serviceDetails_01.setUniqueId(""); - RestResponse associateInstancesResp = ComponentInstanceRestUtils.associateInstances(requirementDef, sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals(404, associateInstancesResp.getErrorCode().intValue()); - } - - // fail - bug DE191824 - @Test - public void associateNotCompitableReqCapTest() throws Exception { - RestResponse createFirstAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - String reqCompInstName = ResponseParser.getNameFromResponse(createFirstAtomicResourceInstResp); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstAtomicResourceInstResp); - RestResponse createSecondAtomicResourceInstResp = createCheckedinAtomicInstanceForService(serviceDetails_01, resourceDetailsVL_02, sdncDesignerDetails); - String capCompInstName = ResponseParser.getNameFromResponse(createSecondAtomicResourceInstResp); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondAtomicResourceInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - List<String> variables = new ArrayList<String>(); - variables.add(reqCompInstName); - variables.add(capCompInstName); - variables.add(REQUIREMENT_NAME); - - assocaiteInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_MATCH_NOT_FOUND, 404, variables); - - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capabilitiesAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> requirementsAfterAssoicate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, - // requirementsAfterAssoicate); - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capabilitiesAfterAssociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - // {"requestError":{"serviceException":{"messageId":"SVC4119","text":"Error: - // No relation found between resource instances '%1' and '%2' for - // requirement '%3'.","variables":["CP100 1","VL200 2","host"]}}}> - } - - @Test - public void associateInstancesInTwoServiceVersionsTest() throws Exception { - String oldServiceUniqueId = serviceDetails_01.getUniqueId(); - RestResponse createFirstVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - String secondServiceUniqueId = serviceDetails_01.getUniqueId(); - - serviceDetails_01.setUniqueId(oldServiceUniqueId); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - updateCapabilitiesOwnerId(oldServiceUniqueId, capListBeforeAssociate, secondServiceUniqueId); - updateExpectedReqCapAfterChangeLifecycleState(oldServiceUniqueId, secondServiceUniqueId); - CapReqDef capReqDefAfterAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterAssociate = capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListAfterAssociate = capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", null, - // reqListAfterAssociate); - // AssertJUnit.assertEquals("Check capabilities", - // capListBeforeAssociate, capListAfterAssociate); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqSecondCompInstId = ResponseParser.getUniqueIdFromResponse(createThirdVFInstResp); - - CapReqDef capReqDefBeforeSeconderyAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeSeconderyAssociate = capReqDefBeforeSeconderyAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeSeconderyAssociate = capReqDefBeforeSeconderyAssociate.getRequirements().get(CAPABILITY_TYPE); - - capCompInstId = capCompInstId.replaceAll(oldServiceUniqueId, secondServiceUniqueId); - RequirementCapabilityRelDef secondRequirementDef = getReqCapRelation(reqSecondCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeSeconderyAssociate, reqListBeforeSeconderyAssociate); - associateComponentInstancesForService(secondRequirementDef, serviceDetails_01, sdncDesignerDetails); - - CapReqDef capReqDefAfterSeconderyAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterSeconderyAssociate = capReqDefAfterSeconderyAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListAfterSeconderyAssociate = capReqDefAfterSeconderyAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", null, - // reqListAfterSeconderyAssociate); - // AssertJUnit.assertEquals("Check capabilities", - // capListBeforeAssociate, capListAfterSeconderyAssociate); - getComponentAndValidateRIs(serviceDetails_01, 3, 2); - } - - private void updateCapabilitiesOwnerId(String oldUniqueId, List<CapabilityDefinition> capList, String newUniqueId) { - serviceDetails_01.setUniqueId(newUniqueId); - for (CapabilityDefinition cap : capList) { - String oldOwnerId = cap.getOwnerId(); - String newOwnerId = oldOwnerId.replaceAll(oldUniqueId, newUniqueId); - cap.setOwnerId(newOwnerId); - } - } - - @Test - public void dissociateRelationNotFoundTest() throws Exception { - createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = "1234"; - createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = "4567"; - - CapReqDef capReqDef = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capList, reqList); - - List<String> variables = new ArrayList<String>(); - variables.add(reqCompInstId); - variables.add(capCompInstId); - variables.add(REQUIREMENT_NAME); - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables); - - CapReqDef capReqDefAfterDissociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterDissociate = capReqDefAfterDissociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListAfterDissociate = capReqDefAfterDissociate.getRequirements().get(CAPABILITY_TYPE); - - AssertJUnit.assertEquals("Check requirement", 1, reqListAfterDissociate.size()); - AssertJUnit.assertEquals("Check requirement", reqList, reqListAfterDissociate); - AssertJUnit.assertEquals("Check capabilities", capList, capListAfterDissociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - - } - - @Test - public void dissociateRelationInServiceNotFoundTest() throws Exception { - String uniqueId = "1234"; - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - serviceDetails_01.setUniqueId(uniqueId); - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.SERVICE_NOT_FOUND, 404, new ArrayList<String>(Arrays.asList(""))); - - } - - @Test - public void dissoicateRelationWhileInstanceNotFound() throws Exception { - String capUniqueId = "1234"; - - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = capUniqueId; - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - List<String> variables = new ArrayList<String>(); - variables.add(reqCompInstId); - variables.add(capCompInstId); - variables.add(REQUIREMENT_NAME); - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables); - - CapReqDef capReqDefAfterDissociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListAfterDissociate = capReqDefAfterDissociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListAfterDissociate = capReqDefAfterDissociate.getRequirements().get(CAPABILITY_TYPE); - AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, reqListAfterDissociate); - AssertJUnit.assertEquals("Check capabilities", capListBeforeAssociate, capListAfterDissociate); - - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void dissociateWhileServiceCheckedinTest() throws Exception { - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - } - - @Test - public void dissoicateWithEmptyUserIdHeaderTest() throws Exception { - sdncDesignerDetails.setUserId(""); - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESTRICTED_OPERATION, 409, new ArrayList<String>()); - } - - @Test - public void dissociateWithMissingUidOfServiceTest() throws Exception { - serviceDetails_01.setUniqueId(""); - RequirementCapabilityRelDef requirementDef = new RequirementCapabilityRelDef(); - RestResponse dissociateResp = ComponentInstanceRestUtils.dissociateInstances(requirementDef, sdncDesignerDetails, serviceDetails_01.getUniqueId(), ComponentTypeEnum.SERVICE); - assertEquals(404, dissociateResp.getErrorCode().intValue()); - } - - @Test - public void relationDeletedAfterDeletingResourceInstanceTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - - RestResponse deleteVFInstance = deleteVFInstance(reqCompInstId, serviceDetails_01, sdncDesignerDetails); - ComponentInstanceRestUtils.checkDeleteResponse(deleteVFInstance); - getComponentAndValidateRIs(serviceDetails_01, 1, 0); - } - - @Test - public void relationNotFoundInSecondVersionAfterDissociateTest() throws Exception { - String oldContainerUniqueIdToReplace = serviceDetails_01.getUniqueId(); - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - - updateExpectedReqCapAfterChangeLifecycleState(oldContainerUniqueIdToReplace, serviceDetails_01.getUniqueId()); - getComponentAndValidateRIs(serviceDetails_01, 2, 0); - } - - @Test - public void dissociateOnceAgainTest() throws Exception { - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - String reqCompInsName = ResponseParser.convertComponentInstanceResponseToJavaObject(createFirstVFInstResp.getResponse()).getName(); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - String capCompInstName = ResponseParser.convertComponentInstanceResponseToJavaObject(createSecondVFInstResp.getResponse()).getName(); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - dissociateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - - List<String> variables = new ArrayList<String>(); - variables.add(reqCompInsName); - variables.add(capCompInstName); - variables.add(REQUIREMENT_NAME); - - dissoicateInstancesFail(requirementDef, sdncDesignerDetails, ActionStatus.RESOURCE_INSTANCE_RELATION_NOT_FOUND, 404, variables); - } - - // fail - bug : DE191707 - @Test - public void associateTwoRelations_CheckinCheckout_DissoicateOneRelationInSecondVersion() throws Exception { - String oldContainerUniqueIdToReplace = serviceDetails_01.getUniqueId(); - RestResponse createFirstVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createFirstVFInstResp); - RestResponse createSecondVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createSecondVFInstResp); - RestResponse createThirdVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - String secondReqCompInstId = ResponseParser.getUniqueIdFromResponse(createThirdVFInstResp); - - CapReqDef capReqDefBeforeAssociate = ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - List<CapabilityDefinition> capListBeforeAssociate = capReqDefBeforeAssociate.getCapabilities().get(CAPABILITY_TYPE); - List<RequirementDefinition> reqListBeforeAssociate = capReqDefBeforeAssociate.getRequirements().get(CAPABILITY_TYPE); - - RequirementCapabilityRelDef requirementDefFirstRelation = getReqCapRelation(reqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - RequirementCapabilityRelDef requirementDefSecondRelation = getReqCapRelation(secondReqCompInstId, capCompInstId, CAPABILITY_TYPE, REQUIREMENT_NAME, capListBeforeAssociate, reqListBeforeAssociate); - - associateComponentInstancesForService(requirementDefFirstRelation, serviceDetails_01, sdncDesignerDetails); - associateComponentInstancesForService(requirementDefSecondRelation, serviceDetails_01, sdncDesignerDetails); - getComponentAndValidateRIs(serviceDetails_01, 3, 2); - - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKOUT); - String newContainerUniqueId = serviceDetails_01.getUniqueId(); - - // check if dissoicate of old relation is possibile - // dissoicateInstancesFail(requirementDefFirstRelation, - // sdncDesignerDetails, actionStatus, errorCode, variables); - getComponentAndValidateRIs(serviceDetails_01, 3, 2); - - requirementDefFirstRelation.setFromNode(reqCompInstId.replaceAll(oldContainerUniqueIdToReplace, newContainerUniqueId)); - requirementDefFirstRelation.setToNode(reqCompInstId.replaceAll(oldContainerUniqueIdToReplace, newContainerUniqueId)); - - dissociateComponentInstancesForService(requirementDefFirstRelation, serviceDetails_01, sdncDesignerDetails); - - // updateCapabilitiesOwnerId(oldContainerUniqueIdToReplace, - // capListBeforeAssociate, newContainerUniqueId); - // CapReqDef capReqDefAfterAssociate = - // ComponentRestUtils.getAndParseComponentRequirmentsCapabilities(sdncDesignerDetails, - // serviceDetails_01); - // List<CapabilityDefinition> capListAfterAssociate = - // capReqDefAfterAssociate.getCapabilities().get(CAPABILITY_TYPE); - // List<RequirementDefinition> reqListAfterAssociate = - // capReqDefAfterAssociate.getRequirements().get(CAPABILITY_TYPE); - // AssertJUnit.assertEquals("Check requirement", reqListBeforeAssociate, - // reqListAfterAssociate); - // AssertJUnit.assertEquals("Check requirement", capListBeforeAssociate, - // capListAfterAssociate); - updateExpectedReqCapAfterChangeLifecycleState(oldContainerUniqueIdToReplace, serviceDetails_01.getUniqueId()); - getComponentAndValidateRIs(serviceDetails_01, 3, 1); - } - - @Test - public void createResourceInstancesAndUpdatedServiceMetadataTest() throws Exception, Exception { - serviceDetails_02.setUniqueId(serviceDetails_01.getUniqueId()); - createTwoCheckedinVFInstances(); - LifecycleRestUtils.changeResourceState(resourceDetailsCP_01, sdncDesignerDetails, "0.1", LifeCycleStatesEnum.CHECKIN); - createVFInstanceAndAtomicResourceInstanceWithoutCheckin(resourceDetailsVF_01, resourceDetailsCP_01, sdncDesignerDetails); - RestResponse updateServiceResp = ServiceRestUtils.updateService(serviceDetails_02, sdncDesignerDetails); - ServiceRestUtils.checkSuccess(updateServiceResp); - getComponentAndValidateRIs(serviceDetails_01, 4, 0); - } - - @Test(enabled = false) - public void forAcceptanceUserStory() throws Exception { - RestResponse createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String reqCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - String capCompInstId = ResponseParser.getUniqueIdFromResponse(createVFInstResp); - - String capType = CAPABILITY_TYPE; - String reqName = REQUIREMENT_NAME; - - RestResponse getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - ResourceRestUtils.checkSuccess(getResourceResponse); - CapReqDef capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<CapabilityDefinition> capList = capReqDef.getCapabilities().get(capType); - List<RequirementDefinition> reqList = capReqDef.getRequirements().get(capType); - - RequirementCapabilityRelDef requirementDef = getReqCapRelation(reqCompInstId, capCompInstId, capType, reqName, capList, reqList); - - associateComponentInstancesForService(requirementDef, serviceDetails_01, sdncDesignerDetails); - getResourceResponse = ComponentRestUtils.getComponentRequirmentsCapabilities(sdncDesignerDetails, serviceDetails_01); - capReqDef = ResponseParser.parseToObject(getResourceResponse.getResponse(), CapReqDef.class); - List<RequirementDefinition> list = capReqDef.getRequirements().get(capType); - AssertJUnit.assertEquals("Check requirement", null, list); - - serviceDetails_02.setUniqueId(serviceDetails_01.getUniqueId()); - RestResponse updateServiceResp = ServiceRestUtils.updateService(serviceDetails_02, sdncDesignerDetails); - ServiceRestUtils.checkSuccess(updateServiceResp); - changeServiceLifecycleState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CHECKIN); - getComponentAndValidateRIs(serviceDetails_01, 2, 1); - } - - @Test - public void testUnsatisfiedCpReqInService() throws Exception { - - // Certify all the needed atomic resources - RestResponse response = LifecycleRestUtils.certifyResource(resourceDetailsCP_01); - ResourceRestUtils.checkSuccess(response); - - ArtifactReqDetails heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - response = ArtifactRestUtils.addInformationalArtifactToResource(heatArtifactDetails, sdncDesignerDetails, resourceDetailsVF_02.getUniqueId()); - ResourceRestUtils.checkSuccess(response); - response = LifecycleRestUtils.certifyResource(resourceDetailsVF_02); - ResourceRestUtils.checkSuccess(response); - capOwnerId = getUniqueIdOfFirstInstanceFromResponse(response); - - RestResponse createAtomicResourceInstance = createVFInstance(serviceDetails_01, resourceDetailsVF_02, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String vfCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - createAtomicResourceInstance = createAtomicInstanceForService(serviceDetails_01, resourceDetailsCP_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createAtomicResourceInstance); - String compInstName = ResponseParser.getNameFromResponse(createAtomicResourceInstance); - String cpCompInstId = ResponseParser.getUniqueIdFromResponse(createAtomicResourceInstance); - - RestResponse submitForTesting = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - String[] variables = new String[] { serviceDetails_01.getName(), "service", "CP (Connection Point)", compInstName, "requirement", "tosca.capabilities.network.Bindable", "fulfilled" }; - BaseValidationUtils.checkErrorResponse(submitForTesting, ActionStatus.REQ_CAP_NOT_SATISFIED_BEFORE_CERTIFICATION, variables); - - fulfillCpRequirement(serviceDetails_01, cpCompInstId, vfCompInstId, capOwnerId, sdncDesignerDetails, ComponentTypeEnum.SERVICE); - - submitForTesting = LifecycleRestUtils.changeServiceState(serviceDetails_01, sdncDesignerDetails, LifeCycleStatesEnum.CERTIFICATIONREQUEST); - BaseValidationUtils.checkSuccess(submitForTesting); - } - - @Test - public void getVFInstanceSuccessfullyTest() throws Exception { - RestResponse createVFInstResp = createCheckedinVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - System.out.println("instance successfuly created"); - RestResponse getInstancesResponce = ComponentInstanceRestUtils.getComponentInstances(ComponentTypeEnum.SERVICE, serviceDetails_01.getUniqueId(), sdncDesignerDetails); - - for (int i = 0; i < 1500; i++) { - createVFInstResp = createVFInstance(serviceDetails_01, resourceDetailsVF_01, sdncDesignerDetails); - ResourceRestUtils.checkCreateResponse(createVFInstResp); - System.out.println("instance " + i + "successfuly created"); - } - - getInstancesResponce = ComponentInstanceRestUtils.getComponentInstances(ComponentTypeEnum.SERVICE, serviceDetails_01.getUniqueId(), sdncDesignerDetails); - - BaseValidationUtils.checkSuccess(getInstancesResponce); - - } - - private String getUniqueIdOfFirstInstanceFromResponse(RestResponse response) { - try { - JSONArray value = ResponseParser.getListFromJson(response, "componentInstances"); - return ResponseParser.getValueFromJsonResponse(value.get(0).toString(), "uniqueId"); - } catch (Exception e) { - return null; - } - } -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/UpdateServiceMetadataTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/UpdateServiceMetadataTest.java deleted file mode 100644 index def34958eb..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/service/UpdateServiceMetadataTest.java +++ /dev/null @@ -1,2164 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.service; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import org.apache.commons.lang3.StringUtils; -import org.codehaus.jettison.json.JSONException; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.Component; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.be.model.category.CategoryDefinition; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.api.Urls; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ServiceCategoriesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ServiceValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class UpdateServiceMetadataTest extends ComponentBaseTest { - - protected ArrayList<String> listForMessage = new ArrayList<String>(); - - protected ResourceReqDetails resourceDetails; - protected ServiceReqDetails serviceDetails; - protected User sdncDesignerDetails; - protected User sdncDesignerDetails2; - protected User sdncAdminDetails; - protected User sdncGovernorDeatails; - protected User sdncTesterDetails; - protected User sdncOpsDetails; - protected ComponentInstanceReqDetails resourceInstanceReqDetails; - protected Component resourceDetailsVFCcomp; - protected Component serviceDetailsCompp; - - @Rule - public static TestName name = new TestName(); - protected ServiceReqDetails updatedServiceDetails; - - public UpdateServiceMetadataTest() { - super(name, UpdateServiceMetadataTest.class.getName()); - } - - @BeforeMethod - public void setUp() throws Exception { - - sdncDesignerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncDesignerDetails2 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER2); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncAdminDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN4); - sdncGovernorDeatails = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - sdncTesterDetails = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - sdncOpsDetails = ElementFactory.getDefaultUser(UserRoleEnum.OPS); - resourceDetailsVFCcomp = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.uploadArtifactByType(ArtifactTypeEnum.HEAT, resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - true, true); - - AtomicOperationUtils.changeComponentState(resourceDetailsVFCcomp, UserRoleEnum.DESIGNER, - LifeCycleStatesEnum.CERTIFY, true); - Service serviceServ = AtomicOperationUtils.createDefaultService(UserRoleEnum.DESIGNER, true).left().value(); - AtomicOperationUtils.addComponentInstanceToComponentContainer(resourceDetailsVFCcomp, serviceServ, - UserRoleEnum.DESIGNER, true); - - serviceDetails = new ServiceReqDetails(serviceServ); - updatedServiceDetails = updatedServiceDetails(serviceDetails); - - } - - protected void certifyService(ServiceReqDetails serviceDetails, String version) throws Exception { - LifecycleRestUtils.certifyService(serviceDetails); - } - - protected ServiceReqDetails updatedServiceDetails(ServiceReqDetails service) { - ServiceReqDetails updatedServiceDetails = new ServiceReqDetails(service); - - updatedServiceDetails.setDescription("updatedDescription"); - updatedServiceDetails.setName(service.getName()); - updatedServiceDetails.setProjectCode("987654654"); - updatedServiceDetails.setIcon("icon-service-red3"); - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("updateTag", updatedServiceDetails.getName()))); - updatedServiceDetails.removeAllCategories(); - updatedServiceDetails.setCategories(null); - updatedServiceDetails.addCategory(ServiceCategoriesEnum.VOIP.getValue()); - updatedServiceDetails.setContactId("xy0123"); - - return updatedServiceDetails; - } - - protected void addMandatoryArtifactsToService() throws Exception { - // TODO Andrey US575052 - // ServiceRestUtils.addServiceMandatoryArtifacts(sdncDesignerDetails, - // createServiceResponse); - } - - protected void getServiceAndValidate(ServiceReqDetails excpectedService, User creator, User updater, - LifecycleStateEnum lifeCycleState) throws Exception { - RestResponse getServiceResponse = ServiceRestUtils.getService(excpectedService.getUniqueId(), - sdncDesignerDetails); - AssertJUnit.assertNotNull("check response object is not null after updating service", getServiceResponse); - AssertJUnit.assertNotNull("check if error code exists in response after updating service", - getServiceResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after updating service", 200, - getServiceResponse.getErrorCode().intValue()); - Service actualService = ResponseParser.convertServiceResponseToJavaObject(getServiceResponse.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(excpectedService, actualService, creator, updater, - lifeCycleState); - } - - public void getServiceAndValidate(ServiceReqDetails excpectedService, LifecycleStateEnum lifecycleState) - throws Exception { - getServiceAndValidate(excpectedService, sdncDesignerDetails, sdncDesignerDetails, lifecycleState); - } - - protected void validateResponse(RestResponse response, int errorCode, ActionStatus actionResponse, - List<String> listOfVariables) throws Exception { - AssertJUnit.assertNotNull("check response object is not null after updating service", response); - AssertJUnit.assertNotNull("check if error code exists in response after updating service", - response.getErrorCode()); - AssertJUnit.assertEquals("Check response code after updating service", errorCode, - response.getErrorCode().intValue()); - - if (actionResponse != null) { - ErrorValidationUtils.checkBodyResponseOnError(actionResponse.name(), listOfVariables, - response.getResponse()); - return; - } - - Service actualService = ResponseParser.convertServiceResponseToJavaObject(response.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(updatedServiceDetails, actualService, - sdncDesignerDetails, sdncDesignerDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - protected void validateActualVsExpected(ServiceReqDetails expectedService, RestResponse actualServiceFromResponse) { - Service actualService = ResponseParser - .convertServiceResponseToJavaObject(actualServiceFromResponse.getResponse()); - ServiceValidationUtils.validateServiceResponseMetaData(updatedServiceDetails, actualService, - sdncDesignerDetails, sdncDesignerDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - protected String multipleString(String ch, int repeat) { - return StringUtils.repeat(ch, repeat); - } - - protected void correctUpdate() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 200, null, listForMessage); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - protected void updateWithInvalidValue(ActionStatus invalidValue, List<String> arr) throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, invalidValue, arr); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - protected void charactersInRangeChecking(int min, int max, String field) throws Exception { - if (field != null) { - if (field == "name") { - for (char ch = (char) min; ch <= (char) max; ch++) { - updatedServiceDetails.setName("testname" + String.valueOf(ch)); - updatedServiceDetails.setTags( - addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - updateWithInvalidValue(ActionStatus.INVALID_COMPONENT_NAME, - new ArrayList<>(Arrays.asList("Service"))); - } - } else if (field == "icon") { - for (char ch = (char) min; ch <= (char) max; ch++) { - updatedServiceDetails.setIcon("testname" + String.valueOf(ch)); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_ICON, - new ArrayList<>(Arrays.asList("Service"))); - } - } else if (field == "tags") { - List<String> variables = Arrays.asList("Service", "tag"); - for (char ch = (char) min; ch <= (char) max; ch++) { - updatedServiceDetails.setTags( - new ArrayList<>(Arrays.asList(String.valueOf(ch), updatedServiceDetails.getName()))); - updateWithInvalidValue(ActionStatus.INVALID_FIELD_FORMAT, variables); - } - } else if (field == "category") { - for (char ch = (char) min; ch <= (char) max; ch++) { - updatedServiceDetails.addCategoryChain(multipleString("1", 5) + String.valueOf(ch), - multipleString("1", 5) + String.valueOf(ch)); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CATEGORY, - new ArrayList<>(Arrays.asList("Service"))); - } - } - - else if (field == "projectCode") { - for (char ch = (char) min; ch <= (char) max; ch++) { - updatedServiceDetails.setProjectCode(multipleString("1", 5) + String.valueOf(ch)); - updateWithInvalidValue(ActionStatus.INVALID_PROJECT_CODE, listForMessage); - } - } - - else - return; - } - - } - - protected void specialCharsChecking(String field) throws Exception { - charactersInRangeChecking(33, 44, field); - charactersInRangeChecking(47, 47, field); - charactersInRangeChecking(58, 64, field); - charactersInRangeChecking(91, 94, field); - charactersInRangeChecking(96, 96, field); - charactersInRangeChecking(123, 126, field); - } - - @Test - public void updateServiceSuccessfully() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 200, null, listForMessage); - - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - - } - - protected void checkErrorResponse(ActionStatus actionStatus, ArrayList<String> arrList, RestResponse response) - throws Exception, JSONException { - ErrorValidationUtils.checkBodyResponseOnError(actionStatus.name(), arrList, response.getResponse()); - } - - protected List<String> addServiceNameToTagsList(String serviceName, List<String> tagsList) { - tagsList.add(serviceName); - return tagsList; - - } - - // @Test - // public void updateMetadateSuccessTest() throws Exception { - // CloseableHttpClient httpClient = HttpClients.createDefault(); - // HttpGet httpGet = - // ServiceRestUtils.createGetServiceGetRquest(serviceDetails, - // sdncDesignerDetails); - // CloseableHttpResponse response = httpClient.execute(httpGet); - // assertTrue(response.getStatusLine().getStatusCode() == 200); - // String responseString = new - // BasicResponseHandler().handleResponse(response); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(responseString); - // assertTrue("service object creation failed the returned object is null", - // serviceObject != null); - // String currentCategory = serviceObject.getCategories().get(0).getName(); - // String currentServiceName = serviceObject.getName(); - // String currentProjectCode = serviceObject.getProjectCode(); - // String currentIcon = serviceObject.getIcon(); - // String currentDescription = serviceObject.getDescription(); - // List<String> currentTags = serviceObject.getTags(); - // - // String newCategory = ServiceCategoriesEnum.VOIP.getValue(); - // serviceDetails.addCategory(newCategory); - // // String newServiceName = "updated name"; - // // serviceDetails.setServiceName(newServiceName); - // String newProjectCode = "68686868"; - // serviceDetails.setProjectCode(newProjectCode); - // String newIcon = "updated-icon"; - // serviceDetails.setIcon(newIcon); - // String newDescription = "updated description <html></html>"; - // serviceDetails.setDescription(newDescription); - // List<String> newTags = new ArrayList<>(); - // newTags.add("update1"); - // newTags.add("update2"); - // newTags.add(currentServiceName); - // serviceDetails.setTags(newTags); - // HttpPut httpPut = - // ServiceRestUtils.createUpdateServiceMetaDataPutRequest(serviceDetails, - // sdncDesignerDetails); - // response = httpClient.execute(httpPut); - // assertTrue(response.getStatusLine().getStatusCode() == 200); - // responseString = new BasicResponseHandler().handleResponse(response); - // String serviceUid = - // ServiceRestUtils.getServiceUniqueIdFromString(responseString); - // - // ServiceReqDetails details = new ServiceReqDetails(); - // details.setUniqueId(serviceUid); - // - // httpGet = ServiceRestUtils.createGetServiceGetRquest(details, - // sdncDesignerDetails); - // response = httpClient.execute(httpGet); - // assertTrue(response.getStatusLine().getStatusCode() == 200); - // responseString = new BasicResponseHandler().handleResponse(response); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(responseString); - // assertTrue("service object creation failed the returned object is null", - // serviceObject != null); - // String updatedCategory = serviceObject.getCategories().get(0).getName(); - // String updatedServiceName = serviceObject.getName(); - // String updatedProjectCode = serviceObject.getProjectCode(); - // String updatedIcon = serviceObject.getIcon(); - // String updatedDescription = serviceObject.getDescription(); - // List<String> updatedTags = serviceObject.getTags(); - // assertFalse("category did not cahnge", - // currentCategory.equals(updatedCategory)); - // assertEquals("categoruy did not match expacted value", updatedCategory, - // newCategory); - // // assertFalse("service name did not change", - // currentServiceName.equals(updatedServiceName) ); - // // assertEquals("service name did not match expacted - // value",updatedServiceName,newServiceName); - // assertFalse("projectCode did not change", currentProjectCode.equals(updatedProjectCode)); - // assertEquals("projectCode not match expacted value", updatedProjectCode, newProjectCode); - // assertFalse("icon did not change", currentIcon.equals(updatedIcon)); - // assertEquals("icon did not match expacted value", updatedIcon, newIcon); - // assertFalse("description did not change", - // currentDescription.equals(updatedDescription)); - // assertEquals("description did not match expacted value", "updated - // description", updatedDescription); - // assertFalse("tags did not change", currentTags.containsAll(updatedTags)); - // assertTrue("tags did not match expacted value", - // updatedTags.containsAll(newTags)); - // } - - @Test - public void updateService_ByOtherDesigner() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails2); - validateResponse(updateServiceResponse, 409, ActionStatus.RESTRICTED_OPERATION, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void updateService_ByAdmin() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncAdminDetails); - validateResponse(updateServiceResponse, 409, ActionStatus.RESTRICTED_OPERATION, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void updateServiceNotExist() throws Exception { - updatedServiceDetails.setUniqueId("nnnnn"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 404, ActionStatus.SERVICE_NOT_FOUND, - new ArrayList<String>(Arrays.asList(""))); - } - - @Test - public void updateCheckedinService() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 409, ActionStatus.RESTRICTED_OPERATION, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - } - - @Test - public void updateCertifiedService() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 409, ActionStatus.RESTRICTED_OPERATION, listForMessage); - getServiceAndValidate(serviceDetails, sdncDesignerDetails, sdncAdminDetails, LifecycleStateEnum.CERTIFIED); - } - - // TODO Irrelevant - // @Test(enabled = false) - // public void updateService_NameCaseSensitiveTest() throws Exception { - // ServiceRestUtils.setServiceUniqueId(serviceDetails.getName().toUpperCase()); - // - // RestResponse updateServiceResponse = - // ServiceRestUtils.updateService(updatedServiceDetails, - // sdncDesignerDetails); - // validateResponse(updateServiceResponse, 200, null, listForMessage); - // - // Service serviceFromJsonResponse = - // ResponseParser.convertServiceResponseToJavaObject(updateServiceResponse.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(updatedServiceDetails, - // serviceFromJsonResponse, sdncDesignerDetails, (LifecycleStateEnum)null); - // - // getServiceAndValidate(updatedServiceDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // } - - // @Test - // public void updateApprovedDistributionServiceTest() throws Exception { - // // addMandatoryArtifactsToService(); - // certifyService(serviceDetails, serviceDetails.getVersion()); - // - // RestResponse approveResponse = - // ServiceRestUtils.sendApproveDistribution(sdncAdminDetails, - // serviceDetails.getUniqueId(), userRemarks); - // // validateResponse(approveResponse, 200, null, listForMessage); - // - // RestResponse updateServiceResponse = - // ServiceRestUtils.updateService(updatedServiceDetails, - // sdncDesignerDetails); - // validateResponse(updateServiceResponse, 409, - // ActionStatus.RESTRICTED_OPERATION, listForMessage); - // - // getServiceAndValidate(serviceDetails, sdncDesignerDetails, - // sdncAdminDetails,LifecycleStateEnum.CERTIFIED); - // } - - @Test - public void updateServiceByMethod_delete() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.createServiceByHttpMethod(updatedServiceDetails, - sdncDesignerDetails, "DELETE", Urls.UPDATE_SERVICE_METADATA); - validateResponse(updateServiceResponse, 405, ActionStatus.NOT_ALLOWED, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void updateServiceByMethod_get() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.createServiceByHttpMethod(updatedServiceDetails, - sdncDesignerDetails, "GET", Urls.UPDATE_SERVICE_METADATA); - validateResponse(updateServiceResponse, 405, ActionStatus.NOT_ALLOWED, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void updateServiceByMethod_post() throws Exception { - RestResponse updateServiceResponse = ServiceRestUtils.createServiceByHttpMethod(updatedServiceDetails, - sdncDesignerDetails, "POST", Urls.UPDATE_SERVICE_METADATA); - validateResponse(updateServiceResponse, 405, ActionStatus.NOT_ALLOWED, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void updateCheckoutCertifiedService() throws Exception // certify a - // service - // and - // checkout - // it - { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.SERVICE_CATEGORY_CANNOT_BE_CHANGED, listForMessage); - - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - // ---------------------------------------------------------Validation - // Tests--------------------------------------------------------- - - @Test - public void missingCategoryTest1() throws Exception { - List<CategoryDefinition> categories = updatedServiceDetails.getCategories(); - CategoryDefinition categoryDefinition = categories.get(0); - CategoryDefinition categoryDefinition2 = categoryDefinition; - categoryDefinition2.setName(""); - categories.set(0, categoryDefinition2); - updatedServiceDetails.setCategories(categories); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_CATEGORY, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingCategoryTest2() throws Exception { - updatedServiceDetails.setCategories(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_CATEGORY, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingServiceNameTest1() throws Exception { - updatedServiceDetails.setName(StringUtils.EMPTY); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.MISSING_COMPONENT_NAME, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingServiceNameTest2() throws Exception { - - updatedServiceDetails.setName(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.MISSING_COMPONENT_NAME, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void environmentContextService() throws Exception { - updatedServiceDetails.setEnvironmentContext("General_Revenue-Bearing"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 200, null, listForMessage); - Service actualService = ResponseParser.convertServiceResponseToJavaObject(updateServiceResponse.getResponse()); - assertEquals(updatedServiceDetails.getEnvironmentContext(), actualService.getEnvironmentContext()); - } - - // TODO Irrelevant - @Test(enabled = false) - public void missingProjectCodeTest1() throws Exception { - updatedServiceDetails.setProjectCode(StringUtils.EMPTY); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.MISSING_PROJECT_CODE, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - // TODO Irrelevant - @Test(enabled = false) - public void missingProjectCodeTest2() throws Exception { - - updatedServiceDetails.setProjectCode(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.MISSING_PROJECT_CODE, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingIconTest1() throws Exception { - updatedServiceDetails.setIcon(StringUtils.EMPTY); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_ICON, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingIconTest2() throws Exception { - updatedServiceDetails.setIcon(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_ICON, Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingDescriptionTest1() throws Exception { - updatedServiceDetails.setDescription(StringUtils.EMPTY); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_DESCRIPTION, - Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingDescriptionTest2() throws Exception { - updatedServiceDetails.setDescription(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_DESCRIPTION, - Arrays.asList("Service")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingTagsTest1() throws Exception { - updatedServiceDetails.setTags(new ArrayList<String>()); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_TAGS, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingTagsTest2() throws Exception { - updatedServiceDetails.setTags(null); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.COMPONENT_MISSING_TAGS, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingTagsTest3() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList(StringUtils.EMPTY))); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.INVALID_FIELD_FORMAT, - Arrays.asList("Service", "tag")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void missingTagsTest4() throws Exception { - updatedServiceDetails - .setTags(new ArrayList<>(Arrays.asList(StringUtils.EMPTY, updatedServiceDetails.getName()))); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - validateResponse(updateServiceResponse, 400, ActionStatus.INVALID_FIELD_FORMAT, - Arrays.asList("Service", "tag")); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - // update non-settable/"updatable" parameters tests - - // ------------------------------------------correct - // values------------------------------------------ - @Test - public void contactIdValidationTest1() throws Exception { - updatedServiceDetails.setContactId("ab3456"); - correctUpdate(); - } - - @Test - public void contactIdValidationTest2() throws Exception { - - updatedServiceDetails.setContactId("cd789E"); - correctUpdate(); - } - - @Test - public void contactIdValidationTest3() throws Exception { - - updatedServiceDetails.setContactId("ef4567"); - correctUpdate(); - } - - @Test - public void contactIdValidationTest4() throws Exception { - updatedServiceDetails.setContactId("AA012A"); - correctUpdate(); - } - - @Test - public void contactIdValidationTest5() throws Exception { - updatedServiceDetails.setContactId("CD012c"); - correctUpdate(); - } - - @Test - public void contactIdValidationTest6() throws Exception { - updatedServiceDetails.setContactId("EF0123"); - correctUpdate(); - } - - // ------------------------------------------invalid - // values------------------------------------------ - @Test - public void contactIdValidationTest7() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - updatedServiceDetails.setContactId("ab0001"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void contactIdValidationTest8() throws Exception { - // addMandatoryArtifactsToService(); - - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - updatedServiceDetails = new ServiceReqDetails(certifyService); - updatedServiceDetails.setContactId("ab0001"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void contactIdValidationTest9() throws Exception { - updatedServiceDetails.setContactId("01345a"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, Arrays.asList("Service")); - } - - @Test - public void contactIdValidationTest10() throws Exception { - updatedServiceDetails.setContactId("0y000B"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, Arrays.asList("Service")); - } - - @Test - public void contactIdValidationTest11() throws Exception { - updatedServiceDetails.setContactId("Y1000b"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, Arrays.asList("Service")); - } - - @Test - public void contactIdValidationTest12() throws Exception { - updatedServiceDetails.setContactId("abxyzC"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, Arrays.asList("Service")); - } - - @Test - public void contactIdValidationTest13() throws Exception { - updatedServiceDetails.setContactId("cdXYZc"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest14() throws Exception { - updatedServiceDetails.setContactId("efXY1D"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest15() throws Exception { - updatedServiceDetails.setContactId("EFabcD"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest16() throws Exception { - updatedServiceDetails.setContactId("EFABCD"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest17() throws Exception { - updatedServiceDetails.setContactId("EFABC1"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest18() throws Exception { - updatedServiceDetails.setContactId("efui1D"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest19() throws Exception { - updatedServiceDetails.setContactId("efui1!"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest20() throws Exception { - updatedServiceDetails.setContactId("ef555!"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest21() throws Exception { - updatedServiceDetails.setContactId(",f555"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest22() throws Exception { - updatedServiceDetails.setContactId("EF55.5"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest23() throws Exception { - updatedServiceDetails.setContactId("ab000"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest24() throws Exception { - updatedServiceDetails.setContactId("ab000c0"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest25() throws Exception { - updatedServiceDetails.setContactId(" ab0001"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CONTACT, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void contactIdValidationTest26() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails.setContactId("xy0002"); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest1() throws Exception { - updatedServiceDetails.setName(multipleString("a", 49)); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest2() throws Exception { - updatedServiceDetails.setName(multipleString("b", 50)); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest3() throws Exception { - updatedServiceDetails.setName("testNamE"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest4() throws Exception { - updatedServiceDetails.setName("Testname"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest5() throws Exception { - updatedServiceDetails.setName("Test_name"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest6() throws Exception { - updatedServiceDetails.setName("Test name"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest7() throws Exception { - updatedServiceDetails.setName("Test-name"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest8() throws Exception { - updatedServiceDetails.setName("Test.name"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest9() throws Exception { - updatedServiceDetails.setName("...1..."); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest10() throws Exception { - updatedServiceDetails.setName("-a_1. Arrrrrr"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest11() throws Exception { - updatedServiceDetails.setName("Testname1234567890"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - correctUpdate(); - } - - @Test - public void serviceNameValidationTest14() throws Exception { - updatedServiceDetails.setName(StringUtils.SPACE); // one space with - // nothing - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - // updateWithInvalidValue(ActionStatus.INVALID_COMPONENT_NAME, new - // ArrayList<>(Arrays.asList("Service"))); - validateResponse(updateServiceResponse, 400, ActionStatus.MISSING_COMPONENT_NAME, - new ArrayList<>(Arrays.asList("Service"))); - } - - // ------------------------------------------invalid - // values------------------------------------------ - @Test - public void serviceNameValidationTest12() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - updatedServiceDetails.setName("TestNamE"); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN); - } - - @Test - public void serviceNameValidationTest13() throws Exception { - updatedServiceDetails.setName(multipleString("c", 51)); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - updateWithInvalidValue(ActionStatus.COMPONENT_NAME_EXCEEDS_LIMIT, - new ArrayList<>(Arrays.asList("Service", "50"))); - } - - @Test - public void serviceNameValidationTest15() throws Exception { - specialCharsChecking("name"); - } - - @Test - public void serviceNameValidationTest16() throws Exception { - // addMandatoryArtifactsToService(); - LifecycleRestUtils.certifyService(serviceDetails); - updatedServiceDetails.setName("testnamename"); - updatedServiceDetails.setCategories(serviceDetails.getCategories()); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - getServiceAndValidate(serviceDetails, sdncDesignerDetails, sdncTesterDetails, LifecycleStateEnum.CERTIFIED); - } - - @Test - public void serviceNameValidationTest17() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - updatedServiceDetails.setName("TestNamE"); - updatedServiceDetails.setCategories(serviceDetails.getCategories()); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - RestResponse updateServiceResponse2 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - validateResponse(updateServiceResponse2, 400, ActionStatus.SERVICE_NAME_CANNOT_BE_CHANGED, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void serviceNameValidationTest18() throws Exception { - updatedServiceDetails.setName(" testname "); - updatedServiceDetails - .setTags(addServiceNameToTagsList(updatedServiceDetails.getName(), updatedServiceDetails.getTags())); - RestResponse updateServiceResponse1 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse1); - assertNotNull(updateServiceResponse1.getErrorCode()); - assertEquals(200, updateServiceResponse1.getErrorCode().intValue()); - updatedServiceDetails.setName(updatedServiceDetails.getName()); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse1); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void iconValidationTest1() throws Exception { - updatedServiceDetails.setIcon(multipleString("a", 24)); - correctUpdate(); - } - - @Test - public void iconValidationTest2() throws Exception { - updatedServiceDetails.setIcon(multipleString("b", 25)); - correctUpdate(); - } - - @Test - public void iconValidationTest3() throws Exception { - updatedServiceDetails.setIcon("testNamE"); - correctUpdate(); - } - - @Test - public void iconValidationTest4() throws Exception { - updatedServiceDetails.setIcon("Testname"); - correctUpdate(); - } - - @Test - public void iconValidationTest5() throws Exception { - updatedServiceDetails.setIcon("Test_name"); - correctUpdate(); - } - - @Test - public void iconValidationTest6() throws Exception { - updatedServiceDetails.setIcon("Test-name"); - correctUpdate(); - } - - @Test - public void iconValidationTest7() throws Exception { - updatedServiceDetails.setIcon("Testname1234567890"); - correctUpdate(); - } - - @Test - public void iconValidationTest8() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - updatedServiceDetails.setIcon("TestNamE"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void iconValidationTest9() throws Exception { - // addMandatoryArtifactsToService(); - LifecycleRestUtils.certifyService(serviceDetails); - updatedServiceDetails.setIcon("testnamename"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - // ------------------------------------------invalid - // values------------------------------------------ - @Test - public void iconValidationTest10() throws Exception { - updatedServiceDetails.setIcon("Test name"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_ICON, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void iconValidationTest11() throws Exception { - updatedServiceDetails.setIcon(StringUtils.SPACE); // one space with - // nothing - updateWithInvalidValue(ActionStatus.COMPONENT_MISSING_ICON, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void iconValidationTest12() throws Exception { - updatedServiceDetails.setIcon("Test.name"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_ICON, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void iconValidationTest13() throws Exception { - specialCharsChecking("icon"); - charactersInRangeChecking(46, 46, "icon"); - } - - @Test - public void iconValidationTest14() throws Exception { - updatedServiceDetails.setIcon(multipleString("c", 26)); - updateWithInvalidValue(ActionStatus.COMPONENT_ICON_EXCEEDS_LIMIT, - new ArrayList<>(Arrays.asList("Service", "25"))); - } - - @Test - public void iconValidationTest15() throws Exception { - // addMandatoryArtifactsToService(); - RestResponse certifyServiceResp = LifecycleRestUtils.certifyService(serviceDetails); - Service certifyServiceServ = ResponseParser - .convertServiceResponseToJavaObject(certifyServiceResp.getResponse()); - ServiceReqDetails certifyService = new ServiceReqDetails(certifyServiceServ); - updatedServiceDetails = new ServiceReqDetails(certifyService); - updatedServiceDetails.setIcon("testnamename"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void iconValidationTest16() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails.setIcon("TestNamE"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.SERVICE_ICON_CANNOT_BE_CHANGED, listForMessage, updateServiceResponse); - } - - @Test - public void iconValidationTest17() throws Exception { - updatedServiceDetails.setIcon(" Icon "); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_ICON, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void categoryValidationTest1() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - updatedServiceDetails.addCategory(ServiceCategoriesEnum.VOIP.getValue()); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void categoryValidationTest2() throws Exception { - // updatedServiceDetails.addCategory("someCategory"); - updatedServiceDetails.setCategories(null); - updatedServiceDetails.addCategoryChain("someCategory", null); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CATEGORY, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void categoryValidationTest3() throws Exception { - updatedServiceDetails.setCategories(null); - updatedServiceDetails.addCategoryChain("SomeCategory10", null); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CATEGORY, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void categoryValidationTest4() throws Exception { - updatedServiceDetails.setCategories(null); - updatedServiceDetails.addCategoryChain("some Category", null); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_CATEGORY, new ArrayList<>(Arrays.asList("Service"))); - } - - @Test - public void categoryValidationTest5() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails.addCategory("Network L1-3"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void categoryValidationTest6() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails = serviceDetails; - List<CategoryDefinition> categories = updatedServiceDetails.getCategories(); - CategoryDefinition categoryDefinition = categories.get(0); - CategoryDefinition categoryDefinition2 = categoryDefinition; - categoryDefinition2.setName("ccc"); - categories.set(0, categoryDefinition2); - updatedServiceDetails.setCategories(categories); - RestResponse updateServiceResponse2 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - validateResponse(updateServiceResponse2, 400, ActionStatus.SERVICE_CATEGORY_CANNOT_BE_CHANGED, listForMessage); - getServiceAndValidate(serviceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void categoryValidationTest7() throws Exception { - updatedServiceDetails.removeAllCategories(); - updatedServiceDetails.addCategory(ServiceCategoriesEnum.NETWORK_L3.getValue()); - correctUpdate(); - } - - @Test - public void categoryValidationTest8() throws Exception { - updatedServiceDetails.setCategories(null); - updatedServiceDetails.addCategoryChain("Network L1-3", null); - correctUpdate(); - } - - @Test - public void tagsValidationTest1() throws Exception { - updatedServiceDetails - .setTags(new ArrayList<>(Arrays.asList(multipleString("a", 49), updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest2() throws Exception { - updatedServiceDetails - .setTags(new ArrayList<>(Arrays.asList(multipleString("B", 50), updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest3() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>( - Arrays.asList(multipleString("A", 50), multipleString("B", 50), updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest5() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("testTaG", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest6() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("Testtag", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest7() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("Test_tag", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest8() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("Test tag", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest9() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("Test-tag", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest10() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("Test.tag", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest11() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("...1...", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest12() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("-a_1. Arrrrrr", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest13() throws Exception { - updatedServiceDetails - .setTags(new ArrayList<>(Arrays.asList("Testtag1234567890", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest14() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("1", "2", "2", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest15() throws Exception { - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKIN); - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("TestTaG", updatedServiceDetails.getName()))); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void tagsValidationTest16() throws Exception { - // addMandatoryArtifactsToService(); - LifecycleRestUtils.certifyService(serviceDetails); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("testtagtag", updatedServiceDetails.getName()))); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - checkErrorResponse(ActionStatus.RESTRICTED_OPERATION, listForMessage, updateServiceResponse); - } - - @Test - public void tagsValidationTest17() throws Exception { - // addMandatoryArtifactsToService(); - certifyService(serviceDetails, serviceDetails.getVersion()); - LifecycleRestUtils.changeServiceState(serviceDetails, sdncDesignerDetails, serviceDetails.getVersion(), - LifeCycleStatesEnum.CHECKOUT); - updatedServiceDetails = new ServiceReqDetails(serviceDetails); - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList("TestTaG", updatedServiceDetails.getName()))); - correctUpdate(); - } - - @Test - public void tagsValidationTest18() throws Exception { - int lengthOfServiceName = updatedServiceDetails.getName().length(); - int maxLengthTag = 50; - int tagsCount = 1024 - lengthOfServiceName; - ArrayList<String> tagsList = new ArrayList<>(); - tagsList.add(updatedServiceDetails.getName()); - while (tagsCount > maxLengthTag) { - tagsList.add(multipleString("a", maxLengthTag)); - tagsCount -= maxLengthTag + 1 - + 1/* (50 and comma of each tag + one space, totally 52) */; - } - tagsList.add(multipleString("a", tagsCount)); - updatedServiceDetails.setTags(tagsList); - correctUpdate(); - } - - @Test - public void tagsValidationTest19() throws Exception { - updatedServiceDetails.setTags(new ArrayList<>(Arrays.asList(" Tag ", updatedServiceDetails.getName()))); - RestResponse updateServiceResponse1 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse1); - assertNotNull(updateServiceResponse1.getErrorCode()); - assertEquals(200, updateServiceResponse1.getErrorCode().intValue()); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse1); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void tagsValidationTest20() throws Exception { - ArrayList<String> tagsList = new ArrayList<>(); - tagsList.add(updatedServiceDetails.getName()); - tagsList.add(""); - updatedServiceDetails.setTags(tagsList); - updateWithInvalidValue(ActionStatus.INVALID_FIELD_FORMAT, Arrays.asList("Service", "tag")); - } - - // ------------------------------------------invalid - // values------------------------------------------ - - @Test - public void tagsValidationTest21() throws Exception { - ArrayList<String> tagsList = new ArrayList<>(); - tagsList.add("onetag"); - updatedServiceDetails.setTags(tagsList); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_TAGS_NO_COMP_NAME, listForMessage); - - } - - @Test - public void tagsValidationTest22() throws Exception { - specialCharsChecking("tags"); - } - - @Test - public void descriptionValidationTest1() throws Exception { - updatedServiceDetails.setDescription(multipleString("a", 1023)); - correctUpdate(); - } - - @Test - public void descriptionValidationTest2() throws Exception { - updatedServiceDetails.setDescription(multipleString("a", 1024)); - correctUpdate(); - } - - @Test - public void descriptionValidationTest3() throws Exception { - updatedServiceDetails.setDescription(multipleString("aB", 1024 / 2)); - correctUpdate(); - } - - @Test - public void descriptionValidationTest4() throws Exception { - updatedServiceDetails.setDescription("1234567890"); - correctUpdate(); - } - - @Test - public void descriptionValidationTest5() throws Exception { - updatedServiceDetails.setDescription("desc ription"); - correctUpdate(); - } - - @Test - public void descriptionValidationTest6() throws Exception { - updatedServiceDetails.setDescription("desc\tription"); - RestResponse updateServiceResponse1 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse1); - assertNotNull(updateServiceResponse1.getErrorCode()); - assertEquals(200, updateServiceResponse1.getErrorCode().intValue()); - updatedServiceDetails.setDescription("desc ription"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse1); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest7() throws Exception { - updatedServiceDetails.setDescription("desc ription "); - RestResponse updateServiceResponse2 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse2); - assertNotNull(updateServiceResponse2.getErrorCode()); - assertEquals(200, updateServiceResponse2.getErrorCode().intValue()); - updatedServiceDetails.setDescription("desc ription"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse2); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest8() throws Exception { - updatedServiceDetails.setDescription("desc" + StringUtils.LF + "ription"); - RestResponse updateServiceResponse3 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse3); - assertNotNull(updateServiceResponse3.getErrorCode()); - assertEquals(200, updateServiceResponse3.getErrorCode().intValue()); - updatedServiceDetails.setDescription("desc ription"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse3); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest9() throws Exception { - updatedServiceDetails.setDescription("<html>Hello, <b>world!</b></html>"); - RestResponse updateServiceResponse4 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse4); - assertNotNull(updateServiceResponse4.getErrorCode()); - assertEquals(200, updateServiceResponse4.getErrorCode().intValue()); - updatedServiceDetails.setDescription("Hello, world!"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse4); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest10() throws Exception { - updatedServiceDetails.setDescription("\uC2B5"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_DESCRIPTION, new ArrayList<>(Arrays.asList("Service"))); - - } - - @Test - public void descriptionValidationTest10_a() throws Exception { - updatedServiceDetails.setDescription("æ–‡"); - updateWithInvalidValue(ActionStatus.COMPONENT_INVALID_DESCRIPTION, new ArrayList<>(Arrays.asList("Service"))); - - } - - @Test - public void descriptionValidationTest10_b() throws Exception { - updatedServiceDetails.setDescription("\uC2B5abc"); - RestResponse updateServiceResponse5 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse5); - assertNotNull(updateServiceResponse5.getErrorCode()); - assertEquals(200, updateServiceResponse5.getErrorCode().intValue()); - updatedServiceDetails.setDescription("abc"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse5); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - - } - - @Test - public void descriptionValidationTest11() throws Exception { - updatedServiceDetails.setDescription("&<>"); - RestResponse updateServiceResponse6 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse6); - assertNotNull(updateServiceResponse6.getErrorCode()); - assertEquals(200, updateServiceResponse6.getErrorCode().intValue()); - updatedServiceDetails.setDescription("&<>"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse6); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest12() throws Exception { - updatedServiceDetails.setDescription("æ–‡ test"); - RestResponse updateServiceResponse7 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse7); - assertNotNull(updateServiceResponse7.getErrorCode()); - assertEquals(200, updateServiceResponse7.getErrorCode().intValue()); - updatedServiceDetails.setDescription("test"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse7); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest13() throws Exception { - updatedServiceDetails.setDescription(" description"); - RestResponse updateServiceResponse8 = ServiceRestUtils.updateService(updatedServiceDetails, - sdncDesignerDetails); - assertNotNull(updateServiceResponse8); - assertNotNull(updateServiceResponse8.getErrorCode()); - assertEquals(200, updateServiceResponse8.getErrorCode().intValue()); - updatedServiceDetails.setDescription("description"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse8); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - } - - @Test - public void descriptionValidationTest14() throws Exception { - updatedServiceDetails.setDescription(multipleString("a", 1025)); - updateWithInvalidValue(ActionStatus.COMPONENT_DESCRIPTION_EXCEEDS_LIMIT, - new ArrayList<>(Arrays.asList("Service", "1024"))); - } - - @Test - public void projectCodeValidationTest1() throws Exception { - String desc = StringUtils.EMPTY; - for (int i = 0; i < 10; i++) { - desc += Integer.toString(i); - if (i >= 4) { - updatedServiceDetails.setProjectCode(desc); - correctUpdate(); - } - } - } - - @Test - public void projectCodeValidationTest2() throws Exception { - updatedServiceDetails.setProjectCode(multipleString("1", 6)); - correctUpdate(); - } - - @Test - public void projectCodeValidationTest3() throws Exception { - this.specialCharsChecking("projectCode"); - } - - // TODO Irrelevant - @Test(enabled = false) - public void projectCodeValidationTest4() throws Exception { - updatedServiceDetails.setProjectCode(multipleString(" ", 5) + "99999"); - RestResponse updateServiceResponse = ServiceRestUtils.updateService(updatedServiceDetails, sdncDesignerDetails); - assertNotNull(updateServiceResponse); - assertNotNull(updateServiceResponse.getErrorCode()); - assertEquals(200, updateServiceResponse.getErrorCode().intValue()); - updatedServiceDetails.setProjectCode("12345"); - validateActualVsExpected(updatedServiceDetails, updateServiceResponse); - getServiceAndValidate(updatedServiceDetails, LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - - } - - @Test - public void projectCodeValidationTest5() throws Exception { - updatedServiceDetails.setProjectCode(multipleString("0", 11)); - updateWithInvalidValue(ActionStatus.INVALID_PROJECT_CODE, listForMessage); - } - - @Test - public void projectCodeValidationTest6() throws Exception { - updatedServiceDetails.setProjectCode(multipleString("1", 4)); - updateWithInvalidValue(ActionStatus.INVALID_PROJECT_CODE, listForMessage); - } - - @Test - public void projectCodeValidationTest7() throws Exception { - updatedServiceDetails.setProjectCode("123456789"); - correctUpdate(); - } - - // ////US553874 - // @JsonIgnore - // @Test - // public void UpdateServiceVersion01_isVNF_toTrue() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to True - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 200, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion02_isVNF_toFalse() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to True - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 200, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion01_isVNF_TrueToNull() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to True - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 400, restResponse.getErrorCode().intValue()); - // List<String> variables = Arrays.asList("VNF Service Indicator"); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_DATA.name(), - // variables, restResponse.getResponse()); - // - // //get service and verify that service created with isVNF is remained with - // isVNF = true - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion01_isVNF_FalseToNull() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to True - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 400, restResponse.getErrorCode().intValue()); - // List<String> variables = Arrays.asList("VNF Service Indicator"); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.MISSING_DATA.name(), - // variables, restResponse.getResponse()); - // - // //get service and verify that service created with isVNF is remained with - // isVNF = true - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion02_IsVNF_toTrue() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // LifecycleRestUtils.changeServiceState(serviceDetails, - // sdncDesignerDetails, serviceDetails.getVersion(), - // LifeCycleStatesEnum.CHECKIN); - // LifecycleRestUtils.changeServiceState(serviceDetails, - // sdncDesignerDetails, serviceDetails.getVersion(), - // LifeCycleStatesEnum.CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to True - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 200, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion02_IsVNF_toFalse() throws Exception{ - // - // //choose the user to create service - // User sdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // LifecycleRestUtils.changeServiceState(serviceDetails, - // sdncDesignerDetails, serviceDetails.getVersion(), - // LifeCycleStatesEnum.CHECKIN); - // LifecycleRestUtils.changeServiceState(serviceDetails, - // sdncDesignerDetails, serviceDetails.getVersion(), - // LifeCycleStatesEnum.CHECKOUT); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - // - // //Update Service IsVNF to false - // restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // //restResponse = - // ServiceRestUtils.updateService(serviceDetails.getUniqueId(), - // serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 200, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion11_IsVNF_toFalse() throws Exception{ - // // Can't update isVNF when service version is 1.X - // User sdncUserDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // //String serviceUniqueName = - // ServiceRestUtils.getServiceUniqueId(serviceByNameAndVersion); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceRestUtils.constructFieldsForAuditValidation(serviceDetails, "0.1", - // sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - //// ServiceRestUtils.addServiceMandatoryArtifacts(sdncUserDetails, - // restResponse); - // RestResponse response = - // ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - // sdncUserDetails, serviceDetails.getUniqueId(), - // ComponentTypeEnum.SERVICE); - // assertTrue("response code is not 201, returned: " + - // response.getErrorCode(),response.getErrorCode() == 201); - // RestResponse changeServiceState = - // LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - // assertTrue("certify service request returned status:" + - // changeServiceState.getErrorCode(),changeServiceState.getErrorCode() == - // 200); - // LifecycleRestUtils.changeServiceState(serviceDetails, sdncUserDetails, - // LifeCycleStatesEnum.CHECKOUT); - // - // //Update Service IsVNF to false - // restResponse = ServiceRestUtils.updateService(serviceDetails, - // sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating service metadata", 400, - // restResponse.getErrorCode().intValue()); - // List<String> variables = new ArrayList<String>(); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_IS_VNF_CANNOT_BE_CHANGED.name(), - // variables, restResponse.getResponse()); - // - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "1.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // - // } - // - // @JsonIgnore - // @Test - // public void UpdateServiceVersion11_IsVNF_toTrue() throws Exception{ - // // Can't update isVNF when service version is 1.X - // User sdncUserDetails = - // ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - // // new service details - // // ServiceReqDetails serviceDetails = ElementFactory.getDefaultService(); - // // clean audit DB before updating service - // DbUtils.cleanAllAudits(); - // ServiceRestUtils.deleteServiceById(serviceDetails.getUniqueId(), - // sdncUserDetails.getUserId()); - // serviceDetails = ElementFactory.getDefaultService(); - // - // //send create service toward BE - // RestResponse restResponse = - // ServiceRestUtils.createService(serviceDetails, sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating Interface Artifact", - // 201, restResponse.getErrorCode().intValue()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // RestResponse serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "0.1"); - // Service serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // //String serviceUniqueName = - // ServiceRestUtils.getServiceUniqueId(serviceByNameAndVersion); - // - // //validate audit - // ExpectedResourceAuditJavaObject expectedResourceAuditJavaObject = - // ServiceValidationUtils.constructFieldsForAuditValidation(serviceDetails, - // "0.1", sdncUserDetails); - // String auditAction="Create"; - // expectedResourceAuditJavaObject.setPrevState(""); - // expectedResourceAuditJavaObject.setPrevVersion(""); - // expectedResourceAuditJavaObject.setCurrState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - // expectedResourceAuditJavaObject.setStatus("201"); - // expectedResourceAuditJavaObject.setDesc("OK"); - // AuditValidationUtils.validateAudit(expectedResourceAuditJavaObject, - // auditAction, null, false); - // - //// ServiceRestUtils.addServiceMandatoryArtifacts(sdncUserDetails, - // restResponse); - // RestResponse response = - // ComponentInstanceRestUtils.createComponentInstance(resourceInstanceReqDetails, - // sdncUserDetails, serviceDetails.getUniqueId(), - // ComponentTypeEnum.SERVICE); - // assertTrue("response code is not 201, returned: " + - // response.getErrorCode(),response.getErrorCode() == 201); - // RestResponse changeServiceState = - // LCSbaseTest.certifyService(serviceDetails, sdncDesignerDetails); - // assertTrue("certify service request returned status:" + - // changeServiceState.getErrorCode(),changeServiceState.getErrorCode() == - // 200); - // LifecycleRestUtils.changeServiceState(serviceDetails, sdncUserDetails, - // LifeCycleStatesEnum.CHECKOUT); - // - // //Update Service IsVNF to false - // restResponse = ServiceRestUtils.updateService(serviceDetails, - // sdncUserDetails); - // assertNotNull("check error code exists in response after create service", - // restResponse.getErrorCode()); - // assertEquals("Check response code after updating service metadata", 400, - // restResponse.getErrorCode().intValue()); - // List<String> variables = new ArrayList<String>(); - // ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.SERVICE_IS_VNF_CANNOT_BE_CHANGED.name(), - // variables, restResponse.getResponse()); - // - // //get service and verify that service created with isVNF defined in - // serviceDetails - // serviceByNameAndVersion = - // ServiceRestUtils.getServiceByNameAndVersion(sdncUserDetails, - // serviceDetails.getName(), "1.1"); - // serviceObject = - // ResponseParser.convertServiceResponseToJavaObject(serviceByNameAndVersion.getResponse()); - // ServiceValidationUtils.validateServiceResponseMetaData(serviceDetails, - // serviceObject, sdncUserDetails, - // LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT); - // } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/ActivateDeActivateDeleteUser.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/ActivateDeActivateDeleteUser.java deleted file mode 100644 index e1bc3c9dde..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/ActivateDeActivateDeleteUser.java +++ /dev/null @@ -1,756 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.user; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -import org.apache.http.HttpStatus; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.dao.utils.UserStatusEnum; -import org.openecomp.sdc.be.model.LifecycleStateEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceRespJavaObject; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.NormativeTypesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.ResourceCategoryEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedUserCRUDAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.users.UserResponseMessageEnum; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.Convertor; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ImportRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.UserRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ResourceValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.UserValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.AssertJUnit; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; - -/** - * @author alitvinsky - * - */ -public class ActivateDeActivateDeleteUser extends ComponentBaseTest { - private static Logger logger = LoggerFactory.getLogger(ActivateDeActivateDeleteUser.class.getName()); - protected Gson gson = new Gson(); - protected User sdncAdminUser; - - @BeforeMethod - public void init() { - sdncAdminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - } - - @Rule - public static TestName name = new TestName(); - - public ActivateDeActivateDeleteUser() { - super(name, ActivateDeActivateDeleteUser.class.getName()); - } - - @Test - public void authorizeDeActivatedUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - AssertJUnit.assertEquals("Check response code after deActive user", errorInfo.getCode(), - getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - // clean audit before authorization test - DbUtils.cleanAllAudits(); - - // Perform login from WebSeal - User sealUserDetails = sdncUserDetails; - RestResponse authorizedUserResponse = UserRestUtils.authorizedUserTowardsCatalogBeQA(sealUserDetails); - - // validate response - - ErrorInfo errorInfo2 = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_ACCESS.name()); - - AssertJUnit.assertNotNull("check response object is not null after user login", authorizedUserResponse); - AssertJUnit.assertNotNull("check error code exists in response after user login", - authorizedUserResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after deActive user", errorInfo2.getCode(), - authorizedUserResponse.getErrorCode()); - - List<String> variables2 = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.RESTRICTED_ACCESS.name(), variables2, - authorizedUserResponse.getResponse()); - - // validate against ES DB - - UserValidationUtils.validateDataAgainstAuditDB_access(sealUserDetails, - DbUtils.parseAuditRespByAction("Access"), authorizedUserResponse, errorInfo2, variables2); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - public User getDefaultUserDetails() { - - String httpCspUserId = "km2000"; - String userFirstName = "Kot"; - String userLastName = "May"; - String email = "km2000@intl.sdc.com"; - String role = UserRoleEnum.ADMIN.name(); - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - - return sdncUserDetails; - } - - public void validateSuccessCreateUserResponse(User sdncUserDetails, RestResponse createUserResponse) - throws Exception { - - AssertJUnit.assertNotNull("check response object is not null after create user", createUserResponse); - AssertJUnit.assertNotNull("check error code exists in response after create user", - createUserResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create user", HttpStatus.SC_CREATED, - createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - // UserRestUtils.validateAddUserAuditMessage(sdncUserDetails, - // sdncAdminUser, String.valueOf(HttpStatus.SC_CREATED), - // UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - // UserRestUtils.getAddUserAuditMessage("AddUser")); - String addUser = "AddUser"; - ExpectedUserCRUDAudit constructFieldsForAuditValidation = Convertor.constructFieldsForAuditValidation(addUser, - sdncAdminUser, ActionStatus.CREATED, sdncUserDetails, null); - AuditValidationUtils.validateAddUserAudit(constructFieldsForAuditValidation, addUser); - - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - - } - - public void validateSuccessDeActivateUserResponse(User sdncUserDetails, RestResponse deActivateUserResponse) - throws Exception { - - AssertJUnit.assertNotNull("check response object is not null after deActive user", deActivateUserResponse); - AssertJUnit.assertNotNull("check error code exists in response after deActive user", - deActivateUserResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after deActive user", 200, - deActivateUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, deActivateUserResponse.getResponse()); - - String deleteUser = "DeleteUser"; - ExpectedUserCRUDAudit constructFieldsForAuditValidation = Convertor - .constructFieldsForAuditValidation(deleteUser, sdncAdminUser, ActionStatus.OK, null, sdncUserDetails); - AuditValidationUtils.validateAddUserAudit(constructFieldsForAuditValidation, deleteUser); - - } - - // US498322 - Add Status Field to USER - - @Test - public void createNewUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - @Test - public void createDefaultUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - sdncUserDetails.setFirstName(null); - sdncUserDetails.setLastName(null); - sdncUserDetails.setEmail(null); - sdncUserDetails.setRole(null); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - @Test - public void createTesterUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - sdncUserDetails.setLastName(null); - sdncUserDetails.setRole(UserRoleEnum.TESTER.name()); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - @Test - public void deActivateCreatedAdminUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - assertEquals("Check response code after get user", errorInfo.getCode(), getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - @Test - public void deActivateTheSameUserTwice() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - assertEquals("Check response code after deActive user", errorInfo.getCode(), - getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - // deActivate the same user once time more - RestResponse deActivateUserResponse2 = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - ErrorInfo errorInfo2 = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - assertEquals("Check response code after deActive user", errorInfo2.getCode(), - deActivateUserResponse2.getErrorCode()); - - List<String> variables2 = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables2, - deActivateUserResponse2.getResponse()); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - @Test - public void createAgainDeActivatedUser() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - - try { - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - assertEquals("Check response code after deActive user", errorInfo.getCode(), - getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - // create the user with the same UserId(details) as deActivated user - DbUtils.cleanAllAudits(); - - RestResponse createUserResponse2 = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - ErrorInfo errorInfo2 = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - assertEquals("Check response code after deActive user", errorInfo2.getCode(), - createUserResponse2.getErrorCode()); - - List<String> variables2 = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables2, - createUserResponse2.getResponse()); - - } finally { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - // very not recommend to run this test, resources/services may be zombie - // @Test - public void deActivateLastAdminUser() throws Exception { - - try { - - // send get all ADMIN user request toward BE - RestResponse getAllAdminUsers = UserRestUtils.getAllAdminUsers(sdncAdminUser); - - assertNotNull("check response object is not null after create user", getAllAdminUsers); - assertNotNull("check error code exists in response after create user", getAllAdminUsers.getErrorCode()); - assertEquals("Check response code after create user", 200, getAllAdminUsers.getErrorCode().intValue()); - - TypeToken<List<User>> typeToken = new TypeToken<List<User>>() { - }; - List<User> listOfUsersOnResponse = gson.fromJson(getAllAdminUsers.getResponse(), typeToken.getType()); - logger.debug("listOfUsers: {}", listOfUsersOnResponse); - - // build map of all Admin users from listOfUsersOnResponse from - // response - Map<String, User> mapAllUsersOnResponse = new HashMap<String, User>(); - for (User sdncUser : listOfUsersOnResponse) { - mapAllUsersOnResponse.put(sdncUser.getUserId(), sdncUser); - } - - // remove from mapAllUsersOnResponse map one of admin users - mapAllUsersOnResponse.remove(sdncAdminUser.getUserId()); - logger.debug("map Of all Admin users exclude one : {}", mapAllUsersOnResponse); - - // deActivate all Admin users from the UserIdAllAdminList list - for (Entry<String, User> entry : mapAllUsersOnResponse.entrySet()) { - UserRestUtils.deActivateUser(entry.getValue(), sdncAdminUser); - } - - // deActivate last Admin user user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncAdminUser, sdncAdminUser); - - ErrorInfo errorInfo = ErrorValidationUtils - .parseErrorConfigYaml(ActionStatus.DELETE_USER_ADMIN_CONFLICT.name()); - - assertEquals("Check response code after deActive user", errorInfo.getCode(), - deActivateUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.DELETE_USER_ADMIN_CONFLICT.name(), variables, - deActivateUserResponse.getResponse()); - - } finally { - // UserRestUtils.deleteUser(UserRestUtils.getAdminDetails2(), - // sdncAdminUser); - // UserRestUtils.deleteUser(UserRestUtils.getAdminDetails3(), - // sdncAdminUser); - // UserRestUtils.createUser(UserRestUtils.getAdminDetails2(), - // sdncAdminUser); - // UserRestUtils.createUser(UserRestUtils.getAdminDetails3(), - // sdncAdminUser); - } - - } - - // test check the resource accessibility via catalog view, resource was - // created by user which was deActivated - - @Test - public void resourceAccessibility() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource("tosca.nodes.newresource4test4", - NormativeTypesEnum.ROOT, ResourceCategoryEnum.GENERIC_INFRASTRUCTURE, "jh0003"); - String resourceBaseVersion = "0.1"; - - try { - // Delete resource - // resourceUtils.deleteResource_allVersions(resourceDetails, - // sdncAdminUser); - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - - DbUtils.cleanAllAudits(); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // ------------------------Start create - // resource--------------------------------------------------------------------------------- - - // create resource - RestResponse createResponse = ResourceRestUtils.createResource(resourceDetails, sdncUserDetails); - assertEquals("Check response code after create", 201, createResponse.getErrorCode().intValue()); - - Resource createdResource = ResponseParser.convertResourceResponseToJavaObject(createResponse.getResponse()); - - RestResponse resourceGetResponse = ResourceRestUtils.getResource(sdncUserDetails, - createdResource.getUniqueId()); - assertEquals("Check response code after get", 200, resourceGetResponse.getErrorCode().intValue()); - - // validate get response - ResourceRespJavaObject resourceRespJavaObject = Convertor.constructFieldsForRespValidation(resourceDetails, - resourceBaseVersion); - resourceRespJavaObject.setLifecycleState((LifecycleStateEnum.NOT_CERTIFIED_CHECKOUT).toString()); - resourceRespJavaObject.setAbstractt("false"); - resourceRespJavaObject.setCreatorUserId(sdncUserDetails.getUserId()); - resourceRespJavaObject.setLastUpdaterUserId(sdncUserDetails.getUserId()); - - resourceRespJavaObject - .setCreatorFullName(sdncUserDetails.getFirstName() + " " + sdncUserDetails.getLastName()); - resourceRespJavaObject - .setLastUpdaterFullName(sdncUserDetails.getFirstName() + " " + sdncUserDetails.getLastName()); - - ResourceValidationUtils.validateResp(resourceGetResponse, resourceRespJavaObject); - - // ------------------------End create - // resource--------------------------------------------------------------------------------- - - // clean audit before authorization test - DbUtils.cleanAllAudits(); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - UserValidationUtils.validateDeleteUserAuditMessage(sdncUserDetails, sdncAdminUser, "200", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("DeleteUser")); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - assertEquals("Check response code after deActive user", errorInfo.getCode(), - getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - // checking if created resource is accessible - DbUtils.cleanAllAudits(); - - RestResponse getCatalogDataResponse = CatalogRestUtils.getCatalog(sdncAdminUser.getUserId()); - - // validate response - - assertNotNull("check response object is not null after user login", getCatalogDataResponse); - assertNotNull("check error code exists in response after user login", - getCatalogDataResponse.getErrorCode()); - assertEquals("Check response code after deActive user", 200, - getCatalogDataResponse.getErrorCode().intValue()); - - // expected resource list - List<String> resourceExpectedUniqIdList = new ArrayList<String>(); - resourceExpectedUniqIdList.add(resourceDetails.getUniqueId()); - logger.debug("resourceExpectedUniqIdList: {}", resourceExpectedUniqIdList); - - compareResourceUniqIdList(getCatalogDataResponse.getResponse(), resourceExpectedUniqIdList, true); - - } finally { - // resourceUtils.deleteResource_allVersions(resourceDetails, - // sdncAdminUser); - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - // test check the resource accessibility via catalog view, resource was - // created by user which was deActivated - - @Test - public void resourceAccessibilityOnImport() throws Exception { - - User sdncUserDetails = getDefaultUserDetails(); - ResourceReqDetails resourceDetails = ElementFactory.getDefaultResource("importResource4test", - NormativeTypesEnum.ROOT, ResourceCategoryEnum.NETWORK_L2_3_ROUTERS, "jh0003"); - resourceDetails.addCategoryChain(ResourceCategoryEnum.GENERIC_DATABASE.getCategory(), - ResourceCategoryEnum.GENERIC_DATABASE.getSubCategory()); - // String resourceBaseVersion = "1.0"; - - try { - // Delete resource - // resourceUtils.deleteResource_allVersions(resourceDetails, - // sdncAdminUser); - RestResponse deleteUserResponse = UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - assertTrue("delete user request failed", - deleteUserResponse.getErrorCode() == 200 || deleteUserResponse.getErrorCode() == 404); - DbUtils.cleanAllAudits(); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - validateSuccessCreateUserResponse(sdncUserDetails, createUserResponse); - - // ------------------------Start import - // resource--------------------------------------------------------------------------------- - - // import new resource with CERTIFIED state - User importer = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN4); - RestResponse importResponse = ImportRestUtils.importResourceByName(resourceDetails, importer); - - assertNotNull("check response object is not null after create user", importResponse); - assertNotNull("check error code exists in response after create user", importResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, importResponse.getErrorCode().intValue()); - - // ------------------------End import - // resource--------------------------------------------------------------------------------- - - // clean audit before authorization test - DbUtils.cleanAllAudits(); - - // deActivate created user - RestResponse deActivateUserResponse = UserRestUtils.deActivateUser(sdncUserDetails, sdncAdminUser); - sdncUserDetails.setStatus(UserStatusEnum.INACTIVE); - validateSuccessDeActivateUserResponse(sdncUserDetails, deActivateUserResponse); - - UserValidationUtils.validateDeleteUserAuditMessage(sdncUserDetails, sdncAdminUser, "200", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("DeleteUser")); - - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_INACTIVE.name()); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - - assertEquals("Check response code after deActive user", errorInfo.getCode(), - getUserResponse.getErrorCode()); - - List<String> variables = Arrays.asList(sdncUserDetails.getUserId()); - ErrorValidationUtils.checkBodyResponseOnError(ActionStatus.USER_INACTIVE.name(), variables, - getUserResponse.getResponse()); - - // checking if created resource is accessible - DbUtils.cleanAllAudits(); - - RestResponse getCatalogDataResponse = CatalogRestUtils.getCatalog(sdncAdminUser.getUserId()); - - // validate response - - assertNotNull("check response object is not null after user login", getCatalogDataResponse); - assertNotNull("check error code exists in response after user login", - getCatalogDataResponse.getErrorCode()); - assertEquals("Check response code after deActive user", 200, - getCatalogDataResponse.getErrorCode().intValue()); - - // expected resource list - List<String> resourceExpectedUniqIdList = new ArrayList<String>(); - resourceExpectedUniqIdList.add(resourceDetails.getUniqueId()); - logger.debug("resourceExpectedUniqIdList: {}", resourceExpectedUniqIdList); - - compareResourceUniqIdList(getCatalogDataResponse.getResponse(), resourceExpectedUniqIdList, true); - - } finally { - // resourceUtils.deleteResource_allVersions(resourceDetails, - // sdncAdminUser); - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - } - - } - - public void compareServiceUniqIdList(String response, List<String> expectedList, boolean flag) { - - JsonElement jelement = new JsonParser().parse(response); - JsonObject jobject = jelement.getAsJsonObject(); - JsonArray serviceArray = (JsonArray) jobject.get("services"); - logger.debug("{}", serviceArray); - assertTrue("expected service count: " + expectedList.size() + " or more" + ", actual: " + serviceArray.size(), - serviceArray.size() >= expectedList.size()); - - // build service list from response - List<ServiceReqDetails> serviceReqDetailsListOnResponse = new ArrayList<ServiceReqDetails>(); - for (int i = 0; i < serviceArray.size(); i++) { - ServiceReqDetails json = gson.fromJson(serviceArray.get(i), ServiceReqDetails.class); - serviceReqDetailsListOnResponse.add(json); - } - } - - public void compareResourceUniqIdList(String response, List<String> expectedList, boolean flag) { - - JsonElement jelement = new JsonParser().parse(response); - JsonObject jobject = jelement.getAsJsonObject(); - JsonArray resourceArray = (JsonArray) jobject.get("resources"); - logger.debug("{}", resourceArray); - assertTrue("expected resource count: " + expectedList.size() + " or more" + ", actual: " + resourceArray.size(), - resourceArray.size() >= expectedList.size()); - - // build resource list from response - List<ResourceReqDetails> resourceReqDetailsListOnResponse = new ArrayList<ResourceReqDetails>(); - for (int i = 0; i < resourceArray.size(); i++) { - ResourceReqDetails json = gson.fromJson(resourceArray.get(i), ResourceReqDetails.class); - resourceReqDetailsListOnResponse.add(json); - } - - logger.debug("ResourceReqDetails list on response: {}",resourceReqDetailsListOnResponse); - - List<String> resourceActualUniqIdList = new ArrayList<String>(); - for (ResourceReqDetails resource : resourceReqDetailsListOnResponse) { - resourceActualUniqIdList.add(resource.getUniqueId()); - } - logger.debug("resourceActualUniqIdList on response: {}",resourceActualUniqIdList); - logger.debug("resourceExpectedUniqIdList on response: {}",expectedList); - - if (flag) { - assertTrue("actual list does not contain expected list", - resourceActualUniqIdList.containsAll(expectedList)); - } else { - assertFalse("actual list contains non expected list elements", - resourceActualUniqIdList.containsAll(expectedList)); - } - } - - // public User getDefaultUserDetails(){ - // - // String userFirstName = "Kot"; - // String userLastName = "May"; - // String role = UserRoleEnum.ADMIN.name(); - // User sdncUserDetails = new User(userFirstName, userLastName, - // httpCspUserId, email, role,null); - // - // return sdncUserDetails; - // } - // - // public void validateSuccessCreateUserResponse(User sdncUserDetails, - // RestResponse createUserResponse) throws Exception{ - // - // assertNotNull("check response object is not null after create user", - // createUserResponse); - // assertNotNull("check error code exists in response after create user", - // createUserResponse.getErrorCode()); - // assertEquals("Check response code after create user", - // HttpStatus.SC_CREATED, createUserResponse.getErrorCode().intValue()); - // - // UserRestUtils.validateUserDetailsOnResponse(sdncUserDetails, - // createUserResponse.getResponse()); - // UserRestUtils.validateAddUserAuditMessage(sdncUserDetails, sdncAdminUser, - // String.valueOf(HttpStatus.SC_CREATED), - // UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - // UserRestUtils.getAddUserAuditMessage("AddUser")); - // RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, - // sdncAdminUser); - // UserRestUtils.validateUserDetailsOnResponse(sdncUserDetails, - // getUserResponse.getResponse()); - // - // } - // - // public void validateSuccessDeActivateUserResponse(User sdncUserDetails, - // RestResponse deActivateUserResponse) throws Exception{ - // - // assertNotNull("check response object is not null after deActive user", - // deActivateUserResponse); - // assertNotNull("check error code exists in response after deActive user", - // deActivateUserResponse.getErrorCode()); - // assertEquals("Check response code after deActive user", 200, - // deActivateUserResponse.getErrorCode().intValue()); - // - // UserRestUtils.validateUserDetailsOnResponse(sdncUserDetails, - // deActivateUserResponse.getResponse()); - // UserRestUtils.validateDeleteUserAuditMessage(sdncUserDetails, - // sdncAdminUser, "200", UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - // UserRestUtils.getAddUserAuditMessage("DeleteUser")); - // - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/CreateUserApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/CreateUserApiTest.java deleted file mode 100644 index 2a79539443..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/CreateUserApiTest.java +++ /dev/null @@ -1,1693 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.user; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertNotNull; - -import java.io.IOException; - -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.dao.api.ActionStatus; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.enums.ErrorInfo; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.expected.ExpectedUserCRUDAudit; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.users.UserResponseMessageEnum; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.Convertor; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.UserRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.AuditValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ErrorValidationUtils; -import org.openecomp.sdc.ci.tests.utils.validation.UserValidationUtils; -import org.testng.AssertJUnit; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class CreateUserApiTest extends ComponentBaseTest { - - protected User sdncAdminUser; - protected User sdncDesignerUser; - protected User sdncGovernorUser; - protected User sdncTesterUser; - - public static final int STATUS_CODE_SUCCESS = 200; - public static final int STATUS_CODE_SUCSESS_CREATED = 201; - public static final int STATUS_CODE_SUCCESS_DELETE_GET = 200; - public static final int STATUS_CODE_INVALID_CONTENT = 400; - public static final int STATUS_CODE_MISSING_DATA = 400; - public static final int STATUS_CODE_MISSING_INFORMATION = 403; - public static final int STATUS_CODE_RESTRICTED_ACCESS = 403; - public static final int STATUS_CODE_NOT_FOUND = 404; - public static final int STATUS_CODE_RESTRICTED_OPERATION = 409; - public static final int USER_ALREADY_EXIST = 409; - public static final int INVALID_ROLE = 400; - - @Rule - public static TestName name = new TestName(); - - public CreateUserApiTest() { - super(name, CreateUserApiTest.class.getName()); - } - - @BeforeMethod - public void init() { - sdncAdminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - sdncDesignerUser = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - sdncGovernorUser = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - sdncTesterUser = ElementFactory.getDefaultUser(UserRoleEnum.TESTER); - - } - - // Story : REST API to provision new user (POST) - US429379 - // must parameters: UserId and Email - - // **********************************************************201*************************************************** - // create user with full parameter set(UserID, First Name, Last Name, Email, - // Role = "DESIGNER", Creator details) - // expected 201 Created - @Test - public void createUser() throws Exception { - - // user initialization - String httpCspUserId = "km2000"; - String userFirstName = "Kot"; - String userLastName = "Matroskin"; - String email = "km2000@intl.sdc.com"; - String role = "ADMIN"; - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - String addUser = "AddUser"; - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - - AssertJUnit.assertNotNull("check response object is not null after create user", createUserResponse); - AssertJUnit.assertNotNull("check error code exists in response after create user", - createUserResponse.getErrorCode()); - AssertJUnit.assertEquals("Check response code after create user", 201, - createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - - ExpectedUserCRUDAudit constructFieldsForAuditValidation = Convertor.constructFieldsForAuditValidation(addUser, - sdncAdminUser, ActionStatus.CREATED, sdncUserDetails, null); - AuditValidationUtils.validateAddUserAudit(constructFieldsForAuditValidation, addUser); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - } - - protected static final String ADD_USER = "AddUser"; - - private User mechIdUser = new User(); - private User emptyUser = new User(); - private static final User adminUser = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - - @AfterMethod - public void setup() throws IOException { - UserRestUtils.deactivateUser(mechIdUser, adminUser); - } - - // create default user(UserID, Email, Creator details) - // expected: role = DESIGNER, first and last name = null, 201 Created - @Test - public void createDefaultUser() throws Exception { - // user initialization - String httpCspUserId = "km2000"; - String userFirstName = null; - String userLastName = null; - String email = null; - String role = null; - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - - deleteUserAndAudit(sdncUserDetails); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - UserValidationUtils.validateAddUserAuditMessage(sdncUserDetails, sdncAdminUser, "201", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - - } - - // create user with one optional parameter first name (UserID, Email, First - // Name, Creator details) - // expected: role = DESIGNER, last name = null, 201 Created - @Test - public void createUserFirstName() throws Exception { - // user initialization - String httpCspUserId = "km2000"; - String userFirstName = "Kot"; - String userLastName = null; - String email = null; - String role = null; - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - - deleteUserAndAudit(sdncUserDetails); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - UserValidationUtils.validateAddUserAuditMessage(sdncUserDetails, sdncAdminUser, "201", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - } - - @Test - public void createDeleteOpsUser() throws Exception { - - String httpCspUserId = "oo2000"; - String userFirstName = "ops"; - String userLastName = "opsLast"; - String email = "ops@intl.sdc.com"; - String role = "OPS"; - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - - deleteUserAndAudit(sdncUserDetails); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - UserValidationUtils.validateAddUserAuditMessage(sdncUserDetails, sdncAdminUser, "201", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - RestResponse getDeletedUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - assertEquals("Check response code after delete user", 404, getDeletedUserResponse.getErrorCode().intValue()); - - } - - @Test - public void createDeleteGOVERNORUser() throws Exception { - - String httpCspUserId = "gg2000"; - String userFirstName = "gov"; - String userLastName = "govLast"; - String email = "gov@intl.sdc.com"; - String role = "GOVERNOR"; - User sdncUserDetails = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - - deleteUserAndAudit(sdncUserDetails); - RestResponse createUserResponse = UserRestUtils.createUser(sdncUserDetails, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, createUserResponse.getResponse()); - UserValidationUtils.validateAddUserAuditMessage(sdncUserDetails, sdncAdminUser, "201", - UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - RestResponse getUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(sdncUserDetails, getUserResponse.getResponse()); - - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - RestResponse getDeletedUserResponse = UserRestUtils.getUser(sdncUserDetails, sdncAdminUser); - assertEquals("Check response code after delete user", 404, getDeletedUserResponse.getErrorCode().intValue()); - - } - - // Benny - // Admin Create OPS user - @Test - public void createOpsUser() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "aa1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - User expectedOpsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedOpsUser); - RestResponse createUserResponse = UserRestUtils.createUser(expectedOpsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedOpsUser, createUserResponse.getResponse()); - deleteAndCheckUserResponse(expectedOpsUser, 200); - - } - - // Admin Create GOVERNOR user - @Test - public void createGovernorUser() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "aa1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - User expectedUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedUser); - RestResponse createUserResponse = UserRestUtils.createUser(expectedUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedUser, createUserResponse.getResponse()); - RestResponse getUserResponse = UserRestUtils.getUser(expectedUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedUser, getUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(expectedUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from OPS to GOVERNOR - @Test - public void updateOpsUserRole() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ab1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(governerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(governerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Designer Create OPS user -409 Response Restricted operation - @Test - public void createOpsUserByDesigner() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "aa1122"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - User expectedOpsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedOpsUser); - RestResponse createUserResponse = UserRestUtils.createUser(expectedOpsUser, sdncDesignerUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 409, createUserResponse.getErrorCode().intValue()); - assertEquals("Check response code after create user", "Conflict", createUserResponse.getResponseMessage()); - } - - // Tester Create OPS user -409 Response Restricted operation - @Test - public void createOpsUserByTester() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "aa1122"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - User expectedOpsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedOpsUser); - RestResponse createUserResponse = UserRestUtils.createUser(expectedOpsUser, sdncTesterUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 409, createUserResponse.getErrorCode().intValue()); - assertEquals("Check response code after create user", "Conflict", createUserResponse.getResponseMessage()); - } - - // Designer Try Update OPS user role to GOVERNOR - Response 409 - @Test - public void updateOpsUserRolebyDesigner() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "bt751e"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // Admin create user with OPS role - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // Designer user try to update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncDesignerUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 409, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Conflict", - updateUserRoleResponse.getResponseMessage()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Tester Try Update OPS user role to GOVERNOR - Response 409 - @Test - public void updateOpsUserRolebyTester() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "bt751w"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // Admin create user with OPS role - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // Designer user try to update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncTesterUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 409, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Conflict", - updateUserRoleResponse.getResponseMessage()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from OPS to Designer - @Test - public void updateOpsUserRoleFromOpsToDesigner() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ab1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "DESIGNER"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User designerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(designerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(designerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from OPS to TESTER - @Test - public void updateOpsUserRoleFromOpsToTester() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ac1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "TESTER"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User testerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(testerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(testerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Tester try to Update user role from OPS to GOVERNOR - Response 409 - // Conflict - @Test - public void updateOpsUserRoleByTester() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ad1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - // Create user by Admin - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR by Tester - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncTesterUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 409, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Conflict", - updateUserRoleResponse.getResponseMessage()); - - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Designer try to Update user role from OPS to GOVERNOR - Response 409 - // Conflict - @Test - public void updateOpsUserRoleByDesigner() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ad1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - // User governerUser = new User(userFirstName, - // userLastName,httpCspUserId, email, updatedRole); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - // Create user by Admin - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR by Tester - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncDesignerUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 409, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Conflict", - updateUserRoleResponse.getResponseMessage()); - - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Create OPS user - user already exist - @Test - public void createOpsUserAlreadyExist() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "af1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "OPS"; - User expectedOpsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedOpsUser); - RestResponse createUserResponse = UserRestUtils.createUser(expectedOpsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedOpsUser, createUserResponse.getResponse()); - // Create user that already exists - RestResponse createUserAgainResponse = UserRestUtils.createUser(expectedOpsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserAgainResponse); - assertNotNull("check error code exists in response after create user", createUserAgainResponse.getErrorCode()); - assertEquals("Check response code after create user", 409, createUserAgainResponse.getErrorCode().intValue()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(expectedOpsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from OPS to GOVERNOR - user already has GOVERNOR - // role - @Test - public void updateRoleToSameRole() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ag1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "GOVERNOR"; - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - RestResponse createUserResponse = UserRestUtils.createUser(opsUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from GOVERNOR to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - opsUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(governerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(governerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from Tester to GOVERNOR - 200 response - - // Admin Update user role from Designer to GOVERNOR - 200 response - @Test - public void updateUserRoleDesignerToGovernor() throws Exception { - DbUtils.cleanAllAudits(); - String httpCspUserId = "ah1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "DESIGNER"; - String updatedRole = "GOVERNOR"; - User designerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(designerUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(designerUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from TESTER to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - designerUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - // Update user role - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(governerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(governerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(designerUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update deactivated user role - response 404 (user not found) - @Test - public void updateRoleToDeactivatedUser() throws Exception { - DbUtils.cleanAllAudits(); - String httpCspUserId = "aj1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "DESIGNER"; - String updatedRole = "GOVERNOR"; - User designerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User governerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(designerUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(designerUser, createUserResponse.getResponse()); - deleteAndCheckUserResponse(designerUser, 200); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role - user deActivted - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - designerUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after create user", 404, updateUserRoleResponse.getErrorCode().intValue()); - } - - // Admin Update user role, user does not exist in DB - response 404 (user - // not found) - @Test - public void updateRoleForNonExistingUser() throws Exception { - DbUtils.cleanAllAudits(); - String httpCspUserId = "aj1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "DESIGNER"; - String updatedRole = "GOVERNOR"; - User designerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - // User governerUser = new User(userFirstName, - // userLastName,httpCspUserId, email, updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role - user deActivted - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - designerUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 404, updateUserRoleResponse.getErrorCode().intValue()); - - } - - // Admin Update user role from GOVERNOR to TESTER - @Test - public void updateRoleFromGovernorToTester() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ak1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "TESTER"; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User testerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(testerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(testerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(governorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from GOVERNOR to DESIGNER - @Test - public void updateRoleFromGovernorToDesigner() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ak1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "DESIGNER"; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User designerUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(designerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(designerUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(governorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role from GOVERNOR to OPS - @Test - public void updateRoleFromGovernorToOps() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ak1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "OPS"; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User opsUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(opsUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(opsUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - deleteAndCheckUserResponse(governorUser, 200); - - } - - private void deleteAndCheckUserResponse(User userDetailes, int expectedResponseCode) throws IOException { - RestResponse deleteUser = UserRestUtils.deleteUser(sdncGovernorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteUser); - assertEquals("Check response code after deleting user", expectedResponseCode, - deleteUser.getErrorCode().intValue()); - } - - // Admin Update user role from GOVERNOR to ADMIN - @Test - public void updateRoleFromGovernorToAdmin() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ak1000"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "ADMIN"; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User adminUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 200, updateUserRoleResponse.getErrorCode().intValue()); - - RestResponse getUpdatedRoleUserResponse = UserRestUtils.getUser(adminUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(adminUser, getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(governorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role to non existing role - Response 400 Bad Request - @Test - public void updateRoleToNonExistingRole() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "al1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = "VVVVVVV"; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User newUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role from OPS to GOVERNOR - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 400, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Bad Request", - updateUserRoleResponse.getResponseMessage()); - - // RestResponse getUpdatedRoleUserResponse = - // UserRestUtils.getUser(adminUser,sdncAdminUser); - // UserValidationUtils.validateUserDetailsOnResponse(adminUser,getUpdatedRoleUserResponse.getResponse()); - // Delete OPS user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(governorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // Admin Update user role to null - Response 400 Bad Request - @Test - public void updateRoleToNull() throws Exception { - DbUtils.cleanAllAudits(); - - String httpCspUserId = "ax1001"; - String userFirstName = "Benny"; - String userLastName = "Tal"; - String email = "optBenny@intl.sdc.com"; - String role = "GOVERNOR"; - String updatedRole = ""; - User governorUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - User newUser = new User(userFirstName, userLastName, httpCspUserId, email, updatedRole, null); - // UserRestUtils.deleteUser(opsUser, sdncAdminUser, true); - // UserRestUtils.deleteUser(UserUpdateRole, sdncAdminUser); - RestResponse createUserResponse = UserRestUtils.createUser(governorUser, sdncAdminUser); - assertNotNull("check response object is not null after create user", createUserResponse); - assertNotNull("check error code exists in response after create user", createUserResponse.getErrorCode()); - assertEquals("Check response code after create user", 201, createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(governorUser, createUserResponse.getResponse()); - // opsUser.setRole(updatedRole); - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // update user role - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - governorUser.getUserId()); - assertNotNull("check response object is not null after updating user", updateUserRoleResponse); - assertNotNull("check error code exists in response after updating user", updateUserRoleResponse.getErrorCode()); - assertEquals("Check response code after updating user", 400, updateUserRoleResponse.getErrorCode().intValue()); - assertEquals("Check response code after updating user", "Bad Request", - updateUserRoleResponse.getResponseMessage()); - // Delete user - RestResponse deleteOpsUser = UserRestUtils.deleteUser(governorUser, sdncAdminUser, true); - assertNotNull("check response object is not null after deleting user", deleteOpsUser); - assertEquals("Check response code after deleting user", 200, deleteOpsUser.getErrorCode().intValue()); - - } - - // create user with one optional parameter last name (UserID, Email, Last - // Name, Creator details) - // expected: role = DESIGNER, first name = null, 201 Created - // @Test - // public void createUserLastName(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user with one optional parameter role name (UserID, Email, Role - // = "TESTER", Creator details) - // // expected: first and last name = null, 201 Created - // @Test - // public void createUserRoleName(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user with two optional parameters first name and role (UserID, - // Email, First Name, Role = "ADMIN", Creator details) - // // expected: last name = null, 201 Created - // @Test - // public void createUserFirstNameAndRole(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user with two optional parameters first and last name(UserID, - // Email, First Name, Last name, Creator details) - // // expected: role = DESIGNER, 201 Created - // @Test - // public void createUserFirstAndLastName(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // - // - // - // - // // - // **********************************************************Create*user*failed*************************************************** - // - // // - // **********************************************************403*************************************************** - // // create default user without creator details (UserID, Email) - // // expected: 403 Forbidden, error message:"Error : Missing information" - // @Test - // public void createDefaultUserNonCreatorDetails(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create user with part of creator details (UserID, Email, First name, - // Last Name, Role, Part of creator details) - // // expected: 403 Forbidden, error message:"Error : Missing information" - // @Test - // public void createUserPartOfCreatorDetails(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user with full parameter set, non admin creator(UserID, First - // Name, Last Name, Email, Role, Creator details) - // // expected: 403 Forbidden, error message: - // "Error : Restricted operation" - // @Test - // public void createUserNonAdminCreator(){ - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // - // // - // **********************************************************405*************************************************** - // - // // create user with full parameter set by sending http PUT request - // (UserID, First Name, Last Name, Email, Role, Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createUserPutRequest(){ - // // send PUT create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create default user by sending http PUT request (UserID, Email, - // Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createDefaultUserPutRequest(){ - // // send PUT create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create user with full parameter set by sending http DELETE request - // (UserID, First Name, Last Name, Email, Role, Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createUserDeleteRequest(){ - // // send DELETE create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create default user by sending http DELETE request (UserID, Email, - // Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createDefaultUserDeleteRequest(){ - // // send DELETE create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create user with full parameter set by sending http GET request - // (UserID, First Name, Last Name, Email, Role, Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createUserGetRequest(){ - // // send GET create user request - // // validate data on response - // // check the audit message - // } - // - // - // // create default user by sending http GET request (UserID, Email, - // Creator details) - // // expected: 405 not Allowed, error message: - // "Error : Method not allowed" - // @Test - // public void createDefaultUserGetRequest(){ - // // send GET create user request - // // validate data on response - // // check the audit message - // } - // - // - // // - // **********************************************************409*************************************************** - // - // // create the same user twice with full parameter set(UserID, First Name, - // Last Name, Email, Role, Creator details) - // // expected 409 Conflict, error message: - // "Error : User with '%s' ID already exists", where: %s - UserId - // @Test - // public void createSameUserTwice(){ - // // send POST create user request - // // validate data on response - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user twice, first full details (UserID, First Name, Last Name, - // Email, Role, Creator details), second default user (UserID, Email, Role, - // Creator details) - // // expected 409 Conflict, error message: - // "Error : User with '%s' ID already exists", where: %s - UserId - // @Test - // public void createFullThanDefaultUserTwice(){ - // // send POST create user request - // - // // validate data on response - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // // create user twice, first default user (UserID, Email, Role, Creator - // details), second full details (UserID, First Name, Last Name, Email, - // Role, Creator details) - // // expected 409 Conflict, error message: - // "Error : User with '%s' ID already exists", where: %s - UserId - // @Test - // public void createDefaulThanFullUserTwice(){ - // // send POST create user request - // - // // validate data on response - // // send POST create user request - // // validate data on response - // // check the audit message - // } - // - // - // // - // **********************************************************400*************************************************** - // // create default user with invalid email address format(UserID, Email, - // Creator details) - // // expected: 400, error message: - // "Error : Invalid Content . Invalid e-mail address '%s'", where %s - - // email address - // @Test - // public void createDefaultUserInvalidEmailAddressFormat(){ - // // send GET create user request - // // validate data on response - // // check the audit message - // } - // - // // create an user with invalid role type (UserID, Email,Role = "TESTER-1" - // ,Creator details) - // // expected: 400, error message: - // "Error : Invalid Content . Invalid role '%s'", where %s - role type - // @Test - // public void createUserInvalidRoleType(){ - // // send GET create user request - // // validate data on response - // // check the audit message - // } - // - // // - // **********************************************************500*************************************************** - // // create default user when BE is down (UserID, Email, Creator details) - // // expected: 500, error message: - // "Error : Internal Server Error . Try later again." - // @Test - // public void createDefaultUserBeNoAccess(){ - // // send GET create user request - // // validate data on response - // // check the audit message - // } - // - - // Benny US570551 - - @Test - public void createProductManagerUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Man"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_MANAGER"; - User expectedProductManagerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, true); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, createUserResponse.getResponse()); - // Audit validation - UserValidationUtils.validateAddUserAuditMessage(expectedProductManagerUser, sdncAdminUser, - Integer.toString(STATUS_CODE_SUCSESS_CREATED), UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductManagerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test - public void createProductStrategistUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodStr@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - UserRestUtils.deleteUser(expectedProductStrategistUser, sdncAdminUser, true); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductStrategistUser, - createUserResponse.getResponse()); - // Audit validation - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, sdncAdminUser, - Integer.toString(STATUS_CODE_SUCSESS_CREATED), UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductStrategistUser, getUserResponse.getResponse()); - // Delete ProductStrategist user - RestResponse deleteProductStrategistUser = UserRestUtils.deleteUser(expectedProductStrategistUser, - sdncAdminUser, true); - assertNotNull("Check response object is not null after deleting OPS user", deleteProductStrategistUser); - assertEquals("Check response code after deleting OPS user", 200, - deleteProductStrategistUser.getErrorCode().intValue()); - } - - @Test - public void createProductStrategistUserByNonAdminUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodStr@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - UserRestUtils.deleteUser(expectedProductStrategistUser, sdncAdminUser, true); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, sdncDesignerUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_RESTRICTED_OPERATION, - createUserResponse.getErrorCode().intValue()); - // Audit validation - expectedProductStrategistUser.setUserId(""); - expectedProductStrategistUser.setFirstName(null); - expectedProductStrategistUser.setLastName(null); - expectedProductStrategistUser.setEmail(""); - expectedProductStrategistUser.setRole(""); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, sdncDesignerUser, - Integer.toString(STATUS_CODE_RESTRICTED_OPERATION), errorInfo.getAuditDesc(""), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // Try to get user - user is not created - expectedProductStrategistUser.setUserId("pm1000"); - expectedProductStrategistUser.setFirstName("Prod"); - expectedProductStrategistUser.setLastName("Strategist"); - expectedProductStrategistUser.setEmail("prodStr@intl.sdc.com"); - expectedProductStrategistUser.setRole("PRODUCT_STRATEGIST"); - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, getUserResponse.getErrorCode().intValue()); - } - - @Test - public void createProductManagerUserByNonAdminUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Man"; - String email = "prodStr@intl.sdc.com"; - String role = "PRODUCT_MANAGER"; - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - UserRestUtils.deleteUser(expectedProductStrategistUser, sdncAdminUser, true); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, sdncDesignerUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_RESTRICTED_OPERATION, - createUserResponse.getErrorCode().intValue()); - // Audit validation - expectedProductStrategistUser.setUserId(""); - expectedProductStrategistUser.setFirstName(null); - expectedProductStrategistUser.setLastName(null); - expectedProductStrategistUser.setEmail(""); - expectedProductStrategistUser.setRole(""); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.RESTRICTED_OPERATION.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, sdncDesignerUser, - Integer.toString(STATUS_CODE_RESTRICTED_OPERATION), errorInfo.getAuditDesc(""), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // Try to get user - user is not created - expectedProductStrategistUser.setUserId("pm1000"); - expectedProductStrategistUser.setFirstName("Prod"); - expectedProductStrategistUser.setLastName("Strategist"); - expectedProductStrategistUser.setEmail("prodStr@intl.sdc.com"); - expectedProductStrategistUser.setRole("PRODUCT_MANAGER"); - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, getUserResponse.getErrorCode().intValue()); - } - - @Test - public void createProductStrategistUserByNonExistingUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodStr@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - User noSdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - noSdncUserDetails.setRole("blabla"); - noSdncUserDetails.setUserId("bt750h"); - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, noSdncUserDetails); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_NOT_FOUND, - createUserResponse.getErrorCode().intValue()); - // Audit validation - expectedProductStrategistUser.setUserId(""); - expectedProductStrategistUser.setFirstName(null); - expectedProductStrategistUser.setLastName(null); - expectedProductStrategistUser.setEmail(""); - expectedProductStrategistUser.setRole(""); - noSdncUserDetails.setFirstName(""); - noSdncUserDetails.setLastName(""); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_NOT_FOUND.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, noSdncUserDetails, - Integer.toString(STATUS_CODE_NOT_FOUND), errorInfo.getAuditDesc(noSdncUserDetails.getUserId()), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // Try to get user - user is not created - expectedProductStrategistUser.setUserId("pm1000"); - expectedProductStrategistUser.setFirstName("Prod"); - expectedProductStrategistUser.setLastName("Strategist"); - expectedProductStrategistUser.setEmail("prodStr@intl.sdc.com"); - expectedProductStrategistUser.setRole("PRODUCT_STRATEGIST"); - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, getUserResponse.getErrorCode().intValue()); - } - - @Test - public void createProductManagerUserByNonExistingUser() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Man"; - String email = "prodStr@intl.sdc.com"; - String role = "PRODUCT_MANAGER"; - User noSdncUserDetails = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - noSdncUserDetails.setRole("blabla"); - noSdncUserDetails.setUserId("bt750h"); - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - DbUtils.deleteFromEsDbByPattern("_all"); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, noSdncUserDetails); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_NOT_FOUND, - createUserResponse.getErrorCode().intValue()); - // Audit validation - expectedProductStrategistUser.setUserId(""); - expectedProductStrategistUser.setFirstName(null); - expectedProductStrategistUser.setLastName(null); - expectedProductStrategistUser.setEmail(""); - expectedProductStrategistUser.setRole(""); - noSdncUserDetails.setFirstName(""); - noSdncUserDetails.setLastName(""); - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_NOT_FOUND.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, noSdncUserDetails, - Integer.toString(STATUS_CODE_NOT_FOUND), errorInfo.getAuditDesc(noSdncUserDetails.getUserId()), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // Try to get user - user is not created - expectedProductStrategistUser.setUserId("pm1000"); - expectedProductStrategistUser.setFirstName("Prod"); - expectedProductStrategistUser.setLastName("Strategist"); - expectedProductStrategistUser.setEmail("prodStr@intl.sdc.com"); - expectedProductStrategistUser.setRole("PRODUCT_MANAGER"); - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code ", STATUS_CODE_NOT_FOUND, getUserResponse.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void updateProjectManagerRole() throws Exception { - // Update user role from PRODUCT_STRATEGIST to PRODUCT_MANAGER - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Man"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_MANAGER"; - String updatedRole = "GOVERNOR"; - User expectedProductManagerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductManagerUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, createUserResponse.getResponse()); - // Update user role - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // Update user role from PRODUCT_STRATEGIST to PRODUCT_MANAGER - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - expectedProductManagerUser.getUserId()); - assertEquals("Check response code after create user", STATUS_CODE_SUCCESS, - updateUserRoleResponse.getErrorCode().intValue()); - expectedProductManagerUser.setRole(updatedRole); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, - updateUserRoleResponse.getResponse()); - // Audit validation - UserValidationUtils.validateAddUserAuditMessage(expectedProductManagerUser, sdncAdminUser, - Integer.toString(STATUS_CODE_SUCCESS), UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("UpdateUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductManagerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void updateProductStrategistRole() throws Exception { - // Update user role from PRODUCT_STRATEGIST to PRODUCT_MANAGER - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - String updatedRole = "TESTER"; - User expectedProductManagerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductManagerUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, createUserResponse.getResponse()); - // Update user role - User newRoleUser = new User(); - newRoleUser.setRole(updatedRole); - // Update user role from PRODUCT_STRATEGIST to PRODUCT_MANAGER - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - expectedProductManagerUser.getUserId()); - assertEquals("Check response code after create user", STATUS_CODE_SUCCESS, - updateUserRoleResponse.getErrorCode().intValue()); - expectedProductManagerUser.setRole(updatedRole); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, - updateUserRoleResponse.getResponse()); - // Audit validation - UserValidationUtils.validateAddUserAuditMessage(expectedProductManagerUser, sdncAdminUser, - Integer.toString(STATUS_CODE_SUCCESS), UserResponseMessageEnum.SUCCESS_MESSAGE.getValue(), - UserValidationUtils.getAddUserAuditMessage("UpdateUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductManagerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test - public void createProductManagerUserAlreadyExit() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Man"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_MANAGER"; - User expectedProductManagerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductManagerUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, createUserResponse.getResponse()); - // create same user again - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse createUserAgainResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", USER_ALREADY_EXIST, - createUserAgainResponse.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_ALREADY_EXIST.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductManagerUser, sdncAdminUser, - Integer.toString(USER_ALREADY_EXIST), errorInfo.getAuditDesc(expectedProductManagerUser.getUserId()), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductManagerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test - public void createProductStrategistUserAlreadyExit() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - User expectedProductManagerUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductManagerUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, createUserResponse.getResponse()); - // create same user again - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse createUserAgainResponse = UserRestUtils.createUser(expectedProductManagerUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", USER_ALREADY_EXIST, - createUserAgainResponse.getErrorCode().intValue()); - // Audit validation - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.USER_ALREADY_EXIST.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductManagerUser, sdncAdminUser, - Integer.toString(USER_ALREADY_EXIST), errorInfo.getAuditDesc(expectedProductManagerUser.getUserId()), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductManagerUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductManagerUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductManagerUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void UpdateProductStrategistToNonExistingRole() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodMan@intl.sdc.com"; - String role = "PRODUCT_STRATEGIST"; - String nonExistingRole = "BLABLA"; - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductStrategistUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", STATUS_CODE_SUCSESS_CREATED, - createUserResponse.getErrorCode().intValue()); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductStrategistUser, - createUserResponse.getResponse()); - // Update user Role to non Existing role - User newRoleUser = new User(); - newRoleUser.setRole(nonExistingRole); - DbUtils.deleteFromEsDbByPattern("_all"); - RestResponse updateUserRoleResponse = UserRestUtils.updateUserRole(newRoleUser, sdncAdminUser, - expectedProductStrategistUser.getUserId()); - assertEquals("Check response code after updating user role", INVALID_ROLE, - updateUserRoleResponse.getErrorCode().intValue()); - - // Audit validation - /* - * expectedProductStrategistUser.setUserId(""); - * expectedProductStrategistUser.setFirstName(null); - * expectedProductStrategistUser.setLastName(null); - * expectedProductStrategistUser.setEmail(""); - * expectedProductStrategistUser.setRole(""); - */ - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_ROLE.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, sdncAdminUser, - Integer.toString(INVALID_ROLE), errorInfo.getAuditDesc(nonExistingRole), - UserValidationUtils.getAddUserAuditMessage("UpdateUser")); - // get user and compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - UserValidationUtils.validateUserDetailsOnResponse(expectedProductStrategistUser, getUserResponse.getResponse()); - // Delete ProductManager user - RestResponse deleteProductManagerUser = UserRestUtils.deleteUser(expectedProductStrategistUser, sdncAdminUser, - true); - assertEquals("Check response code after deleting OPS user", STATUS_CODE_SUCCESS, - deleteProductManagerUser.getErrorCode().intValue()); - } - - @Test(enabled = false) - public void createUserWithNonExistingRole() throws Exception { - String httpCspUserId = "pm1000"; - String userFirstName = "Prod"; - String userLastName = "Strategist"; - String email = "prodMan@intl.sdc.com"; - String role = "BLABLA"; - User expectedProductStrategistUser = new User(userFirstName, userLastName, httpCspUserId, email, role, null); - deleteUserAndAudit(expectedProductStrategistUser); - // create user - RestResponse createUserResponse = UserRestUtils.createUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check response code after create Product-Manager user", INVALID_ROLE, - createUserResponse.getErrorCode().intValue()); - - // Audit validation - /* - * expectedProductStrategistUser.setUserId(""); - * expectedProductStrategistUser.setFirstName(null); - * expectedProductStrategistUser.setLastName(null); - * expectedProductStrategistUser.setEmail(""); - * expectedProductStrategistUser.setRole(""); - */ - ErrorInfo errorInfo = ErrorValidationUtils.parseErrorConfigYaml(ActionStatus.INVALID_ROLE.name()); - UserValidationUtils.validateAddUserAuditMessage(expectedProductStrategistUser, sdncAdminUser, - Integer.toString(INVALID_ROLE), errorInfo.getAuditDesc(role), - UserValidationUtils.getAddUserAuditMessage("AddUser")); - // get user - verify user is not createdand compare with expected - RestResponse getUserResponse = UserRestUtils.getUser(expectedProductStrategistUser, sdncAdminUser); - assertEquals("Check user not created", STATUS_CODE_NOT_FOUND, getUserResponse.getErrorCode().intValue()); - - } - - private void deleteUserAndAudit(User sdncUserDetails) throws IOException { - UserRestUtils.deleteUser(sdncUserDetails, sdncAdminUser, true); - DbUtils.cleanAllAudits(); - } - -} diff --git a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/GovernorWorkspaceApiTest.java b/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/GovernorWorkspaceApiTest.java deleted file mode 100644 index 7d0ef75cf5..0000000000 --- a/asdc-tests/src/main/java/org/openecomp/sdc/ci/tests/execute/user/GovernorWorkspaceApiTest.java +++ /dev/null @@ -1,317 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.ci.tests.execute.user; - -import static org.testng.AssertJUnit.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertNotNull; -import static org.testng.AssertJUnit.assertTrue; - -import java.io.IOException; -import java.util.List; - -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; -import org.junit.Rule; -import org.junit.rules.TestName; -import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum; -import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum; -import org.openecomp.sdc.be.model.DistributionStatusEnum; -import org.openecomp.sdc.be.model.Resource; -import org.openecomp.sdc.be.model.Service; -import org.openecomp.sdc.be.model.User; -import org.openecomp.sdc.ci.tests.api.ComponentBaseTest; -import org.openecomp.sdc.ci.tests.datatypes.ArtifactReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ComponentInstanceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ResourceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.ServiceReqDetails; -import org.openecomp.sdc.ci.tests.datatypes.enums.ArtifactTypeEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.LifeCycleStatesEnum; -import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum; -import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse; -import org.openecomp.sdc.ci.tests.utils.DbUtils; -import org.openecomp.sdc.ci.tests.utils.general.AtomicOperationUtils; -import org.openecomp.sdc.ci.tests.utils.general.ElementFactory; -import org.openecomp.sdc.ci.tests.utils.rest.ArtifactRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ComponentInstanceRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.LifecycleRestUtils; -import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser; -import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils; -import org.openecomp.sdc.ci.tests.utils.validation.ServiceValidationUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; - -public class GovernorWorkspaceApiTest extends ComponentBaseTest { - - private static Logger logger = LoggerFactory.getLogger(GovernorWorkspaceApiTest.class.getName()); - @Rule - public static TestName name = new TestName(); - - public GovernorWorkspaceApiTest() { - super(name, GovernorWorkspaceApiTest.class.getName()); - - } - - protected final User admin1 = ElementFactory.getDefaultUser(UserRoleEnum.ADMIN); - protected final User governor = ElementFactory.getDefaultUser(UserRoleEnum.GOVERNOR); - protected final User sdncDesignerDetails1 = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER); - protected ResourceReqDetails resourceDetails1; - protected ComponentInstanceReqDetails componentInstanceReqDetails; - protected ArtifactReqDetails heatArtifactDetails; - - protected final String serviceVersion = "0.1"; - protected final String servicesString = "services"; - protected final String userRemarks = "commentTest"; - - protected ServiceReqDetails serviceDetails11 = null; - protected ServiceReqDetails serviceDetails22 = null; - protected ServiceReqDetails serviceDetails33 = null; - - @BeforeMethod - public void initBeforeTest() throws Exception { - DbUtils.deleteFromEsDbByPattern("_all"); - Resource resourceObj = AtomicOperationUtils - .createResourceByType(ResourceTypeEnum.VFC, UserRoleEnum.DESIGNER, true).left().value(); - resourceDetails1 = new ResourceReqDetails(resourceObj); - heatArtifactDetails = ElementFactory.getDefaultDeploymentArtifactForType(ArtifactTypeEnum.HEAT.getType()); - createThreeServices(sdncDesignerDetails1); - } - - protected void createThreeServices(User user) throws Exception { - - String checkinComment = "good checkin"; - String checkinComentJson = "{\"userRemarks\": \"" + checkinComment + "\"}"; - - RestResponse addInformationalArtifactToResource = ArtifactRestUtils.addInformationalArtifactToResource( - heatArtifactDetails, sdncDesignerDetails1, resourceDetails1.getUniqueId()); - RestResponse certifyResource = LifecycleRestUtils.certifyResource(resourceDetails1); - componentInstanceReqDetails = ElementFactory.getDefaultComponentInstance("defaultInstance", resourceDetails1); - - serviceDetails11 = ElementFactory.getDefaultService(); - serviceDetails22 = ElementFactory.getDefaultService(); - serviceDetails33 = ElementFactory.getDefaultService(); - - serviceDetails11.setName(serviceDetails11.getName() + "1"); - List<String> tags = serviceDetails11.getTags(); - tags.add(serviceDetails11.getName()); - serviceDetails11.setTags(tags); - - serviceDetails22.setName(serviceDetails11.getName() + "2"); - tags = serviceDetails22.getTags(); - tags.add(serviceDetails22.getName()); - serviceDetails22.setTags(tags); - - serviceDetails33.setName(serviceDetails11.getName() + "3"); - tags = serviceDetails33.getTags(); - tags.add(serviceDetails33.getName()); - serviceDetails33.setTags(tags); - - RestResponse createServiceResponse1 = createService(user, serviceDetails11); - RestResponse createServiceResponse2 = createService(user, serviceDetails22); - RestResponse createServiceResponse3 = createService(user, serviceDetails33); - } - - protected RestResponse createService(User user, ServiceReqDetails serviceDetails) throws Exception, IOException { - RestResponse createServiceResponse1 = ServiceRestUtils.createService(serviceDetails, user); - assertNotNull("check response object is not null after creating service", createServiceResponse1); - assertNotNull("check if error code exists in response after creating service", - createServiceResponse1.getErrorCode()); - assertEquals("Check response code after creating service", 201, - createServiceResponse1.getErrorCode().intValue()); - Service convertServiceResponseToJavaObject = ResponseParser - .convertServiceResponseToJavaObject(createServiceResponse1.getResponse()); - serviceDetails.setUniqueId(convertServiceResponseToJavaObject.getUniqueId()); - logger.debug("Created service1 ={}",serviceDetails); - addResourceWithHeatArt(serviceDetails); - return createServiceResponse1; - } - - protected void addResourceWithHeatArt(ServiceReqDetails serviceDetails) throws Exception { - - RestResponse createResourceInstance = ComponentInstanceRestUtils.createComponentInstance( - componentInstanceReqDetails, sdncDesignerDetails1, serviceDetails.getUniqueId(), - ComponentTypeEnum.SERVICE); - // System.out.println("serviceUID --->" + serviceDetails.getUniqueId()); - assertEquals("Check response code ", 201, createResourceInstance.getErrorCode().intValue()); - } - - protected void certifyAllServices() throws Exception { - LifecycleRestUtils.certifyService(serviceDetails11); - LifecycleRestUtils.certifyService(serviceDetails22); - LifecycleRestUtils.certifyService(serviceDetails33); - } - - protected boolean isElementInArray(String elementId, JSONArray jsonArray) throws Exception { - for (int i = 0; i < jsonArray.size(); i++) { - JSONObject jobject = (JSONObject) jsonArray.get(i); - - if (jobject.get("uniqueId").toString().equals(elementId)) { - return true; - } - } - return false; - } - - protected void approveDistributionStatusOfCertifiedService(ServiceReqDetails serviceDetails, User user) - throws Exception { - approveDistributionStatusOfService(serviceDetails, user, "1.0"); - } - - protected void approveDistributionStatusOfService(ServiceReqDetails serviceDetails, User user, String version) - throws Exception { - RestResponse res = LifecycleRestUtils.sendApproveDistribution(user, serviceDetails.getUniqueId(), userRemarks); - assertEquals(200, res.getErrorCode().intValue()); - ServiceValidationUtils.validateDistrubtionStatusValue(res, DistributionStatusEnum.DISTRIBUTION_APPROVED); - } - - protected void rejectDistributionStatusOfService(ServiceReqDetails serviceDetails, User user) throws Exception { - rejectDistributionStatusOfService(serviceDetails, user, "1.0"); - } - - protected void rejectDistributionStatusOfService(ServiceReqDetails serviceDetails, User user, String version) - throws Exception { - RestResponse res = LifecycleRestUtils.rejectDistribution(serviceDetails, version, user, userRemarks); - assertEquals(200, res.getErrorCode().intValue()); - ServiceValidationUtils.validateDistrubtionStatusValue(res, DistributionStatusEnum.DISTRIBUTION_REJECTED); - } - - protected JSONArray getFollowedListAsJsonArray(User user) throws Exception { - RestResponse getGovernorFollowed = ServiceRestUtils.getFollowed(user); - assertNotNull(getGovernorFollowed); - assertNotNull(getGovernorFollowed.getErrorCode()); - assertEquals(200, getGovernorFollowed.getErrorCode().intValue()); - - JSONArray listArrayFromRestResponse = ServiceRestUtils.getListArrayFromRestResponse(getGovernorFollowed); - - return listArrayFromRestResponse; - } - - protected void changeDistributionStatusOfAllService(boolean approved, User user) throws Exception { - if (approved) { - approveDistributionStatusOfCertifiedService(serviceDetails11, user); - approveDistributionStatusOfCertifiedService(serviceDetails22, user); - approveDistributionStatusOfCertifiedService(serviceDetails33, user); - } else { - rejectDistributionStatusOfService(serviceDetails11, user); - rejectDistributionStatusOfService(serviceDetails22, user); - rejectDistributionStatusOfService(serviceDetails33, user); - } - - } - - protected JSONArray checkFollowed(User user) throws Exception { - JSONArray getFollowedList = getFollowedListAsJsonArray(user); - assertFalse(getFollowedList.isEmpty()); - assertTrue(isElementInArray(serviceDetails11.getUniqueId(), getFollowedList)); - assertTrue(isElementInArray(serviceDetails22.getUniqueId(), getFollowedList)); - assertTrue(isElementInArray(serviceDetails33.getUniqueId(), getFollowedList)); - - return getFollowedList; - } - - // -------------------------------------T E S T - // S------------------------------------------------------// - - @Test - public void governorList_AllCertifiedVersionsOfService() throws Exception { - certifyAllServices(); - String serviceUniqueIdCertified1 = serviceDetails11.getUniqueId(); - RestResponse res = LifecycleRestUtils.changeServiceState(serviceDetails11, sdncDesignerDetails1, "1.0", - LifeCycleStatesEnum.CHECKOUT); - assertEquals(200, res.getErrorCode().intValue()); - - JSONArray getFollowedList = getFollowedListAsJsonArray(governor); - assertFalse(getFollowedList.isEmpty()); - assertFalse(isElementInArray(serviceDetails11.getUniqueId(), getFollowedList)); - assertTrue(isElementInArray(serviceDetails22.getUniqueId(), getFollowedList)); - assertTrue(isElementInArray(serviceDetails33.getUniqueId(), getFollowedList)); - assertTrue(isElementInArray(serviceUniqueIdCertified1, getFollowedList)); - assertEquals(3, getFollowedList.size()); - - // certifyService(serviceDetails11, "1.1"); - LifecycleRestUtils.certifyService(serviceDetails11); - - JSONArray governorFollowedList2 = checkFollowed(governor); - assertEquals(4, governorFollowedList2.size()); - assertTrue(isElementInArray(serviceDetails11.getUniqueId(), governorFollowedList2)); - assertTrue(isElementInArray(serviceUniqueIdCertified1, governorFollowedList2)); - - } - - // -------------------------------------T E S T - // S------------------------------------------------------// - - @Test - public void governorList_distributionNotApproved() throws Exception { - certifyAllServices(); - - JSONArray checkFollowed = checkFollowed(governor); - assertEquals(3, checkFollowed.size()); - } - - @Test - public void governorGetEmptyListTest_notCertifiedServices() throws Exception { - JSONArray governorFollowedList = getFollowedListAsJsonArray(governor); - - assertTrue(governorFollowedList.isEmpty()); - } - - @Test - public void governorList_distributionApproved() throws Exception { - certifyAllServices(); - boolean approved = true; - changeDistributionStatusOfAllService(approved, governor); - - JSONArray checkFollowed = checkFollowed(governor); - assertEquals(3, checkFollowed.size()); - } - - @Test(enabled = false) - public void governorList_distributed() throws Exception { - certifyAllServices(); - - LifecycleRestUtils.changeDistributionStatus(serviceDetails11, "1.0", governor, userRemarks, - DistributionStatusEnum.DISTRIBUTED); - LifecycleRestUtils.changeDistributionStatus(serviceDetails22, "1.0", governor, userRemarks, - DistributionStatusEnum.DISTRIBUTED); - LifecycleRestUtils.changeDistributionStatus(serviceDetails33, "1.0", governor, userRemarks, - DistributionStatusEnum.DISTRIBUTED); - - JSONArray governorFollowedList = getFollowedListAsJsonArray(governor); - assertFalse(governorFollowedList.isEmpty()); - assertTrue(isElementInArray(serviceDetails11.getUniqueId(), governorFollowedList)); - assertTrue(isElementInArray(serviceDetails22.getUniqueId(), governorFollowedList)); - assertTrue(isElementInArray(serviceDetails33.getUniqueId(), governorFollowedList)); - } - - @Test - public void governorList_distributionRejected() throws Exception { - certifyAllServices(); - boolean distributionRejected = false; - changeDistributionStatusOfAllService(distributionRejected, governor); - - JSONArray checkFollowed = checkFollowed(governor); - assertEquals(3, checkFollowed.size()); - } - -} |