summaryrefslogtreecommitdiffstats
path: root/ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java
diff options
context:
space:
mode:
Diffstat (limited to 'ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java')
-rw-r--r--ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java477
1 files changed, 0 insertions, 477 deletions
diff --git a/ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java b/ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java
deleted file mode 100644
index 3d21539e86..0000000000
--- a/ui-ci-dev/src/main/java/org/openecomp/sdc/uici/tests/utilities/OnboardUtility.java
+++ /dev/null
@@ -1,477 +0,0 @@
-package org.openecomp.sdc.uici.tests.utilities;
-
-import static org.testng.AssertJUnit.assertTrue;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.StringWriter;
-import java.nio.file.FileSystems;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.UUID;
-
-import javax.validation.constraints.AssertTrue;
-
-import org.apache.commons.io.IOUtils;
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpStatus;
-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.json.JSONObject;
-import org.junit.Test;
-import org.openecomp.sdc.uici.tests.datatypes.DataTestIdEnum;
-
-import org.openecomp.sdc.ci.tests.config.Config;
-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.rest.ResponseParser;
-import org.openecomp.sdc.common.datastructure.FunctionalInterfaces;
-
-/**
- * Utility Class For Onboarding
- *
- * @author mshitrit
- *
- */
-public final class OnboardUtility {
-
- private OnboardUtility() {
- throw new UnsupportedOperationException();
- }
-
- private static final class Constants {
- private static final String VENDOR_SOFTWARE_PRODUCTS = "vendor-software-products";
- private static final String VENDOR_LICENSE_MODELS = "vendor-license-models";
-
- private static final String VSP_ID = "vspId";
- private static final String VALUE = "value";
-
- enum Actions {
- CHECK_IN("Checkin"), SUBMIT("Submit"), CREATE_PACKAGE("Create_Package");
-
- private String value;
-
- private Actions(String value) {
- this.value = value;
- }
-
- public String getValue() {
- return value;
- }
- };
- }
-
- /**
- * @param heatFileName
- * @param filepath
- * @param userId
- * @param vld
- * @return
- * @throws Exception
- */
- public static void createVendorSoftwareProduct(String heatFileName, String filepath, String userId,
- VendorLicenseDetails vld) {
- RestResponse createNewVendorSoftwareProduct = FunctionalInterfaces
- .swallowException(() -> createNewVendorSoftwareProduct(vld, userId));
- assertTrue(createNewVendorSoftwareProduct.getErrorCode() == HttpStatus.SC_OK);
- String vspid = ResponseParser.getValueFromJsonResponse(createNewVendorSoftwareProduct.getResponse(),
- Constants.VSP_ID);
-
- RestResponse response = FunctionalInterfaces
- .swallowException(() -> uploadHeatPackage(filepath, heatFileName, vspid, userId));
- assertTrue(response.getErrorCode() == HttpStatus.SC_OK);
-
- response = actionOnComponent(vspid, Constants.Actions.CHECK_IN.getValue(), Constants.VENDOR_SOFTWARE_PRODUCTS,
- userId);
- assertTrue(response.getErrorCode() == HttpStatus.SC_OK);
-
- response = actionOnComponent(vspid, Constants.Actions.SUBMIT.getValue(), Constants.VENDOR_SOFTWARE_PRODUCTS,
- userId);
- assertTrue(response.getErrorCode() == HttpStatus.SC_OK);
-
- response = actionOnComponent(vspid, Constants.Actions.CREATE_PACKAGE.getValue(),
- Constants.VENDOR_SOFTWARE_PRODUCTS, userId);
- assertTrue(response.getErrorCode() == HttpStatus.SC_OK);
-
- }
-
- /**
- * Contains Details Relevant to Vendor License
- *
- * @author mshitrit
- *
- */
- public static final class VendorLicenseDetails {
- private final String vendorId;
- private final String vendorLicenseName;
- private final String vendorLicenseAgreementId;
- private final String featureGroupId;
- private final String vendorSoftwareProduct;
-
- private VendorLicenseDetails(String vendorId, String vendorLicenseName, String vendorLicenseAgreementId,
- String featureGroupId) {
- super();
- this.vendorId = vendorId;
- this.vendorLicenseName = vendorLicenseName;
- this.vendorLicenseAgreementId = vendorLicenseAgreementId;
- this.featureGroupId = featureGroupId;
- vendorSoftwareProduct = UUID.randomUUID().toString().split("-")[0];
- }
-
- public String getVendorId() {
- return vendorId;
- }
-
- public String getVendorLicenseName() {
- return vendorLicenseName;
- }
-
- public String getVendorLicenseAgreementId() {
- return vendorLicenseAgreementId;
- }
-
- public String getFeatureGroupId() {
- return featureGroupId;
- }
-
- public String getVendorSoftwareProduct() {
- return vendorSoftwareProduct;
- }
-
- }
-
- /**
- * Creates Vendor License
- *
- * @param userId
- * @return
- * @throws Exception
- */
- public static VendorLicenseDetails createVendorLicense(String userId) {
- final String fieldNameValue = Constants.VALUE;
- String vendorLicenseName = UUID.randomUUID().toString().split("-")[0];
- RestResponse vendorLicenseResponse = FunctionalInterfaces
- .swallowException(() -> createVendorLicenseModels(vendorLicenseName, userId));
- assertTrue(vendorLicenseResponse.getErrorCode() == HttpStatus.SC_OK);
-
- String vendorId = ResponseParser.getValueFromJsonResponse(vendorLicenseResponse.getResponse(), fieldNameValue);
-
- RestResponse vendorKeyGroupsResponse = FunctionalInterfaces
- .swallowException(() -> createVendorKeyGroups(vendorId, userId));
- assertTrue(vendorKeyGroupsResponse.getErrorCode() == HttpStatus.SC_OK);
- String keyGroupId = ResponseParser.getValueFromJsonResponse(vendorKeyGroupsResponse.getResponse(),
- fieldNameValue);
-
- RestResponse vendorEntitlementPool = FunctionalInterfaces
- .swallowException(() -> createVendorEntitlementPool(vendorId, userId));
- assertTrue(vendorEntitlementPool.getErrorCode() == HttpStatus.SC_OK);
- String entitlementPoolId = ResponseParser.getValueFromJsonResponse(vendorEntitlementPool.getResponse(),
- fieldNameValue);
-
- RestResponse vendorLicenseFeatureGroups = FunctionalInterfaces.swallowException(
- () -> createVendorLicenseFeatureGroups(vendorId, keyGroupId, entitlementPoolId, userId));
- assertTrue(vendorLicenseFeatureGroups.getErrorCode() == HttpStatus.SC_OK);
- String featureGroupId = ResponseParser.getValueFromJsonResponse(vendorLicenseFeatureGroups.getResponse(),
- fieldNameValue);
-
- RestResponse vendorLicenseAgreement = FunctionalInterfaces
- .swallowException(() -> createVendorLicenseAgreement(vendorId, featureGroupId, userId));
- assertTrue(vendorLicenseAgreement.getErrorCode() == HttpStatus.SC_OK);
- String vendorLicenseAgreementId = ResponseParser.getValueFromJsonResponse(vendorLicenseAgreement.getResponse(),
- fieldNameValue);
-
- RestResponse actionOnComponent = actionOnComponent(vendorId, Constants.Actions.CHECK_IN.getValue(),
- Constants.VENDOR_LICENSE_MODELS, userId);
- assertTrue(actionOnComponent.getErrorCode() == HttpStatus.SC_OK);
-
- actionOnComponent = actionOnComponent(vendorId, Constants.Actions.SUBMIT.getValue(),
- Constants.VENDOR_LICENSE_MODELS, userId);
- assertTrue(actionOnComponent.getErrorCode() == HttpStatus.SC_OK);
-
- return new VendorLicenseDetails(vendorId, vendorLicenseName, vendorLicenseAgreementId, featureGroupId);
- }
-
- private static RestResponse actionOnComponent(String vspid, String action, String onboardComponent, String userId) {
- Config config = FunctionalInterfaces.swallowException(() -> Utils.getConfig());
- String url = String.format("http://%s:%s/onboarding-api/v1.0/%s/%s/actions", config.getCatalogBeHost(),
- config.getCatalogBePort(), onboardComponent, vspid);
-
- JSONObject jObject = new JSONObject();
- FunctionalInterfaces.swallowException(() -> jObject.put("action", action));
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = FunctionalInterfaces
- .swallowException(() -> http.httpSendPut(url, jObject.toString(), headersMap));
- return response;
- }
-
- private static RestResponse createVendorLicenseModels(String name, String userId) throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-license-models", config.getCatalogBeHost(),
- config.getCatalogBePort());
-
- JSONObject jObject = new JSONObject();
- jObject.put("vendorName", name);
- jObject.put("description", "new vendor license model");
- jObject.put("iconRef", "icon");
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = http.httpSendPost(url, jObject.toString(), headersMap);
- return response;
-
- }
-
- private static RestResponse createVendorLicenseAgreement(String vspid, String featureGroupId, String userId)
- throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-license-models/%s/license-agreements",
- config.getCatalogBeHost(), config.getCatalogBePort(), vspid);
-
- JSONObject licenseTermpObject = new JSONObject();
- licenseTermpObject.put("choice", "Fixed_Term");
- licenseTermpObject.put("other", "");
-
- JSONObject jObjectBody = new JSONObject();
- jObjectBody.put("name", "abc");
- jObjectBody.put("description", "new vendor license agreement");
- jObjectBody.put("requirementsAndConstrains", "abc");
- jObjectBody.put("licenseTerm", licenseTermpObject);
- jObjectBody.put("addedFeatureGroupsIds", Arrays.asList(featureGroupId).toArray());
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = http.httpSendPost(url, jObjectBody.toString(), headersMap);
- return response;
- }
-
- private static RestResponse createVendorLicenseFeatureGroups(String vspid, String licenseKeyGroupId,
- String entitlementPoolId, String userId) throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-license-models/%s/feature-groups",
- config.getCatalogBeHost(), config.getCatalogBePort(), vspid);
-
- JSONObject jObject = new JSONObject();
- jObject.put("name", "xyz");
- jObject.put("description", "new vendor license feature groups");
- jObject.put("partNumber", "123abc456");
- jObject.put("addedLicenseKeyGroupsIds", Arrays.asList(licenseKeyGroupId).toArray());
- jObject.put("addedEntitlementPoolsIds", Arrays.asList(entitlementPoolId).toArray());
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = http.httpSendPost(url, jObject.toString(), headersMap);
- return response;
-
- }
-
- private static RestResponse createVendorEntitlementPool(String vspid, String userId) throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-license-models/%s/entitlement-pools",
- config.getCatalogBeHost(), config.getCatalogBePort(), vspid);
-
- JSONObject jEntitlementMetricObject = new JSONObject();
- jEntitlementMetricObject.put("choice", "CPU");
- jEntitlementMetricObject.put("other", "");
-
- JSONObject jAggregationFunctionObject = new JSONObject();
- jAggregationFunctionObject.put("choice", "Peak");
- jAggregationFunctionObject.put("other", "");
-
- JSONObject jOperationalScope = new JSONObject();
- jOperationalScope.put("choices", Arrays.asList("Availability_Zone").toArray());
- jOperationalScope.put("other", "");
-
- JSONObject jTimeObject = new JSONObject();
- jTimeObject.put("choice", "Hour");
- jTimeObject.put("other", "");
-
- JSONObject jObjectBody = new JSONObject();
- jObjectBody.put("name", "def");
- jObjectBody.put("description", "new vendor license entitlement pool");
- jObjectBody.put("thresholdValue", "23");
- jObjectBody.put("thresholdUnits", "Absolute");
- jObjectBody.put("entitlementMetric", jEntitlementMetricObject);
- jObjectBody.put("increments", "abcd");
- jObjectBody.put("aggregationFunction", jAggregationFunctionObject);
- jObjectBody.put("operationalScope", jOperationalScope);
- jObjectBody.put("time", jTimeObject);
- jObjectBody.put("manufacturerReferenceNumber", "123aaa");
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = http.httpSendPost(url, jObjectBody.toString(), headersMap);
- return response;
- }
-
- private static RestResponse createVendorKeyGroups(String vspid, String userId) throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-license-models/%s/license-key-groups",
- config.getCatalogBeHost(), config.getCatalogBePort(), vspid);
-
- JSONObject jOperationalScope = new JSONObject();
- jOperationalScope.put("choices", Arrays.asList("Tenant").toArray());
- jOperationalScope.put("other", "");
-
- JSONObject jObjectBody = new JSONObject();
- jObjectBody.put("name", "keyGroup");
- jObjectBody.put("description", "new vendor license key group");
- jObjectBody.put("operationalScope", jOperationalScope);
- jObjectBody.put("type", "Universal");
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
-
- HttpRequest http = new HttpRequest();
- RestResponse response = http.httpSendPost(url, jObjectBody.toString(), headersMap);
- return response;
- }
-
- private static RestResponse createNewVendorSoftwareProduct(VendorLicenseDetails vld, String userId)
- throws Exception {
- Config config = Utils.getConfig();
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-software-products",
- config.getCatalogBeHost(), config.getCatalogBePort());
-
- JSONObject jlicensingDataObj = new JSONObject();
- jlicensingDataObj.put("licenseAgreement", vld.getVendorLicenseAgreementId());
- jlicensingDataObj.put("featureGroups", Arrays.asList(vld.getFeatureGroupId()).toArray());
-
- JSONObject jObject = new JSONObject();
- jObject.put("name", vld.getVendorSoftwareProduct());
- jObject.put("description", "new VSP description");
- jObject.put("category", "resourceNewCategory.generic");
- jObject.put("subCategory", "resourceNewCategory.generic.database");
- jObject.put("licensingVersion", "1.0");
- jObject.put("vendorName", vld.getVendorLicenseName());
- jObject.put("vendorId", vld.getVendorId());
- jObject.put("icon", "icon");
- jObject.put("licensingData", jlicensingDataObj);
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
- HttpRequest http = new HttpRequest();
-
- RestResponse response = http.httpSendPost(url, jObject.toString(), headersMap);
-
- return response;
- }
-
- private static RestResponse uploadHeatPackage(String filepath, String filename, String vspid, String userId)
- throws Exception {
- Config config = Utils.getConfig();
- CloseableHttpResponse response = null;
-
- MultipartEntityBuilder mpBuilder = MultipartEntityBuilder.create();
- mpBuilder.addPart("resourceZip", new FileBody(getTestZipFile(filepath, filename)));
-
- String url = String.format("http://%s:%s/onboarding-api/v1.0/vendor-software-products/%s/upload",
- config.getCatalogBeHost(), config.getCatalogBePort(), vspid);
-
- Map<String, String> headersMap = prepareHeadersMap(userId);
- headersMap.put(HttpHeaderEnum.CONTENT_TYPE.getValue(), "multipart/form-data");
-
- CloseableHttpClient client = HttpClients.createDefault();
- try {
- HttpPost httpPost = new HttpPost(url);
- RestResponse restResponse = new RestResponse();
-
- Iterator<String> iterator = headersMap.keySet().iterator();
- while (iterator.hasNext()) {
- String key = iterator.next();
- String value = headersMap.get(key);
- httpPost.addHeader(key, value);
- }
- httpPost.setEntity(mpBuilder.build());
- response = client.execute(httpPost);
- HttpEntity entity = response.getEntity();
- String responseBody = null;
- if (entity != null) {
- InputStream instream = entity.getContent();
- StringWriter writer = new StringWriter();
- IOUtils.copy(instream, writer);
- responseBody = writer.toString();
- try {
-
- } finally {
- instream.close();
- }
- }
-
- restResponse.setErrorCode(response.getStatusLine().getStatusCode());
- restResponse.setResponse(responseBody);
-
- return restResponse;
-
- } finally {
- closeResponse(response);
- closeHttpClient(client);
-
- }
- }
-
- private static void closeResponse(CloseableHttpResponse response) {
- try {
- if (response != null) {
- response.close();
- }
- } catch (IOException e) {
- System.out.println(String.format("failed to close client or response: %s", e.getMessage()));
- }
- }
-
- private static void closeHttpClient(CloseableHttpClient client) {
- try {
- if (client != null) {
- client.close();
- }
- } catch (IOException e) {
- System.out.println(String.format("failed to close client or response: %s", e.getMessage()));
- }
- }
-
- private static File getTestZipFile(String filepath, String filename) throws IOException {
- Config config = Utils.getConfig();
- String sourceDir = config.getImportResourceTestsConfigDir();
- java.nio.file.Path filePath = FileSystems.getDefault().getPath(filepath + File.separator + filename);
- return filePath.toFile();
- }
-
- protected 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");
- headersMap.put(HttpHeaderEnum.USER_ID.getValue(), userId);
- return headersMap;
- }
-
- public static void createVfFromOnboarding(String userID, String zipFile, String filepath) {
- VendorLicenseDetails vld = createVendorLicense(userID);
- createVendorSoftwareProduct(zipFile, filepath, userID, vld);
-
- GeneralUIUtils.getWebElementWaitForVisible(DataTestIdEnum.OnBoardingTable.OPEN_MODAL_BUTTON.getValue()).click();
- GeneralUIUtils.getWebElementWaitForVisible(DataTestIdEnum.OnBoardingTable.ONBOARDING_SEARCH.getValue())
- .sendKeys(vld.getVendorSoftwareProduct());
-
- GeneralUIUtils.waitForLoader();
- GeneralUIUtils.sleep(1000);
- GeneralUIUtils.getWebElementWaitForClickable(vld.getVendorSoftwareProduct()).click();
- GeneralUIUtils.waitForLoader();
- GeneralUIUtils.getWebElementWaitForVisible(DataTestIdEnum.OnBoardingTable.IMPORT_ICON.getValue()).click();
- GeneralUIUtils.getWebElementWaitForClickable(DataTestIdEnum.LifeCyleChangeButtons.CREATE.getValue()).click();
- GeneralUIUtils.waitForLoader(300);
- }
-
-}