diff options
Diffstat (limited to 'vid-automation/src/main/java/vid/automation')
39 files changed, 829 insertions, 652 deletions
diff --git a/vid-automation/src/main/java/vid/automation/test/Constants.java b/vid-automation/src/main/java/vid/automation/test/Constants.java index 3df26f6ab..e3eeaca54 100644 --- a/vid-automation/src/main/java/vid/automation/test/Constants.java +++ b/vid-automation/src/main/java/vid/automation/test/Constants.java @@ -50,8 +50,8 @@ public class Constants { public static final String SERVICE_INSTANCEID_TH_ID = "service-instanceId-th-id"; public static final String MULTI_SELECT_UNSELECTED_CLASS = "item-unselected"; public static final String MULTI_SELECT_SELECTED_CLASS = "item-selected"; - public static final String ACTIVE = "Active"; - public static final String INACTIVE = "Inactive"; + public static final String ACTIVE = "ACTIVE"; + public static final String INACTIVE = "INACTIVE"; public static final String MSO_COMMIT_DIALOG_CLOSE_BUTTON = "msoCommitDialogCloseButton"; public static final String REQUIRED = "is required"; public static final String MISSING_DATA = "Missing data (\"%s\")"; @@ -182,6 +182,7 @@ public class Constants { public static final String STATUS_TEXT = "Designing a new service"; public static final String CONTEXT_MENU_BUTTON_HEADER = "openMenuBtn"; public static final String CONTEXT_MENU_HEADER_EDIT_ITEM = "context-menu-header-edit-item"; + public static final String CONTEXT_MENU_HEADER_RESUME_ITEM = "context-menu-header-resume-item"; public static final String CONTEXT_MENU_HEADER_DELETE_ITEM = "context-menu-header-delete-item"; public static final String SERVICE_QUANTITY = "servicesQuantity"; public static final String BACK_BUTTON = "backBtn"; @@ -241,6 +242,7 @@ public class Constants { public static final String ECOMP_NAME_INPUT = "ecomp-instance-name"; public static final String TENANT_CONTEXT_INPUT = "tenant-context"; public static final String ENVIRONMENT_TYPE_DROP_DOWN = "operational-environment-type"; + public static final String ENVIRONMENT_RELEASE = "operational-release"; public static final String WORKLOAD_CONTEXT_DROP_DOWN = "workload-context"; public static final String SUBMIT_BUTTON = "submit-button"; public static final String CANCEL_BUTTON = "cancel-button"; @@ -248,10 +250,12 @@ public class Constants { public static final String POPUP_ERROR_MESSAGE = "test-new-environment-error"; public static final String environmentCreatedSuccesfullyMessage = "Operational Environment successfully created"; + // json content public static final String HEADERS_LIST = "headers"; public static final String BASIC_LIST = "basicList"; public static final String FULL_LIST = "fullList"; + public static final String FULL_LIST_WITHOUT_RELEASE_LABEL = "fullListWithoutReleaseLabel"; public static final String FILTERED_LIST = "filteredList"; public static final String SORTED_LIST = "sortedList"; @@ -323,6 +327,7 @@ public class Constants { public class CreateNewInstance { public static final String SUBSCRIBER_NAME_OPTION_CLASS = "subscriberNameOption"; public static final String SERVICE_TYPE_OPTION_CLASS = "serviceTypeOption"; + public static final String OWNING_ENTITY_OPTION = "owningEntityOption"; public static final String SELECTED_SUBSCRIBER_NAME_TEST_ID = "selectedSubscriberName"; public static final String SELECTED_SERVICE_TYPE_NAME_TEST_ID = "selectedServiceTypeName"; public static final String SERVICE_INSTANCE_NAME_PREFIX = "vid-e2e-test_aai_service_"; @@ -403,6 +408,7 @@ public class Constants { public static final String SUBDETAILS_ERROR_MESSAGE_TEST_ID = "subDetailsErrMsg"; public static final String ERROR_CLASS = "error"; + public static final String COMMON_PORT_MIRRORING_PORT_NAME = "i am a port"; } public class PnfAssociation { public static final String PNF_NAME_TEST_ID = "pnfName"; diff --git a/vid-automation/src/main/java/vid/automation/test/infra/Click.java b/vid-automation/src/main/java/vid/automation/test/infra/Click.java index 0b5f40b84..ec469d13a 100644 --- a/vid-automation/src/main/java/vid/automation/test/infra/Click.java +++ b/vid-automation/src/main/java/vid/automation/test/infra/Click.java @@ -1,5 +1,8 @@ package vid.automation.test.infra; +import static org.onap.sdc.ci.tests.utilities.GeneralUIUtils.getDriver; + +import java.util.List; import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.Alert; @@ -8,10 +11,6 @@ import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.Select; import org.openqa.selenium.support.ui.WebDriverWait; -import java.util.List; - -import static org.onap.sdc.ci.tests.utilities.GeneralUIUtils.getDriver; - public class Click { public static void byText(String text) { WebElement element = GeneralUIUtils.findByText(text); @@ -33,6 +32,11 @@ public class Click { clickWhenClickable(element); } + public static void byTestIdOnceItsAvailable(String testId, int timeout) { + GeneralUIUtils.clickElementUsingActions( + Get.byXpath("//*[@data-tests-id='" + testId + "']", timeout)); + } + public static void byClass(String className) { List<WebElement> elements = Get.byClass(className); Assert.assertTrue(elements != null && elements.size() > 0); diff --git a/vid-automation/src/main/java/vid/automation/test/infra/Features.java b/vid-automation/src/main/java/vid/automation/test/infra/Features.java index cd632ff12..005c06551 100644 --- a/vid-automation/src/main/java/vid/automation/test/infra/Features.java +++ b/vid-automation/src/main/java/vid/automation/test/infra/Features.java @@ -7,17 +7,12 @@ public enum Features implements Feature { CREATE_INSTANCE_TEST, EMPTY_DRAWING_BOARD_TEST, - FLAG_ASYNC_JOBS, FLAG_ADD_MSO_TESTAPI_FIELD, - FLAG_ASYNC_INSTANTIATION, - FLAG_UNASSIGN_SERVICE, FLAG_SERVICE_MODEL_CACHE, FLAG_NETWORK_TO_ASYNC_INSTANTIATION, - FLAG_COLLECTION_RESOURCE_SUPPORT, FLAG_SHOW_ASSIGNMENTS, FLAG_FABRIC_CONFIGURATION_ASSIGNMENTS, FLAG_SHOW_VERIFY_SERVICE, - FLAG_DUPLICATE_VNF, FLAG_DEFAULT_VNF, FLAG_SETTING_DEFAULTS_IN_DRAWING_BOARD, FLAG_RESTRICTED_SELECT, @@ -27,7 +22,6 @@ public enum Features implements Feature { FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS, FLAG_ASYNC_ALACARTE_VFMODULE, FLAG_SUPPLEMENTARY_FILE, - FLAG_SHIFT_VFMODULE_PARAMS_TO_VNF, FLAG_EXP_ANY_ALACARTE_NEW_INSTANTIATION_UI, FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY, FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST, @@ -40,6 +34,12 @@ public enum Features implements Feature { FLAG_VF_MODULE_RESUME_STATUS_CREATE, FLAG_EXP_CREATE_RESOURCES_IN_PARALLEL, FLAG_1906_INSTANTIATION_API_USER_VALIDATION, + FLAG_1908_TRANSPORT_SERVICE_NEW_INSTANTIATION_UI, + FLAG_1908_COLLECTION_RESOURCE_NEW_INSTANTIATION_UI, + FLAG_1908_INFRASTRUCTURE_VPN, + FLAG_1908_RESUME_MACRO_SERVICE, + FLAG_1908_RELEASE_TENANT_ISOLATION, + FLAG_1908_VNF_FC_NEW_INSTANTIATION_UI, ; public boolean isActive() { diff --git a/vid-automation/src/main/java/vid/automation/test/infra/ModelInfo.java b/vid-automation/src/main/java/vid/automation/test/infra/ModelInfo.java index 1284a8b42..59e48013c 100644 --- a/vid-automation/src/main/java/vid/automation/test/infra/ModelInfo.java +++ b/vid-automation/src/main/java/vid/automation/test/infra/ModelInfo.java @@ -51,12 +51,15 @@ public class ModelInfo { public static final ModelInfo macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse = new ModelInfo("6b528779-44a3-4472-bdff-9cd15ec93450", "e49fbd11-e60c-4a8e-b4bf-30fbe8f4fcc0" , "csar-withDynamicFields-ecompNamingFalse-partialModelDetails-vnfEcompNamingFalse.zip"); public static final ModelInfo macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse = new ModelInfo("4a80c596-27e5-4ca9-b5bb-e03a7fd4c0fd", "4140a873-00bb-4f57-ac46-0494cc9e674a", "csar-noDynamicFields-ecompNamingFalse-fullModelDetails-1a80c596-vnfEcompNamingFalse.zip"); public static final ModelInfo aLaCarteNetworkProvider5G = new ModelInfo("4659e8bd-0920-4eed-8ec5-550b4c8dceeb", "16e56d12-40b3-4db1-a40e-d48c36679e2e", "service-SrIovProvider1-csar.zip"); - public static final ModelInfo PASQUALEVmxVpeBvService488Annotations = new ModelInfo("f4d84bb4-a416-4b4e-997e-0059973630b9", "598e3f9e-3244-4d8f-a8e0-0e5d7a29eda9", "service-PASQUALEVmxVpeBvService488-csar-annotations.zip"); + public static final ModelInfo pasqualeVmxVpeBvService488Annotations = new ModelInfo("f4d84bb4-a416-4b4e-997e-0059973630b9", "598e3f9e-3244-4d8f-a8e0-0e5d7a29eda9", "service-PasqualeVmxVpeBvService488-csar-annotations.zip"); public static final ModelInfo macroDrawingBoardComplexService = new ModelInfo("6e59c5de-f052-46fa-aa7e-2fca9d674c44","cfef8302-d90f-475f-87cc-3f49a62ef14c", "service-Complexservice-csar.zip" ); public static final ModelInfo aLaCarteServiceCreationTest = new ModelInfo("f913c5d0-206e-45c2-9284-1c68f4e67dc7", "45e61192-876c-4e28-9139-5a0c47410379", "serviceCreationTest.zip"); public static final ModelInfo aLaCarteVnfGroupingService = new ModelInfo("4117a0b6-e234-467d-b5b9-fe2f68c8b0fc", "7ee41ce4-4827-44b0-a48e-2707a59905d2", "csar15782222_instantiationTypeAlacarte_VnfGrouping.zip"); public static final ModelInfo serviceFabricSriovService = new ModelInfo("253f1467-fe68-4e80-ba71-308000caec31", "c15fe228-7d40-4f99-afa7-10abeedf9aac", "service-fabric-SriovService-csar.zip"); - + public static final ModelInfo infrastructureVpnService = new ModelInfo("f028b2e2-7080-4b13-91b2-94944d4c42d8", "dfc2c44c-2429-44ca-ae26-1e6dc1f207fb", "service-Infravpn-csar.zip"); + public static final ModelInfo collectionResourceService = new ModelInfo("abd0cb02-5f97-42cd-be93-7dd3e31a6a64", "04bdd793-32ed-4045-adea-4e096304a067", "csar_collection_resource.zip"); + public static final ModelInfo collectionResourceForResume = new ModelInfo("6e0bec91-09f3-43aa-9cf3-e617cd0146be", "f6342be5-d66b-4d03-a1aa-c82c3094c4ea", "csar_collection_resource_for_resume.zip"); + public static final ModelInfo transportWithPnfsService = new ModelInfo("12550cd7-7708-4f53-a09e-41d3d6327ebc", "561faa57-7bbb-40ec-a81c-c0d4133e98d4", "csarTransportWithPnfs.zip"); public static final ImmutableList<ModelInfo> superSetOfModelInfos = buildModelInfos(); public static ImmutableList<ModelInfo> buildModelInfos() { @@ -70,10 +73,14 @@ public class ModelInfo { .add(macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse) .add(macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse) .add(aLaCarteNetworkProvider5G) - .add(PASQUALEVmxVpeBvService488Annotations) + .add(pasqualeVmxVpeBvService488Annotations) .add(macroDrawingBoardComplexService) .add(aLaCarteServiceCreationTest) .add(aLaCarteVnfGroupingService) + .add(infrastructureVpnService) + .add(transportWithPnfsService) + .add(collectionResourceService) + .add(collectionResourceForResume) .build(); } } diff --git a/vid-automation/src/main/java/vid/automation/test/model/Environment.java b/vid-automation/src/main/java/vid/automation/test/model/Environment.java index 9304dd998..a5df54a64 100644 --- a/vid-automation/src/main/java/vid/automation/test/model/Environment.java +++ b/vid-automation/src/main/java/vid/automation/test/model/Environment.java @@ -8,4 +8,5 @@ public class Environment { public String EcompEnvironmentName; public String tenantContext; public String workloadContext; + public String release; } diff --git a/vid-automation/src/main/java/vid/automation/test/model/ServiceAction.java b/vid-automation/src/main/java/vid/automation/test/model/ServiceAction.java index a155c6c72..9a86d9144 100644 --- a/vid-automation/src/main/java/vid/automation/test/model/ServiceAction.java +++ b/vid-automation/src/main/java/vid/automation/test/model/ServiceAction.java @@ -3,5 +3,6 @@ package vid.automation.test.model; public enum ServiceAction { INSTANTIATE, DELETE, - UPDATE + UPDATE, + RESUME }
\ No newline at end of file diff --git a/vid-automation/src/main/java/vid/automation/test/sections/CreateConfigurationPage.java b/vid-automation/src/main/java/vid/automation/test/sections/CreateConfigurationPage.java index 4b837a0ac..6f6b9f57d 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/CreateConfigurationPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/CreateConfigurationPage.java @@ -1,8 +1,6 @@ package vid.automation.test.sections; -import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.openqa.selenium.WebElement; import vid.automation.test.Constants; import vid.automation.test.infra.SelectOption; diff --git a/vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java b/vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java index 68e673b68..11f570211 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java @@ -2,7 +2,6 @@ package vid.automation.test.sections; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import vid.automation.test.Constants; -import vid.automation.test.model.Service; /** * Created by itzikliderman on 13/06/2017. diff --git a/vid-automation/src/main/java/vid/automation/test/sections/DrawingBoardPage.java b/vid-automation/src/main/java/vid/automation/test/sections/DrawingBoardPage.java index acbb4d991..22e8136cf 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/DrawingBoardPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/DrawingBoardPage.java @@ -1,7 +1,34 @@ package vid.automation.test.sections; +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.collection.IsEmptyCollection.empty; +import static org.testng.AssertJUnit.assertTrue; +import static vid.automation.test.Constants.DrawingBoard.DEPLOY_BUTTON; +import static vid.automation.test.Constants.DrawingBoard.HIGHLIGHTED_COLOR; +import static vid.automation.test.Constants.DrawingBoard.QUANTITY_LABEL_TEST_ID; +import static vid.automation.test.Constants.DrawingBoard.QUANTITY_LABEL_VALUE; +import static vid.automation.test.Constants.DrawingBoard.SERVICE_INSTANCE_TEST_ID; +import static vid.automation.test.Constants.DrawingBoard.SERVICE_INSTANCE_VALUE; +import static vid.automation.test.Constants.DrawingBoard.SERVICE_NAME; +import static vid.automation.test.Constants.DrawingBoard.SERVICE_QUANTITY; +import static vid.automation.test.Constants.DrawingBoard.SERVICE_STATUS; +import static vid.automation.test.Constants.DrawingBoard.STATUS_TEXT; + import com.google.common.collect.ImmutableList; import com.google.common.collect.Sets; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.function.Function; +import java.util.function.Predicate; +import java.util.stream.Collectors; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; import org.openqa.selenium.JavascriptExecutor; @@ -12,20 +39,12 @@ import vid.automation.test.Constants; import vid.automation.test.infra.Click; import vid.automation.test.infra.Get; import vid.automation.test.infra.Wait; - -import java.util.*; -import java.util.function.Function; -import java.util.function.Predicate; -import java.util.stream.Collectors; - -import static org.hamcrest.CoreMatchers.equalTo; -import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.collection.IsEmptyCollection.empty; -import static vid.automation.test.Constants.DrawingBoard.*; +import vid.automation.test.test.NewServiceInstanceTest; public class DrawingBoardPage extends VidBasePage { + private static final Logger logger = LogManager.getLogger(DrawingBoardPage.class); + public DrawingBoardPage(){ super(); } @@ -219,7 +238,7 @@ public class DrawingBoardPage extends VidBasePage { assertThat(webElement.getText(), is("Missing required information. Please open and fill in the details.")); } - public void clickDeployButton(){ + private void clickDeployButton(){ GeneralUIUtils.ultimateWait(); try { @@ -233,6 +252,22 @@ public class DrawingBoardPage extends VidBasePage { } + public void deploy() { + try { + logger.info("Redux state before deploy:"); + logger.info(getReduxState()); + } + catch (Exception e) { + //do nothing just logging + } + clickDeployButton(); + + VidBasePage.goOutFromIframe(); + GeneralUIUtils.ultimateWait(); + VidBasePage.goToIframe(); + GeneralUIUtils.ultimateWait(); + } + public void checkDeployButtonDisabled(){ Assert.assertFalse(Get.byTestId(DEPLOY_BUTTON).isEnabled(),"Deploy button is enabled and should be disabled"); } @@ -256,22 +291,22 @@ public class DrawingBoardPage extends VidBasePage { } public static class ServiceStatusChecker implements Predicate<Boolean> { - private String actualInstanceName; + private String uniqueText; private Set<String> expectedStatuses; private Set<String> columnClassesSet; - public ServiceStatusChecker(String actualInstanceName, Set<String> expectedStatuses) { - this.actualInstanceName = actualInstanceName; + public ServiceStatusChecker(String uniqueText, Set<String> expectedStatuses) { + this.uniqueText = uniqueText; this.expectedStatuses = expectedStatuses; } @Override public boolean test(Boolean noMeaning) { InstantiationStatusPage.clickRefreshButton(); - final WebElement row = InstantiationStatusPage.getInstantiationStatusRow(actualInstanceName); + final WebElement row = InstantiationStatusPage.getInstantiationStatusRow(uniqueText); if (row == null) { - System.err.println("**********************" + actualInstanceName + "************************************************"); - columnClassesSet = Collections.singleton(actualInstanceName + " NOT FOUND"); + System.err.println("**********************" + uniqueText + "************************************************"); + columnClassesSet = Collections.singleton(uniqueText + " NOT FOUND"); return false; // treat missing row as if test condition not fulfilled } else { columnClassesSet = new HashSet<>(Arrays.asList( @@ -284,4 +319,13 @@ public class DrawingBoardPage extends VidBasePage { return columnClassesSet; } } + + public void verifyServiceCompletedOnTime(String uniqueStatusText, String nameToDisplay) { + DrawingBoardPage.ServiceStatusChecker serviceStatusChecker = + new DrawingBoardPage.ServiceStatusChecker(uniqueStatusText, Collections.singleton(NewServiceInstanceTest.COMPLETED)); + boolean statusIsShown = Wait.waitFor(serviceStatusChecker, null, 20, 2); + assertTrue(nameToDisplay + " wasn't completed in time", statusIsShown); + VidBasePage.goOutFromIframe(); + } + } diff --git a/vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java b/vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java index 2efb9f3c8..e56603f90 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java @@ -1,8 +1,6 @@ package vid.automation.test.sections; -import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.openqa.selenium.WebElement; import vid.automation.test.Constants; public class PnfSearchAssociationPage extends VidBasePage { diff --git a/vid-automation/src/main/java/vid/automation/test/sections/ServiceProxyPage.java b/vid-automation/src/main/java/vid/automation/test/sections/ServiceProxyPage.java index 82f45ce7f..b96a7d38d 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/ServiceProxyPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/ServiceProxyPage.java @@ -4,6 +4,7 @@ import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import vid.automation.test.Constants; +import vid.automation.test.Constants.ViewEdit; import vid.automation.test.infra.SelectOption; import static org.hamcrest.core.Is.is; @@ -40,18 +41,34 @@ public class ServiceProxyPage extends VidBasePage { } public ServiceProxyPage clickDeleteConfigurationButton() { - GeneralUIUtils.clickOnElementByTestId(Constants.DELETE_CONFIGURATION_BUTTON, 60); + GeneralUIUtils.clickOnElementByTestId(deleteConfigurationButtonTestId(), 60); return this; } + private String configurationInstanceName() { + return "dummy_instance"; + } + + private String deleteConfigurationButtonTestId() { + return Constants.DELETE_CONFIGURATION_BUTTON + "-" + configurationInstanceName(); + } + + private String activateDeactivateButtonTestId() { + return Constants.ACTIVATE_DEACTIVATE_BUTTON + "-" + configurationInstanceName(); + } + + private String enableDisableButtonTestId(String portName) { + return Constants.ENABLE_DISABLE_BUTTON + "-" + configurationInstanceName() + "-" + portName; + } + public ServiceProxyPage assertDeleteConfigurationButtonExists(boolean shouldExist){ if (shouldExist) { - WebElement selectedV = GeneralUIUtils.getWebElementByTestID(Constants.DELETE_CONFIGURATION_BUTTON, 3); + WebElement selectedV = GeneralUIUtils.getWebElementByTestID(deleteConfigurationButtonTestId(), 3); Assert.assertThat(selectedV != null, is(shouldExist)); Assert.assertThat(selectedV.isDisplayed(), is(shouldExist)); } else { - boolean webElementExistByTestId = GeneralUIUtils.isWebElementExistByTestId(Constants.DELETE_CONFIGURATION_BUTTON); + boolean webElementExistByTestId = GeneralUIUtils.isWebElementExistByTestId(deleteConfigurationButtonTestId()); Assert.assertThat(webElementExistByTestId, is(shouldExist)); } return this; @@ -86,12 +103,12 @@ public class ServiceProxyPage extends VidBasePage { } public ServiceProxyPage clickActivateDeactivateButton() { - GeneralUIUtils.clickOnElementByTestId(Constants.ACTIVATE_DEACTIVATE_BUTTON, 60); + GeneralUIUtils.clickOnElementByTestId(activateDeactivateButtonTestId(), 60); return this; } public ServiceProxyPage clickEnableDisableButton(){ - GeneralUIUtils.clickOnElementByTestId(Constants.ENABLE_DISABLE_BUTTON, 60); + GeneralUIUtils.clickOnElementByTestId(enableDisableButtonTestId(ViewEdit.COMMON_PORT_MIRRORING_PORT_NAME), 60); return this; } } diff --git a/vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java b/vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java index 71c6e0bd4..5989fb658 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java @@ -1,14 +1,10 @@ package vid.automation.test.sections; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.openqa.selenium.By; import org.openqa.selenium.WebElement; -import org.testng.Assert; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; import vid.automation.test.infra.Get; - -import java.util.List; +import vid.automation.test.infra.SelectOption; import static org.junit.Assert.assertEquals; @@ -36,4 +32,11 @@ public class TestEnvironmentPage extends VidBasePage { WebElement webElement = Get.byId(Constants.TestEnvironments.attachButtonIdPrefix + envId); return webElement; } + + public static String selectEnvRelease(String envRelease){ + GeneralUIUtils.ultimateWait(); + String selectedOption; + selectedOption = SelectOption.getSelectedOption(Constants.TestEnvironments.ENVIRONMENT_RELEASE); + return selectedOption; + } } diff --git a/vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java b/vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java index f749df02b..65d0fb6a0 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java @@ -1,33 +1,33 @@ package vid.automation.test.sections; -import static org.hamcrest.CoreMatchers.containsString; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.onap.sdc.ci.tests.utilities.GeneralUIUtils.getDriver; - import com.aventstack.extentreports.Status; -import java.io.IOException; -import java.net.URI; -import java.net.URISyntaxException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.function.Function; import org.junit.Assert; import org.onap.sdc.ci.tests.execute.setup.ExtentTestActions; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; +import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.Exists; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Input; -import vid.automation.test.infra.SelectOption; -import vid.automation.test.infra.Wait; +import vid.automation.test.Constants.ViewEdit; +import vid.automation.test.infra.*; + +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; +import java.util.List; +import java.util.function.Function; + +import static java.util.stream.Collectors.toMap; +import static org.hamcrest.CoreMatchers.containsString; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.onap.sdc.ci.tests.utilities.GeneralUIUtils.getDriver; +import static org.testng.Assert.assertEquals; public class VidBasePage { @@ -192,6 +192,12 @@ public class VidBasePage { return this; } + public VidBasePage selectLineOfBusiness(String lineOfBusines) { + GeneralUIUtils.ultimateWait(); + SelectOption.byValue(lineOfBusines, Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID); + return this; + } + public VidBasePage selectTenant(String tenant) { GeneralUIUtils.ultimateWait(); SelectOption.byValue(tenant, Constants.ViewEdit.TENANT_SELECT_TESTS_ID); @@ -213,10 +219,6 @@ public class VidBasePage { return this; } - public VidBasePage selectLineOfBusiness(String lob) { - SelectOption.byValue(lob, Constants.OwningEntity.LOB_SELECT_TEST_ID); - return this; - } public void assertButtonState(String dataTestId, boolean shouldBeEnabled) { assertButtonStateInternal(dataTestId, shouldBeEnabled, @@ -312,7 +314,7 @@ public class VidBasePage { if (checkPortMirroring) { Wait.byText("Add node instance"); - Wait.byText("i'm a port"); + Wait.byText(ViewEdit.COMMON_PORT_MIRRORING_PORT_NAME); } if (checkAddVnf) { @@ -334,5 +336,19 @@ public class VidBasePage { return new WebDriverWait(getDriver(), (long)time); } + public String getReduxState() { + final JavascriptExecutor javascriptExecutor = (JavascriptExecutor) GeneralUIUtils.getDriver(); + String reduxState = (String)javascriptExecutor.executeScript("return window.sessionStorage.getItem('reduxState');"); + System.out.println(reduxState); + return reduxState; + } + + public void setReduxState(String state) { + final JavascriptExecutor javascriptExecutor = (JavascriptExecutor) GeneralUIUtils.getDriver(); + String script = String.format("window.sessionStorage.setItem('reduxState', '%s');", state); + System.out.println("executing script:"); + System.out.println(script); + javascriptExecutor.executeScript(script); + } } diff --git a/vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java b/vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java index e10c872ee..4edabf53d 100644 --- a/vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java +++ b/vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java @@ -76,6 +76,11 @@ public class ViewEditPage extends VidBasePage { return this; } + public ViewEditPage selectLineOfBusiness(String lineOfBusiness, String cloudOwner){ + selectLineOfBusiness(lineOfBusiness); + return this; + } + public ViewEditPage setLegacyRegion(String legacyRegionName){ setInputText(Constants.ViewEdit.LEGACY_REGION_INPUT_TESTS_ID, legacyRegionName); return this; @@ -126,16 +131,16 @@ public class ViewEditPage extends VidBasePage { return this; } - public ViewEditPage selectLineOfBusiness(String lineOfBusiness) { - try { - SelectOption.selectFirstTwoOptionsFromMultiselectById(Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID); - } catch (InterruptedException e) { - e.printStackTrace(); - return this; - } - //TODO multi SelectOption.byValue(lineOfBusiness, Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID); - return this; - } +// public ViewEditPage selectLineOfBusiness(String lineOfBusiness) { +// try { +// SelectOption.selectFirstTwoOptionsFromMultiselectById(Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID); +// } catch (InterruptedException e) { +// e.printStackTrace(); +// return this; +// } +// //TODO multi SelectOption.byValue(lineOfBusiness, Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID); +// return this; +// } public ViewEditPage selectPlatform(String platform) { SelectOption.byValue(platform, Constants.OwningEntity.PLATFORM_SELECT_TEST_ID); diff --git a/vid-automation/src/main/java/vid/automation/test/services/BulkRegistration.java b/vid-automation/src/main/java/vid/automation/test/services/BulkRegistration.java index 0f0839537..2d04af9cb 100644 --- a/vid-automation/src/main/java/vid/automation/test/services/BulkRegistration.java +++ b/vid-automation/src/main/java/vid/automation/test/services/BulkRegistration.java @@ -1,35 +1,9 @@ package vid.automation.test.services; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.ATT_NC; -import static vid.automation.test.infra.ModelInfo.serviceFabricSriovService; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; - import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAICloudRegionAndSourceFromConfigurationPut; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIFilterServiceInstanceById; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetHomingForVfModule; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetModelsByOwningEntity; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetModelsByProject; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetNetworkZones; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetPortMirroringSourcePorts; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsWithoutInstancesGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetTenants; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIPostNamedQueryForViewEdit; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOActivateFabricConfiguration; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOBaseCreateInstancePost; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateVfModule; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeactivateAndCloudDelete; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteInstanceOrchestrationRequestGet; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteNetwork; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteService; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteVfModule; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteVnf; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteVolumeGroup; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; +import org.onap.simulator.presetGenerator.presets.aai.*; +import org.onap.simulator.presetGenerator.presets.mso.*; import org.onap.simulator.presetGenerator.presets.mso.configuration.PresetMSOActOnConfiguration; import org.onap.simulator.presetGenerator.presets.mso.configuration.PresetMSOCreateConfiguration; import org.onap.simulator.presetGenerator.presets.mso.configuration.PresetMSODeleteConfiguration; @@ -37,6 +11,12 @@ import org.onap.simulator.presetGenerator.presets.mso.configuration.PresetMsoEna import org.onap.simulator.presetGenerator.presets.sdc.PresetSDCGetServiceMetadataGet; import org.onap.simulator.presetGenerator.presets.sdc.PresetSDCGetServiceToscaModelGet; import vid.automation.test.Constants; +import vid.automation.test.Constants.ViewEdit; + +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.ATT_NC; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.COMPLETE; +import static vid.automation.test.infra.ModelInfo.serviceFabricSriovService; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; public class BulkRegistration { @@ -74,7 +54,7 @@ public class BulkRegistration { new PresetSDCGetServiceToscaModelGet(serviceFabricSriovService), new PresetAAIGetNetworkZones(), new PresetMSOActivateFabricConfiguration("c187e9fe-40c3-4862-b73e-84ff056205f61234"), - new PresetMSOOrchestrationRequestGet("COMPLETE", "318cc766-b673-4a50-b9c5-471f68914584", "Success")), + new PresetMSOOrchestrationRequestGet(COMPLETE, "318cc766-b673-4a50-b9c5-471f68914584", "Success", false)), SimulatorApi.RegistrationStrategy.APPEND); } @@ -137,11 +117,14 @@ public class BulkRegistration { public static void searchExistingServiceInstancePortMirroring(String orchStatus, boolean isMirrored, String desiredCloudRegionId) { genericSearchExistingServiceInstance(); final String configurationId = "9533-config-LB1113"; + final String configurationId2 = "9533-config-LB1114"; final String portInterfaceId = "d35bf534-7d8e-4cb4-87f9-0a8bb6cd47b2"; final String modelToReplaceWith ="pm1111_equip_model_rename.zip"; SimulatorApi.registerExpectationFromPreset(new PresetAAICloudRegionAndSourceFromConfigurationPut(configurationId, desiredCloudRegionId), APPEND); - SimulatorApi.registerExpectationFromPreset(new PresetAAIGetPortMirroringSourcePorts(configurationId, portInterfaceId, "i'm a port", isMirrored), APPEND); + SimulatorApi.registerExpectationFromPreset(new PresetAAIGetPortMirroringSourcePorts(configurationId, portInterfaceId, ViewEdit.COMMON_PORT_MIRRORING_PORT_NAME, isMirrored), APPEND); + SimulatorApi.registerExpectationFromPreset(new PresetAAICloudRegionAndSourceFromConfigurationPut(configurationId2, desiredCloudRegionId), APPEND); + SimulatorApi.registerExpectationFromPreset(new PresetAAIGetPortMirroringSourcePorts(configurationId2, portInterfaceId, "i'm not your port", isMirrored), APPEND); SimulatorApi.registerExpectationFromPreset(PresetAAIGetCloudOwnersByCloudRegionId.PRESET_MDT1_TO_ATT_NC, APPEND); SimulatorApi.registerExpectation( new String [] { @@ -284,7 +267,7 @@ public class BulkRegistration { SimulatorApi.registerExpectationFromPresets(ImmutableList.of( createInstancePreset, cloudOwnerPreset, - new PresetMSOOrchestrationRequestGet(PresetMSOOrchestrationRequestGet.COMPLETE, createInstancePreset.getRequestId(), "Success")), + new PresetMSOOrchestrationRequestGet(COMPLETE, createInstancePreset.getRequestId(), "Success", false)), SimulatorApi.RegistrationStrategy.APPEND); } @@ -423,7 +406,11 @@ public class BulkRegistration { new PresetMSOCreateVfModule("3f93c7cb-2fd0-4557-9514-e189b7b04f9d", "c015cc0f-0f37-4488-aabf-53795fd93cd3", ATT_NC, vfModuleName, "7a6ee536-f052-46fa-aa7e-2fca9d674c44", "e49fbd11-e60c-4a8e-b4bf-30fbe8f4fcc0", "ComplexService"), - new PresetMSOOrchestrationRequestGet("COMPLETE","c0011670-0e1a-4b74-945d-8bf5aede1d9c",Constants.ViewEdit.VF_MODULE_CREATED_SUCCESSFULLY_TEXT)), + new PresetMSOOrchestrationRequestGet( + COMPLETE, + "c0011670-0e1a-4b74-945d-8bf5aede1d9c", + Constants.ViewEdit.VF_MODULE_CREATED_SUCCESSFULLY_TEXT, + false)), SimulatorApi.RegistrationStrategy.APPEND); } @@ -434,7 +421,11 @@ public class BulkRegistration { new PresetAAIGetTenants(), PresetAAIGetCloudOwnersByCloudRegionId.PRESET_MDT1_TO_ATT_NC, new PresetMSOCreateVfModule(serviceInstanceId,vnfInstanceId, ATT_NC), - new PresetMSOOrchestrationRequestGet("COMPLETE","c0011670-0e1a-4b74-945d-8bf5aede1d9c",Constants.ViewEdit.VF_MODULE_CREATED_SUCCESSFULLY_TEXT)), + new PresetMSOOrchestrationRequestGet( + COMPLETE, + "c0011670-0e1a-4b74-945d-8bf5aede1d9c", + Constants.ViewEdit.VF_MODULE_CREATED_SUCCESSFULLY_TEXT, + false)), SimulatorApi.RegistrationStrategy.APPEND); } diff --git a/vid-automation/src/main/java/vid/automation/test/services/SimulatorApi.java b/vid-automation/src/main/java/vid/automation/test/services/SimulatorApi.java index 65ef3679c..087449624 100644 --- a/vid-automation/src/main/java/vid/automation/test/services/SimulatorApi.java +++ b/vid-automation/src/main/java/vid/automation/test/services/SimulatorApi.java @@ -1,26 +1,8 @@ package vid.automation.test.services; -import static org.testng.Assert.assertEquals; -import static vid.automation.test.services.DropTestApiField.dropFieldCloudOwnerFromString; -import static vid.automation.test.services.DropTestApiField.dropTestApiFieldFromString; - import com.fasterxml.jackson.databind.DeserializationFeature; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import java.net.URI; -import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.function.Function; -import java.util.function.UnaryOperator; -import java.util.stream.Collectors; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.GenericType; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; import org.glassfish.jersey.client.ClientProperties; import org.glassfish.jersey.jackson.internal.jackson.jaxrs.json.JacksonJaxbJsonProvider; import org.glassfish.jersey.jackson.internal.jackson.jaxrs.json.JacksonJsonProvider; @@ -32,6 +14,25 @@ import org.slf4j.LoggerFactory; import org.springframework.http.HttpStatus; import vid.automation.test.utils.ReadFile; +import javax.ws.rs.client.Client; +import javax.ws.rs.client.ClientBuilder; +import javax.ws.rs.client.Entity; +import javax.ws.rs.client.WebTarget; +import javax.ws.rs.core.GenericType; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; +import java.net.URI; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.function.UnaryOperator; +import java.util.stream.Collectors; + +import static org.testng.Assert.assertEquals; +import static vid.automation.test.services.DropTestApiField.dropFieldCloudOwnerFromString; +import static vid.automation.test.services.DropTestApiField.dropTestApiFieldFromString; + public class SimulatorApi { public enum RegistrationStrategy { @@ -62,7 +63,7 @@ public class SimulatorApi { ImmutableList.of(dropTestApiFieldFromString(), dropFieldCloudOwnerFromString()); static { - String host = System.getProperty("VID_HOST", "10.0.0.10" ); + String host = System.getProperty("VID_HOST", "127.0.0.1" ); Integer port = Integer.valueOf(System.getProperty("SIM_PORT", System.getProperty("VID_PORT", "8080"))); //port for registration uri = new JerseyUriBuilder().host(host).port(port).scheme("http").path("vidSimulator").build(); client = ClientBuilder.newClient(); @@ -116,6 +117,12 @@ public class SimulatorApi { registerToSimulatorAndAssertSuccess(preset.getClass().getCanonicalName(), content, registrationStrategy); } + public static void registerExpectationFromPresetsCollections(Collection<Collection<BasePreset>> presets, RegistrationStrategy registrationStrategy) { + registerExpectationFromPresets(presets.stream() + .flatMap(Collection::stream) + .collect(Collectors.toList()), registrationStrategy); + } + public static void registerExpectationFromPresets(Collection<BasePreset> presets, RegistrationStrategy registrationStrategy) { if (registrationStrategy == RegistrationStrategy.CLEAR_THEN_SET) { clearRegistrations(); diff --git a/vid-automation/src/main/java/vid/automation/test/services/UsersService.java b/vid-automation/src/main/java/vid/automation/test/services/UsersService.java index aae7917f7..84345ebd1 100644 --- a/vid-automation/src/main/java/vid/automation/test/services/UsersService.java +++ b/vid-automation/src/main/java/vid/automation/test/services/UsersService.java @@ -1,10 +1,13 @@ package vid.automation.test.services; -import static org.hamcrest.CoreMatchers.everyItem; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.greaterThan; - +//import com.automation.common.report_portal_integration.annotations.Step; import com.google.common.primitives.Ints; +import org.apache.commons.lang3.StringUtils; +import vid.automation.test.model.User; +import vid.automation.test.model.UsersObject; +import vid.automation.test.utils.DB_CONFIG; +import vid.automation.test.utils.ReadFile; + import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; @@ -13,11 +16,10 @@ import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.ListIterator; -import org.apache.commons.lang3.StringUtils; -import vid.automation.test.model.User; -import vid.automation.test.model.UsersObject; -import vid.automation.test.utils.DB_CONFIG; -import vid.automation.test.utils.ReadFile; + +import static org.hamcrest.CoreMatchers.everyItem; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.greaterThan; /** * Created by itzikliderman on 08/09/2017. @@ -36,6 +38,7 @@ public class UsersService { return usersObject.users; } + //@Step("${method} with id: ${userId}") public User getUser(String userId) { User res = users.get(userId); System.out.println("getUser userId='" + userId + "' returned: " + res); @@ -52,7 +55,7 @@ public class UsersService { /* Creates a user in the DB, were: - Login user name is a deterministic number, hashed from the userId string, with 3 trailing zeroes, - and two leading letters from the userId itself; e.g. "mo26063000" for emanuel. + and two leading letters from the userId itself; e.g. "em97331000" for emanuel. - Login user name == user password - 'user.credentials.userId' and 'user.credentials.password' input fields are overridden with the generated values. - Roles are "read" (roleId==16) and all other roles in object (like subscriberName___serviceType___tenant). @@ -79,7 +82,6 @@ public class UsersService { "VALUES (" + userNumber + ", '" + user.credentials.userId + "', '" + userId + "', '" + user.credentials.userId + "', '" + user.credentials.password + "')"); List<String> roles = user.roles != null ? user.roles : new LinkedList<>(); - roles.add("Standard User"); ListIterator<String> iter = roles.listIterator(); while (iter.hasNext()) { diff --git a/vid-automation/src/main/java/vid/automation/test/test/ALaCarteflowTest.java b/vid-automation/src/main/java/vid/automation/test/test/ALaCarteflowTest.java index 69c619b2a..63fe15000 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/ALaCarteflowTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/ALaCarteflowTest.java @@ -1,33 +1,21 @@ package vid.automation.test.test; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.ATT_NC; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.MDT_1; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_MDT1_TO_ATT_NC; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_SOME_LEGACY_REGION_TO_ATT_AIC; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.SOME_LEGACY_REGION; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; - import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; import org.junit.Assert; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.BasePresets.BaseMSOPreset; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateVfModuleOldViewEdit; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateVnfALaCarteOldViewEdit; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateVolumeGroupOldViewEdit; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import org.testng.annotations.BeforeClass; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import vid.automation.test.Constants; import vid.automation.test.infra.Get; -import vid.automation.test.infra.SelectOption; import vid.automation.test.model.ServiceModel; import vid.automation.test.model.User; import vid.automation.test.sections.SideMenu; @@ -36,6 +24,12 @@ import vid.automation.test.sections.ViewEditPage; import vid.automation.test.services.ServicesService; import vid.automation.test.services.SimulatorApi; +import java.util.List; +import java.util.stream.Collectors; + +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.*; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; + public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { static final String SUBSCRIBER = "Emanuel"; @@ -49,7 +43,7 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { public static final String STATUS_MESSAGE = "status_message"; public static final String REQUEST_TYPE = "REQUEST-TYPE"; public static final String CREATE = "Create"; - public static final String AAIAIC_25 = "JANET25"; + public static final String AAIAIC_25 = "AAIAIC25"; public static final String AIC = "AIC"; public static final String TENANT = "092eb9e8e4b7412e8787dd091bc58e86"; public static final String FALSE = "false"; @@ -100,7 +94,7 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { GeneralUIUtils.ultimateWait(); goToInstance(); ServiceModel serviceInstance = new ServicesService().getServiceModel(MODEL_UUID); - addVFModule("Vsp1710pid298109Vmmsc..mmsc_mod1_ltm..module-8", vfModuleName, AAIAIC_25, AIC, + addVFModule("Vsp1710pid298109Vwinifred..mmsc_mod1_ltm..module-8", vfModuleName, AAIAIC_25, AIC, TENANT, FALSE, MDT_1, getCurrentUser().tenants, serviceInstance); }); @@ -145,7 +139,7 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { goToInstance(); ServiceModel serviceInstance = new ServicesService().getServiceModel(MODEL_UUID); addVNF(NODE_INSTANCE, AAIAIC_25, AIC, TENANT, - FALSE, SOME_LEGACY_REGION, "ebc3bc3d-62fd-4a3f-a037-f619df4ff034", "platform", getCurrentUser().tenants, new ArrayList<>(Arrays.asList("ONAP")), serviceInstance, instanceName); + FALSE, SOME_LEGACY_REGION, "ebc3bc3d-62fd-4a3f-a037-f619df4ff034", "platform", getCurrentUser().tenants, "ONAP", serviceInstance, instanceName); }); } @@ -171,7 +165,6 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { openAndFillVnfPopup(NODE_INSTANCE, AAIAIC_25, AIC, TENANT, FALSE, SOME_LEGACY_REGION, "ebc3bc3d-62fd-4a3f-a037-f619df4ff034", "platform", getCurrentUser().tenants, null, null, instanceName); assertConfirmShowMissingDataErrorOnCurrentPopup(Constants.ViewEdit.LINE_OF_BUSINESS_TEXT); - successConfirmVnfAndClosePopup(); }); } @@ -182,11 +175,11 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { ViewEditPage viewEditPage = new ViewEditPage(); viewEditPage.selectNodeInstanceToAdd(NODE_INSTANCE); GeneralUIUtils.ultimateWait(); - SelectOption.selectOptionsFromMultiselectById(Constants.OwningEntity.LOB_SELECT_TEST_ID, new ArrayList<>(Arrays.asList(lobToSelect))); + viewEditPage.selectLineOfBusiness(lobToSelect); viewEditPage.clickCancelButtonByTestID(); viewEditPage.selectNodeInstanceToAdd(NODE_INSTANCE); GeneralUIUtils.ultimateWait(); - AssertUnselectedOptionInMultiselectById(Constants.OwningEntity.LOB_SELECT_TEST_ID, lobToSelect); + viewEditPage.selectLineOfBusiness(lobToSelect); viewEditPage.clickCancelButtonByTestID(); } @@ -212,7 +205,7 @@ public class ALaCarteflowTest extends CreateInstanceDialogBaseTest { GeneralUIUtils.ultimateWait(); goToInstance(); ServiceModel serviceInstance = new ServicesService().getServiceModel(MODEL_UUID); - addVolumeGroup("Vsp1710pid298109Vmmsc..mmsc_mod6_eca_oam..module-3", vgName, AAIAIC_25, AIC, TENANT, + addVolumeGroup("Vsp1710pid298109Vwinifred..mmsc_mod6_eca_oam..module-3", vgName, AAIAIC_25, AIC, TENANT, FALSE, SOME_LEGACY_REGION, getCurrentUser().tenants, serviceInstance); }); } diff --git a/vid-automation/src/main/java/vid/automation/test/test/AddNetworkTest.java b/vid-automation/src/main/java/vid/automation/test/test/AddNetworkTest.java index d53b5011a..a65d7bf9d 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/AddNetworkTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/AddNetworkTest.java @@ -1,13 +1,11 @@ package vid.automation.test.test; import com.google.common.collect.ImmutableList; -import java.util.HashMap; -import java.util.Map; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOBaseCreateInstancePost; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateNetworkALaCarteOldViewEdit; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.testng.annotations.Test; import vid.automation.test.Constants; import vid.automation.test.model.User; @@ -15,18 +13,41 @@ import vid.automation.test.sections.ViewEditPage; import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.SimulatorApi; +import java.util.HashMap; +import java.util.Map; + public class AddNetworkTest extends VidBaseTestCase { private ViewEditPage viewEditPage = new ViewEditPage(); private String serviceInstanceIdWithNetwork = "d198cc45-158b-480e-8d2c-03943c51268e"; + private User user = usersService.getUser(Constants.Users.EMANUEL_EMANUEL); + private String instanceName = viewEditPage.generateInstanceName(Constants.ViewEdit.NETWORK_INSTANCE_NAME_PREFIX); @Test public void testAddNetworkFullFlow() { - User user = usersService.getUser(Constants.Users.EMANUEL_EMANUEL); + String platform = "xxx1"; + this.goToNetworkPopup(platform); + Map<String, String> networkMetadata= getNetworkExpectedMetadata(); + addNetwork(networkMetadata,instanceName, "AIC30_CONTRAIL_BASIC 0", "One", "FUSION", "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb", platform, "zzz1","c630e297a3ae486497d63eacec1d7c14", + "false", "some legacy region",user.tenants); + } + + + @Test + public void testAddNetworkFullFlowWithoutPlatform() { + this.goToNetworkPopup(null); + Map<String, String> networkMetadata= getNetworkExpectedMetadata(); + addNetwork(networkMetadata,instanceName, "AIC30_CONTRAIL_BASIC 0", "One", "FUSION", "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",null, "zzz1","c630e297a3ae486497d63eacec1d7c14", + "false", "some legacy region",user.tenants); + } + + + private void goToNetworkPopup(String platform){ + SimulatorApi.clearAll(); BulkRegistration.genericSearchExistingServiceInstance(); BulkRegistration.addNetwork(); - String instanceName = viewEditPage.generateInstanceName(Constants.ViewEdit.NETWORK_INSTANCE_NAME_PREFIX); + SimulatorApi.registerExpectationFromPresets( ImmutableList.of( @@ -35,18 +56,17 @@ public class AddNetworkTest extends VidBaseTestCase { PresetMSOBaseCreateInstancePost.DEFAULT_REQUEST_ID, "d198cc45-158b-480e-8d2c-03943c51268e", "c187e9fe-40c3-4862-b73e-84ff056205f6", - instanceName + instanceName, + platform ), new PresetMSOOrchestrationRequestGet( PresetMSOOrchestrationRequestGet.COMPLETE, PresetMSOOrchestrationRequestGet.DEFAULT_REQUEST_ID, - "Success")), + "Success", + false)), SimulatorApi.RegistrationStrategy.APPEND); goToExistingInstanceById(serviceInstanceIdWithNetwork); - Map<String, String> networkMetadata= getNetworkExpectedMetadata(); - addNetwork(networkMetadata,instanceName, "AIC30_CONTRAIL_BASIC 0", "One", "FUSION", "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb","xxx1", "y1","c630e297a3ae486497d63eacec1d7c14", - "false", "some legacy region",user.tenants); } private Map<String, String> getNetworkExpectedMetadata() { diff --git a/vid-automation/src/main/java/vid/automation/test/test/BrowseASDCTest.java b/vid-automation/src/main/java/vid/automation/test/test/BrowseASDCTest.java index 2b5a09823..f082044fd 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/BrowseASDCTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/BrowseASDCTest.java @@ -1,26 +1,16 @@ package vid.automation.test.test; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertFalse; -import static vid.automation.test.infra.Features.FLAG_5G_IN_NEW_INSTANTIATION_UI; -import static vid.automation.test.infra.ModelInfo.aLaCarteForBrowseSdc; -import static vid.automation.test.infra.ModelInfo.aLaCarteServiceCreationTest; -import static vid.automation.test.infra.ModelInfo.instantiationTypeAlacarte_vidNotionsInstantiationUIByUUID; -import static vid.automation.test.infra.ModelInfo.macroForBrowseSdc; - import com.google.common.collect.ImmutableList; -import java.util.List; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.hamcrest.Matchers; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.BasePresets.BasePreset; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetServicesGet; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIServiceDesignAndCreationPut; import org.onap.simulator.presetGenerator.presets.ecompportal_att.PresetGetSessionSlotCheckIntervalGet; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.testng.Assert; @@ -29,23 +19,22 @@ import org.testng.annotations.BeforeMethod; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.Exists; -import vid.automation.test.infra.FeatureTogglingTest; -import vid.automation.test.infra.Features; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.ModelInfo; -import vid.automation.test.infra.SelectOption; +import vid.automation.test.infra.*; import vid.automation.test.model.Service; import vid.automation.test.model.User; -import vid.automation.test.sections.BrowseASDCPage; -import vid.automation.test.sections.DeployMacroDialogBase; -import vid.automation.test.sections.DeployMacroDialogOld; -import vid.automation.test.sections.SideMenu; -import vid.automation.test.sections.ViewEditPage; +import vid.automation.test.sections.*; import vid.automation.test.services.ServicesService; import vid.automation.test.services.SimulatorApi; +import java.util.List; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertFalse; +import static vid.automation.test.infra.Features.FLAG_1908_TRANSPORT_SERVICE_NEW_INSTANTIATION_UI; +import static vid.automation.test.infra.Features.FLAG_5G_IN_NEW_INSTANTIATION_UI; +import static vid.automation.test.infra.ModelInfo.*; + public class BrowseASDCTest extends CreateInstanceDialogBaseTest { private final String invariantUUIDAlacarte = aLaCarteForBrowseSdc.modelInvariantId; @@ -193,7 +182,8 @@ public class BrowseASDCTest extends CreateInstanceDialogBaseTest { } @Test - private void browseServiceModel_deployServiceMacroWithCR_creationPopupIsOldMacro() throws Exception { + @FeatureTogglingTest(flagActive = false, value = FLAG_1908_TRANSPORT_SERVICE_NEW_INSTANTIATION_UI) + public void browseServiceModel_deployServiceMacroWithCR_creationPopupIsOldMacro() throws Exception { deployServiceAndAssertInstantiationType( "csar15782222_instantiationTypeMacroWithCR.zip", invariantUUIDMacro, @@ -204,7 +194,7 @@ public class BrowseASDCTest extends CreateInstanceDialogBaseTest { @Test private void browseServiceModel_deployServiceMacroWithNetwork_creationPopupIsMacroByFF() throws Exception { - String macroInstantiationAccordingFF = Features.FLAG_ASYNC_INSTANTIATION.isActive() && Features.FLAG_NETWORK_TO_ASYNC_INSTANTIATION.isActive() ? instantiationTypeNameMacro : oldMacro; + String macroInstantiationAccordingFF = Features.FLAG_NETWORK_TO_ASYNC_INSTANTIATION.isActive() ? instantiationTypeNameMacro : oldMacro; deployServiceAndAssertInstantiationType( "csar15782222_instantiationTypeMacroWithNetwork.zip", invariantUUIDMacro, @@ -406,7 +396,7 @@ public class BrowseASDCTest extends CreateInstanceDialogBaseTest { viewEditPage.selectNodeInstanceToAdd("VID-RODERICK-05-15-17 0"); viewEditPage.generateAndSetInstanceName(Constants.ViewEdit.VNF_INSTANCE_NAME_PREFIX); viewEditPage.selectProductFamily("a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"); - viewEditPage.selectLcpRegion("JANET25", "AIC"); + viewEditPage.selectLcpRegion("AAIAIC25", "AIC"); viewEditPage.selectTenant("092eb9e8e4b7412e8787dd091bc58e86"); viewEditPage.setLegacyRegion("llkjhlkjhlkjh"); diff --git a/vid-automation/src/main/java/vid/automation/test/test/ChangeManagementTest.java b/vid-automation/src/main/java/vid/automation/test/test/ChangeManagementTest.java index 179eb968c..2f5489f31 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/ChangeManagementTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/ChangeManagementTest.java @@ -1,54 +1,42 @@ package vid.automation.test.test; -import static org.hamcrest.CoreMatchers.containsString; -import static org.hamcrest.CoreMatchers.everyItem; -import static org.hamcrest.CoreMatchers.hasItem; -import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.CoreMatchers.notNullValue; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.greaterThan; -import static org.hamcrest.collection.IsEmptyCollection.empty; -import static org.hamcrest.core.IsNot.not; - import com.google.common.collect.ImmutableMap; import com.google.common.primitives.Ints; -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; import org.json.JSONException; import org.junit.Assert; +import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.WebElement; import org.openqa.selenium.remote.RemoteWebElement; import org.openqa.selenium.support.ui.Select; import org.skyscreamer.jsonassert.JSONAssert; import org.skyscreamer.jsonassert.JSONCompareMode; -import org.testng.annotations.AfterClass; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeClass; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; +import org.testng.annotations.*; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.Exists; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Input; -import vid.automation.test.infra.SelectOption; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.*; import vid.automation.test.model.User; import vid.automation.test.sections.ChangeManagementPage; import vid.automation.test.services.SimulatorApi; import vid.automation.test.utils.DB_CONFIG; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import static org.hamcrest.CoreMatchers.*; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.greaterThan; +import static org.hamcrest.collection.IsEmptyCollection.empty; +import static org.hamcrest.core.IsNot.not; + public class ChangeManagementTest extends VidBaseTestCase { public static final String SCHEDULED_ID = "0b87fe60-50b0-4bac-a0a7-49e951b0ba9e"; diff --git a/vid-automation/src/main/java/vid/automation/test/test/CreateInstanceDialogBaseTest.java b/vid-automation/src/main/java/vid/automation/test/test/CreateInstanceDialogBaseTest.java index 0837f79ca..df3b41d06 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/CreateInstanceDialogBaseTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/CreateInstanceDialogBaseTest.java @@ -108,7 +108,7 @@ public class CreateInstanceDialogBaseTest extends VidBaseTestCase { } protected void addVNF(String name, String lcpRegion, String cloudOwner, String tenant, String suppressRollback, - String legacyRegion, String productFamily, String platform, ArrayList<String> permittedTenants, List<String> lobs, ServiceModel serviceModel, String instanceName) { + String legacyRegion, String productFamily, String platform, ArrayList<String> permittedTenants, String lobs, ServiceModel serviceModel, String instanceName) { openAndFillVnfPopup(name, lcpRegion, cloudOwner, tenant, suppressRollback, legacyRegion, productFamily, platform,permittedTenants, lobs, serviceModel, instanceName); viewEditPage.clickConfirmButton(); successConfirmVnfAndClosePopup(); @@ -116,7 +116,7 @@ public class CreateInstanceDialogBaseTest extends VidBaseTestCase { } protected void openAndFillVnfPopup(String name, String lcpRegion, String cloudOwner, String tenant, String suppressRollback, - String legacyRegion, String productFamily, String platform, ArrayList<String> permittedTenants, List<String> lobs, ServiceModel serviceModel, String instanceName) { + String legacyRegion, String productFamily, String platform, ArrayList<String> permittedTenants, String lobs, ServiceModel serviceModel, String instanceName) { viewEditPage.selectNodeInstanceToAdd(name); GeneralUIUtils.ultimateWait(); if(serviceModel != null) { @@ -130,7 +130,7 @@ public class CreateInstanceDialogBaseTest extends VidBaseTestCase { Click.onFirstSelectOptionById(Constants.OwningEntity.PLATFORM_SELECT_TEST_ID); } if(lobs != null) { - SelectOption.selectOptionsFromMultiselectById(Constants.OwningEntity.LOB_SELECT_TEST_ID, lobs); + viewEditPage.selectLineOfBusiness(lobs); } fillDetailsInDialog(instanceName, lcpRegion, cloudOwner, tenant, suppressRollback, legacyRegion, permittedTenants); } @@ -144,7 +144,7 @@ public class CreateInstanceDialogBaseTest extends VidBaseTestCase { protected void assertConfirmShowMissingDataErrorOnCurrentPopup(String field) { viewEditPage.clickConfirmButton(); boolean byclassAndText = Exists.byClassAndText(Constants.ViewEdit.ERROR_CLASS, String.format(Constants.MISSING_DATA, field)); - Assert.assertFalse(field + " " + Constants.REQUIRED, byclassAndText); + Assert.assertTrue(field + " " + Constants.REQUIRED, byclassAndText); } protected void cancelPopup() { diff --git a/vid-automation/src/main/java/vid/automation/test/test/CreateNewInstanceTest.java b/vid-automation/src/main/java/vid/automation/test/test/CreateNewInstanceTest.java index bb13514bf..b57d18789 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/CreateNewInstanceTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/CreateNewInstanceTest.java @@ -1,7 +1,5 @@ package vid.automation.test.test; -import java.io.IOException; -import java.util.List; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import org.testng.Assert; @@ -18,6 +16,9 @@ import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.ServicesService; import vid.automation.test.services.SimulatorApi; +import java.io.IOException; +import java.util.List; + public class CreateNewInstanceTest extends CreateInstanceDialogBaseTest { private ServicesService servicesService = new ServicesService(); diff --git a/vid-automation/src/main/java/vid/automation/test/test/CreatePortMirroringConfigurationTest.java b/vid-automation/src/main/java/vid/automation/test/test/CreatePortMirroringConfigurationTest.java index 89e28d7a6..835aacd3e 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/CreatePortMirroringConfigurationTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/CreatePortMirroringConfigurationTest.java @@ -1,8 +1,6 @@ package vid.automation.test.test; import com.google.common.collect.ImmutableMap; -import java.util.HashMap; -import java.util.Map; import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; @@ -18,6 +16,9 @@ import vid.automation.test.sections.ViewEditPage; import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.SimulatorApi; +import java.util.HashMap; +import java.util.Map; + public class CreatePortMirroringConfigurationTest extends VidBaseTestCase { private ViewEditPage viewEditPage = new ViewEditPage(); @@ -311,7 +312,7 @@ public class CreatePortMirroringConfigurationTest extends VidBaseTestCase { createConfigurationPage.assertButtonState(Constants.ConfigurationCreation.TENANT_DROPDOWN_TEST_ID,false); //WebElement tenantDDL= Get.byTestId(Constants.ConfigurationCreation.TENANT_DROPDOWN_TEST_ID); - createConfigurationPage.chooseRegion("JANET25"); + createConfigurationPage.chooseRegion("AAIAIC25"); GeneralUIUtils.ultimateWait(); // Wait.waitByTestId(Constants.ConfigurationCreation.TENANT_DROPDOWN_TEST_ID, 30); createConfigurationPage.chooseTenant("USP-SIP-IC-24335-T-01"); @@ -319,7 +320,7 @@ public class CreatePortMirroringConfigurationTest extends VidBaseTestCase { } private void assertFormFields() { Assert.assertEquals("dummy_instance",createConfigurationPage.getInstanceName()); - Assert.assertEquals("JANET25", createConfigurationPage.getRegion()); + Assert.assertEquals("AAIAIC25", createConfigurationPage.getRegion()); Assert.assertEquals("USP-SIP-IC-24335-T-01",createConfigurationPage.getTenant()); createConfigurationPage.assertButtonState(Constants.ConfigurationCreation.NEXT_BUTTON_TEST_ID,true); diff --git a/vid-automation/src/main/java/vid/automation/test/test/DeleteResumeTest.java b/vid-automation/src/main/java/vid/automation/test/test/DeleteResumeTest.java index 55ab567dc..a334646cc 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/DeleteResumeTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/DeleteResumeTest.java @@ -16,7 +16,7 @@ public class DeleteResumeTest extends CreateInstanceDialogBaseTest { SimulatorApi.clearAll(); BulkRegistration.resumeVfModule(serviceInstanceId,vnfInstanceId); navigateToViewEditPageOfuspVoiceVidTest444("240376de-870e-48df-915a-31f140eedd2c"); - resumeVFModule("aa","JANET25", "AIC", "092eb9e8e4b7412e8787dd091bc58e86","mdt1",user.tenants); + resumeVFModule("aa","AAIAIC25", "AIC", "092eb9e8e4b7412e8787dd091bc58e86","mdt1",user.tenants); } }
\ No newline at end of file diff --git a/vid-automation/src/main/java/vid/automation/test/test/DrawingBoardTest.java b/vid-automation/src/main/java/vid/automation/test/test/DrawingBoardTest.java index bacd83155..fa7181c89 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/DrawingBoardTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/DrawingBoardTest.java @@ -1,43 +1,27 @@ package vid.automation.test.test; -import static org.testng.AssertJUnit.assertFalse; -import static vid.automation.test.Constants.DrawingBoard.AVAILABLE_MODELS_TREE; -import static vid.automation.test.Constants.DrawingBoard.BACK_BUTTON; -import static vid.automation.test.Constants.DrawingBoard.CONTEXT_MENU_BUTTON_HEADER; -import static vid.automation.test.Constants.DrawingBoard.CONTEXT_MENU_HEADER_EDIT_ITEM; -import static vid.automation.test.Constants.DrawingBoard.DEFAULT_SERVICE_NAME; -import static vid.automation.test.Constants.DrawingBoard.DRAWING_BOARD_TREE; -import static vid.automation.test.Constants.DrawingBoard.SEARCH_LEFT_TREE; -import static vid.automation.test.Constants.DrawingBoard.SERVICE_QUANTITY; -import static vid.automation.test.infra.Features.FLAG_ASYNC_INSTANTIATION; -import static vid.automation.test.infra.ModelInfo.macroDrawingBoardComplexService; -import static vid.automation.test.infra.ModelInfo.macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails; - import com.google.common.collect.ImmutableList; +import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2; import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2; import org.openqa.selenium.WebDriver; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.Exists; -import vid.automation.test.infra.FeatureTogglingTest; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Input; -import vid.automation.test.infra.ModelInfo; -import vid.automation.test.infra.SelectOption; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.*; import vid.automation.test.model.User; import vid.automation.test.sections.BrowseASDCPage; import vid.automation.test.sections.DrawingBoardPage; import vid.automation.test.sections.VidBasePage; -@FeatureTogglingTest(FLAG_ASYNC_INSTANTIATION) +import static org.testng.AssertJUnit.assertFalse; +import static vid.automation.test.Constants.DrawingBoard.*; +import static vid.automation.test.infra.ModelInfo.macroDrawingBoardComplexService; +import static vid.automation.test.infra.ModelInfo.macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails; + public class DrawingBoardTest extends VidBaseTestCase { private DrawingBoardPage drawingBoardPage = new DrawingBoardPage(); diff --git a/vid-automation/src/main/java/vid/automation/test/test/EnvironmentsTest.java b/vid-automation/src/main/java/vid/automation/test/test/EnvironmentsTest.java index f21a76d83..03378b615 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/EnvironmentsTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/EnvironmentsTest.java @@ -5,7 +5,6 @@ import org.junit.Assert; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import org.springframework.http.HttpStatus; -import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeMethod; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; @@ -71,7 +70,7 @@ public class EnvironmentsTest extends VidBaseTestCase { GET_STATUS_FAILURE } - @BeforeClass + @BeforeMethod //Sometimes we clear registration while we are in view/edit page //And there is alert so we can not navigate any more. //So we first navigate to welcome page, and only the, clear registration @@ -200,6 +199,10 @@ public class EnvironmentsTest extends VidBaseTestCase { String environmentTypeDefault = Get.selectedOptionText(Constants.TestEnvironments.ENVIRONMENT_TYPE_DROP_DOWN); Assert.assertEquals(environment.operationalEnvironmentType, environmentTypeDefault); + if (Features.FLAG_1908_RELEASE_TENANT_ISOLATION.isActive()) { + SelectOption.byTestIdAndVisibleText(environment.release, Constants.TestEnvironments.ENVIRONMENT_RELEASE); + environment.workloadContext = environment.workloadContext.concat("_" + environment.release); + } SelectOption.byTestIdAndVisibleText(environment.workloadContext, Constants.TestEnvironments.WORKLOAD_CONTEXT_DROP_DOWN); WebElement submitButton = Get.byTestId(Constants.TestEnvironments.SUBMIT_BUTTON); @@ -212,14 +215,14 @@ public class EnvironmentsTest extends VidBaseTestCase { GeneralUIUtils.ultimateWait(); // refresh table - Map <String, List<String>> file = ReadFile.getJsonFile(ENVIRONMENTS_CONF, Map.class); + Map <String, List<List<String>>> file = ReadFile.getJsonFile(ENVIRONMENTS_CONF, Map.class); String tableId = Constants.TestEnvironments.ENVIRONMENTS_TABLE; SimulatorApi.registerExpectation(GET_FULL_OPERATIONAL_ENVIRONMENT_JSON, ImmutableMap.of("new_name", environment.operationalEnvironmentName, "new_tenant", environment.tenantContext, "new_ecomp_id", environment.EcompEnvironmentId, "new_ecomp_name", environment.EcompEnvironmentName, "new_workload_context", environment.workloadContext), SimulatorApi.RegistrationStrategy.APPEND); Click.byTestId(REFRESH_BUTTON); Wait.angularHttpRequestsLoaded(); List<List<String>> body = Get.tableBodyValuesByTestId(tableId); - Assert.assertEquals(file.get(Constants.TestEnvironments.FULL_LIST), body); + Assert.assertEquals(file.get(fullListId()), body); GeneralUIUtils.ultimateWait(); } @@ -277,7 +280,7 @@ public class EnvironmentsTest extends VidBaseTestCase { Click.byId(Constants.generalSubmitButtonId); SimulatorApi.registerExpectation("environment/activate/get_operational_environments_aai1.json", - ImmutableMap.of("Deactivate", "Activate"), SimulatorApi.RegistrationStrategy.APPEND); + ImmutableMap.of("INACTIVE", "ACTIVE"), SimulatorApi.RegistrationStrategy.APPEND); boolean waitForTextResult = Wait.waitByClassAndText("status", Constants.TestEnvironments.environmentActivatedSuccesfullyMessage, 60); assertTrue(Constants.TestEnvironments.environmentActivatedSuccesfullyMessage + " message didn't appear on time", waitForTextResult); @@ -290,7 +293,7 @@ public class EnvironmentsTest extends VidBaseTestCase { assertTrue("Failed to find Deactivate button for test env with id: "+envId, deactivationButton.isDisplayed()); WebElement status = Get.byId(Constants.TestEnvironments.environmentStatusIdPrefix + envId); - assertEquals("Active", status.getText()); + assertEquals("ACTIVE", status.getText()); WebElement attachButton = TestEnvironmentPage.getTestEnvironmentAttachButton(envId); assertTrue("Failed to find Attach button for test env with id: "+envId, attachButton.isDisplayed()); @@ -321,7 +324,7 @@ public class EnvironmentsTest extends VidBaseTestCase { assertTrue("Failed to find Activate button for test env with id: "+envId, activationButton.isDisplayed()); WebElement status = Get.byId(Constants.TestEnvironments.environmentStatusIdPrefix + envId); - assertEquals("Inactive", status.getText()); + assertEquals("INACTIVE", status.getText()); WebElement attachButton = TestEnvironmentPage.getTestEnvironmentAttachButton(envId); assertFalse("attach button shouldn't be displayed for test env with id: "+envId, attachButton.isDisplayed()); @@ -500,5 +503,11 @@ public class EnvironmentsTest extends VidBaseTestCase { SideMenu.navigateToTestEnvironmentsPage(); } + private String fullListId() { + return Features.FLAG_1908_RELEASE_TENANT_ISOLATION.isActive() ? + Constants.TestEnvironments.FULL_LIST : Constants.TestEnvironments.FULL_LIST_WITHOUT_RELEASE_LABEL; + } + + } diff --git a/vid-automation/src/main/java/vid/automation/test/test/InstantiationStatusTest.java b/vid-automation/src/main/java/vid/automation/test/test/InstantiationStatusTest.java index a3480f8c2..4eb637a10 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/InstantiationStatusTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/InstantiationStatusTest.java @@ -1,39 +1,34 @@ package vid.automation.test.test; -import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.SERVICE_NAME; -import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.VNF_NAME; -import static org.testng.Assert.assertEquals; -import static org.testng.AssertJUnit.assertTrue; -import static vid.automation.test.Constants.DrawingBoard.DEPLOY_BUTTON; -import static vid.automation.test.infra.Features.FLAG_ASYNC_INSTANTIATION; - import com.google.common.collect.ImmutableMap; -import java.util.Collections; import org.junit.Assert; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames; import org.onap.vid.api.AsyncInstantiationBase; import org.onap.vid.api.CreateServiceWithFailedVnf; import org.onap.vid.api.TestUtils; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.FeatureTogglingTest; -import vid.automation.test.infra.Features; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.*; import vid.automation.test.sections.DrawingBoardPage; import vid.automation.test.sections.InstantiationStatusPage; import vid.automation.test.sections.SideMenu; import vid.automation.test.sections.VidBasePage; import vid.automation.test.services.AsyncJobsService; -@FeatureTogglingTest(FLAG_ASYNC_INSTANTIATION) +import java.util.Collections; + +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.SERVICE_NAME; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.VNF_NAME; +import static org.testng.Assert.assertEquals; +import static org.testng.AssertJUnit.assertTrue; +import static vid.automation.test.Constants.DrawingBoard.DEPLOY_BUTTON; + public class InstantiationStatusTest extends VidBaseTestCase { private final String serviceModelVersion = "5.1"; diff --git a/vid-automation/src/main/java/vid/automation/test/test/NewServiceInstanceTest.java b/vid-automation/src/main/java/vid/automation/test/test/NewServiceInstanceTest.java index 42749c15f..9b1956d30 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/NewServiceInstanceTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/NewServiceInstanceTest.java @@ -1,64 +1,19 @@ package vid.automation.test.test; -import static junit.framework.TestCase.assertNull; -import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic; -import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.CoreMatchers.startsWith; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_SOME_LEGACY_REGION_TO_ATT_AIC; -import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.COMPLETE; -import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.DEFAULT_SERVICE_INSTANCE_ID; -import static org.testng.Assert.assertEquals; -import static org.testng.AssertJUnit.assertTrue; -import static vid.automation.test.infra.Features.FLAG_1902_VNF_GROUPING; -import static vid.automation.test.infra.Features.FLAG_5G_IN_NEW_INSTANTIATION_UI; -import static vid.automation.test.infra.Features.FLAG_ASYNC_INSTANTIATION; -import static vid.automation.test.infra.ModelInfo.PASQUALEVmxVpeBvService488Annotations; -import static vid.automation.test.infra.ModelInfo.aLaCarteNetworkProvider5G; -import static vid.automation.test.infra.ModelInfo.aLaCarteVnfGroupingService; -import static vid.automation.test.infra.ModelInfo.macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails; -import static vid.automation.test.infra.ModelInfo.macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse; -import static vid.automation.test.infra.ModelInfo.macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse; -import static vid.automation.test.infra.ModelInfo.macroSriovWithDynamicFieldsEcompNamingTruePartialModelDetails; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; -import static vid.automation.test.services.SimulatorApi.registerExpectationFromPreset; -import static vid.automation.test.services.SimulatorApi.registerExpectationFromPresets; -import static vid.automation.test.test.ALaCarteflowTest.AIC; - +//import com.automation.common.report_portal_integration.annotations.Step; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Lists; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.UUID; -import java.util.stream.Collectors; import org.apache.commons.lang3.mutable.MutableInt; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.hamcrest.Matchers; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetTenants; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIPostNamedQueryForViewEdit; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOBaseCreateInstancePost; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateNetworkALaCarte5G; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceAlacarte5GServiceWithNetwork; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2WithNamesAlacarteGroupingService; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2WithNamesEcompNamingFalse; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestsGet5GServiceInstanceAndNetwork; +import org.onap.simulator.presetGenerator.presets.aai.*; +import org.onap.simulator.presetGenerator.presets.mso.*; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestsGet5GServiceInstanceAndNetwork.ResponseDetails; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.openqa.selenium.remote.RemoteWebElement; @@ -69,33 +24,44 @@ import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import vid.automation.test.Constants; import vid.automation.test.Constants.BrowseASDC.NewServicePopup; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.FeatureTogglingTest; -import vid.automation.test.infra.Features; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Input; -import vid.automation.test.infra.ModelInfo; -import vid.automation.test.infra.SelectOption; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.*; import vid.automation.test.model.Service; import vid.automation.test.model.User; -import vid.automation.test.sections.BrowseASDCPage; -import vid.automation.test.sections.DrawingBoardPage; -import vid.automation.test.sections.InstantiationStatusPage; -import vid.automation.test.sections.SideMenu; -import vid.automation.test.sections.VidBasePage; +import vid.automation.test.sections.*; import vid.automation.test.services.AsyncJobsService; import vid.automation.test.services.ServicesService; import vid.automation.test.services.SimulatorApi; +import vid.automation.test.test.NewServiceInstanceTest.ServiceData.IS_GENERATED_NAMING; import vid.automation.test.utils.ReadFile; -@FeatureTogglingTest(FLAG_ASYNC_INSTANTIATION) +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.stream.Collectors; + +import static junit.framework.TestCase.assertNull; +import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic; +import static org.hamcrest.CoreMatchers.startsWith; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsInAnyOrder; +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_SOME_LEGACY_REGION_TO_ATT_AIC; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.COMPLETE; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.DEFAULT_SERVICE_INSTANCE_ID; +import static org.testng.Assert.assertEquals; +import static org.testng.AssertJUnit.assertTrue; +import static vid.automation.test.infra.Features.*; +import static vid.automation.test.infra.ModelInfo.*; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; +import static vid.automation.test.services.SimulatorApi.registerExpectationFromPreset; +import static vid.automation.test.services.SimulatorApi.registerExpectationFromPresets; +import static vid.automation.test.test.ALaCarteflowTest.AIC; + public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { - private static final String COMPLETED = "COMPLETED"; + public static final String COMPLETED = "COMPLETED"; private static final String IN_PROGRESS = "IN_PROGRESS"; private static final String PENDING = "PENDING"; - private final String vfModule0Name = "2017488_PASQUALEvpe0..2017488PASQUALEVpe..PASQUALE_base_vPE_BV..module-0"; + private final String vfModule0Name = "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0"; private final String vfModule0UUID = "f8360508-3f17-4414-a2ed-6bc71161e8db"; private ServicesService servicesService = new ServicesService(); private DrawingBoardPage drawingBoardPage = new DrawingBoardPage(); @@ -215,13 +181,13 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails.modelVersionId, new ArrayList<>(), - false, true, true, true, + IS_GENERATED_NAMING.FALSE, true, true, true, "2017-488_PASQUALE-vPE 0", - "2017488_PASQUALEvpe0..2017488PASQUALEVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); + "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); prepareServicePreset(macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails, false); - final String serviceInstanceName = createSriovService(serviceData, true); + final String serviceInstanceName = createMacroService(serviceData, true); createVnf(serviceData, true, true, serviceInstanceName); createVfModule(serviceData, serviceInstanceName, false, false); @@ -261,19 +227,19 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse.modelVersionId, - Collections.singletonList("2017488 PASQUALEvpe0 asn:"), - false, false, true, false, + Collections.singletonList("2017488 pasqualevpe0 asn:"), + IS_GENERATED_NAMING.FALSE, false, true, false, "2017-488_PASQUALE-vPE 0", - "2017488_PASQUALEvpe0..2017488PASQUALEVpe..PASQUALE_vRE_BV..module-1", 0, 1, ImmutableList.of("Bandwidth", "Bandwidth units"), + "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", 0, 1, ImmutableList.of("Bandwidth", "Bandwidth units"), "25284168-24bb-4698-8cb4-3f509146eca5"); - // this is the instance-name that createSriovService is going to use + // this is the instance-name that createMacroService is going to use String serviceInstanceName = randomAlphabetic + "instancename"; doReduxStep(reduxStates, randomAlphabetic, startInStep, reduxForStep, i, mode, () -> { prepareServicePreset(macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse, false); - createSriovService(serviceData, false, randomAlphabetic); + createMacroService(serviceData, false, randomAlphabetic, true, 3); }); doReduxStep(reduxStates, randomAlphabetic, startInStep, reduxForStep, i, mode, () -> @@ -295,9 +261,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { doReduxStep(reduxStates, randomAlphabetic, startInStep, reduxForStep, i, mode, () -> { editVfModuleAndJustSetName(vfModule0Name, vfModule0UUID); - if (Features.FLAG_DUPLICATE_VNF.isActive()) { - duplicateVnf(serviceData.vnfData, 2); - } + duplicateVnf(serviceData.vnfData, 2); vidBasePage.screenshotDeployDialog(serviceInstanceName); }); @@ -305,8 +269,8 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { prepareServicePreset(macroSriovWithDynamicFieldsEcompNamingFalsePartialModelDetailsVnfEcompNamingFalse, true); - final String vfModuleName1 = "2017488PASQUALEVpe..PASQUALE_base_vPE_BV..module-0"; - final String vfModuleName2 = "2017488PASQUALEVpe..PASQUALE_vRE_BV..module-1"; + final String vfModuleName1 = "2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0"; + final String vfModuleName2 = "2017488PasqualeVpe..PASQUALE_vRE_BV..module-1"; final String request1 = PresetMSOBaseCreateInstancePost.DEFAULT_REQUEST_ID; final String request2 = "ce010256-3fdd-4cb5-aed7-37112a2c6e93"; final ImmutableMap<Keys, String> vars = ImmutableMap.<Keys, String>builder() @@ -333,6 +297,97 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { } @Test + @FeatureTogglingTest(FLAG_1908_INFRASTRUCTURE_VPN) + public void createNewServiceInstance_infraStructureVpn() { + String requestId = UUID.randomUUID().toString(); + String instanceId = UUID.randomUUID().toString(); + + prepareServicePreset(infrastructureVpnService, false); + + SimulatorApi.registerExpectationFromPresets(ImmutableList.of( + PresetAAIGetCloudOwnersByCloudRegionId.PRESET_MTN6_TO_ATT_AIC, + new PresetAAIGetL3NetworksByCloudRegionSpecificState("irma-aic", "hvf6", "AIN Web Tool-15-D-testalexandria"), + new PresetAAIGetVpnsByType() + ), APPEND); + + ServiceData serviceData = new ServiceData( + infrastructureVpnService.modelVersionId, + new ArrayList<>(), + IS_GENERATED_NAMING.TRUE_BUT_GIVE_NAME_EITHER_WAY, true, true, false, + null, + null, 0, 1, new ArrayList<>(), null); + final String serviceInstanceName = createMacroService(serviceData, false); + + SimulatorApi.registerExpectationFromPresets(ImmutableList.of( + PresetMsoCreateMacroCommonPre1806.ofServiceWithVRF(requestId, instanceId, serviceInstanceName), + new PresetMSOOrchestrationRequestGet(COMPLETE, requestId) + ), APPEND); + + // Wizard pages of Network and VPN + Click.byTestIdOnceItsAvailable("10a74149-c9d7-4918-bbcf-d5fb9b1799ce", 20); + Click.byTestId("setMembersBtn"); + GeneralUIUtils.ultimateWait(); + + Click.byTestIdOnceItsAvailable("120d39fb-3627-473d-913c-d228dd0f8e5b", 20); + Click.byTestId("setMembersBtn"); + GeneralUIUtils.ultimateWait(); + + Assert.assertEquals(Get.byTestId("node-type-indicator").getText(),"VRF"); + + drawingBoardPage.deploy(); + drawingBoardPage.verifyServiceCompletedOnTime(serviceInstanceName, "Service "+serviceInstanceName); + } + + @Test + @FeatureTogglingTest(FLAG_1908_COLLECTION_RESOURCE_NEW_INSTANTIATION_UI) + public void createNewServiceInstance_collectionResource() { + prepareServicePreset(collectionResourceService, false); + String requestId = UUID.randomUUID().toString(); + String instanceId = UUID.randomUUID().toString(); + + SimulatorApi.registerExpectationFromPresets(ImmutableList.of( + PresetAAIGetCloudOwnersByCloudRegionId.PRESET_MTN6_TO_ATT_AIC, + PresetMsoCreateMacroCommonPre1806.ofCollectionResource(requestId, instanceId), + new PresetMSOOrchestrationRequestGet(COMPLETE, requestId) + ), APPEND); + + ServiceData serviceData = new ServiceData( + collectionResourceService.modelVersionId, + new ArrayList<>(), + IS_GENERATED_NAMING.TRUE, true, true, false, + null, + null, 0, 1, new ArrayList<>(), null); + createMacroService(serviceData, false, randomAlphabetic(5), true, 1); + + drawingBoardPage.deploy(); + drawingBoardPage.verifyServiceCompletedOnTime("CR_sanity", "service with collection resource"); + } + + @Test + @FeatureTogglingTest(FLAG_1908_TRANSPORT_SERVICE_NEW_INSTANTIATION_UI) + public void createNewServiceInstance_transportService() { + prepareServicePreset(transportWithPnfsService, false); + String requestId = UUID.randomUUID().toString(); + String instanceId = UUID.randomUUID().toString(); + + SimulatorApi.registerExpectationFromPresets(ImmutableList.of( + PresetMsoCreateMacroCommonPre1806.ofTransportService(requestId, instanceId), + new PresetMSOOrchestrationRequestGet(COMPLETE, requestId) + ), APPEND); + + ServiceData serviceData = new ServiceData( + transportWithPnfsService.modelVersionId, + new ArrayList<>(), + IS_GENERATED_NAMING.TRUE, true, true, false, + null, + null, 0, 1, new ArrayList<>(), null); + createMacroService(serviceData, false, randomAlphabetic(5), false, 1); + + drawingBoardPage.deploy(); + drawingBoardPage.verifyServiceCompletedOnTime("AIM Transport SVC_ym161f", "transport service"); + } + + @Test @FeatureTogglingTest(FLAG_1902_VNF_GROUPING) public void createNewServiceInstance_aLaCarte_VnfGrouping() { @@ -341,7 +396,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( aLaCarteVnfGroupingService.modelVersionId, ImmutableList.of(), - false, false, true, false, + IS_GENERATED_NAMING.FALSE, false, true, false, null, null, 0, 1, ImmutableList.of(), null); prepareServicePreset(aLaCarteVnfGroupingService, false); @@ -360,7 +415,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { new PresetAAIPostNamedQueryForViewEdit(serviceInstanceId, serviceInstanceName, false, false) ), SimulatorApi.RegistrationStrategy.APPEND); - deploy(); + drawingBoardPage.deploy(); verifyModuleInPendingTable(serviceInstanceName, requestId, null, ImmutableSet.of(IN_PROGRESS), false, false); verifyModuleInPendingTable(serviceInstanceName, requestId, null, ImmutableSet.of(COMPLETED), false, true); InstantiationStatusPage.verifyOpenNewViewEdit(serviceInstanceName, serviceInstanceId, aLaCarteVnfGroupingService.modelVersionId, "TYLER SILVIA", "e433710f-9217-458d-a79d-1c7aff376d89", "EDIT"); @@ -379,20 +434,20 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { return; } else if (currentStep.getValue() == startInStep) { - setReduxState(reduxForStep); + vidBasePage.setReduxState(reduxForStep); vidBasePage.navigateTo("serviceModels.htm#/servicePlanning?serviceModelId=6b528779-44a3-4472-bdff-9cd15ec93450"); vidBasePage.goToIframe(); } - reduxStates.put(String.valueOf(currentStep), getReduxState()); + reduxStates.put(String.valueOf(currentStep), vidBasePage.getReduxState()); break; case "RUNTIME": default: // log current redux state, before invocation - reduxStates.put(String.valueOf(currentStep), getReduxState()); - logger.info("reduxGator runtime reduxState for step {}:\n{}", currentStep, getReduxState()); + reduxStates.put(String.valueOf(currentStep), vidBasePage.getReduxState()); + logger.info("reduxGator runtime reduxState for step {}:\n{}", currentStep, vidBasePage.getReduxState()); break; } @@ -403,7 +458,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { "Current step: " + currentStep, "Random alphabetic: " + randomAlphabetic, "Starting reduxState: " + reduxStates.get(String.valueOf(currentStep)), - "Current reduxState: " + getReduxState() + "Current reduxState: " + vidBasePage.getReduxState() ), e); } } finally { @@ -412,6 +467,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { } } + //@Step("duplicate vnf") private void duplicateVnf(VnfData vnfData, int count) { hoverAndClickDuplicateButton(extractNodeToEdit(vnfData)); vidBasePage.screenshotDeployDialog("duplicateVnf-" + vnfData.vnfName); @@ -425,6 +481,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { return String.join("", s).replace(" ", ""); } + //@Step("edit vf module and just set name") private void editVfModuleAndJustSetName(String vfModuleName, String vfModuleUUID) { if (Features.FLAG_SETTING_DEFAULTS_IN_DRAWING_BOARD.isActive()) { hoverAndClickEditButton(vfModuleUUID + "-" + vfModuleName); @@ -432,7 +489,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { drawingBoardPage.clickAddButtonByNodeName(vfModuleName); } Input.text("VF instance name ZERO", "instanceName"); - Click.byTestId("form-set"); + Click.byTestId(VNF_SET_BUTTON_TEST_ID); } @Test @@ -440,13 +497,13 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails.modelVersionId, new ArrayList<>(), - false, true, false, true, + IS_GENERATED_NAMING.FALSE, true, false, true, "2017-488_PASQUALE-vPE 0", vfModule0Name, 1, 1, new ArrayList<>(), vfModule0UUID); prepareServicePreset(macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetails, false); - final String serviceInstanceName = createSriovService(serviceData, true); + final String serviceInstanceName = createMacroService(serviceData, true); createVnf(serviceData, true, true, serviceInstanceName); createVfModule(serviceData, serviceInstanceName, true, false); @@ -457,13 +514,13 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse.modelVersionId, new ArrayList<>(), - false, false, false, false, + IS_GENERATED_NAMING.FALSE, false, false, false, "2017-488_PASQUALE-vPE 0", vfModule0Name, 1, 1, new ArrayList<>(), vfModule0UUID); prepareServicePreset(macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse, false); - final String serviceInstanceName = createSriovService(serviceData, true); + final String serviceInstanceName = createMacroService(serviceData, true); createVnf(serviceData, true, true, serviceInstanceName); createVfModule(serviceData, serviceInstanceName, true, false); @@ -474,13 +531,13 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { ServiceData serviceData = new ServiceData( macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse.modelVersionId, new ArrayList<>(), - false, false, true, false, + IS_GENERATED_NAMING.FALSE, false, true, false, "2017-488_PASQUALE-vPE 0", - "2017488_PASQUALEvpe0..2017488PASQUALEVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); + "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); prepareServicePreset(macroSriovNoDynamicFieldsEcompNamingFalseFullModelDetailsVnfEcompNamingFalse, false); - final String serviceInstanceName = createSriovService(serviceData, true); + final String serviceInstanceName = createMacroService(serviceData, true); createVnf(serviceData, true, true, serviceInstanceName); clickRemoveVfModule(vfModule0UUID, vfModule0Name); createVfModule(serviceData, serviceInstanceName, false, true); @@ -530,71 +587,47 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { browseASDCPage.goToIframe(); VnfData networkData = new VnfData("SR-IOV Provider-1", "840ffc47-e4cf-46de-8e23-525fd8c6fdc3", defactoNetworkInstanceName, false); createNetwork(networkData, false, false, serviceInstanceName); - drawingBoardPage.clickDeployButton(); - - VidBasePage.goOutFromIframe(); - GeneralUIUtils.ultimateWait(); - vidBasePage.goToIframe(); - GeneralUIUtils.ultimateWait(); - DrawingBoardPage.ServiceStatusChecker serviceStatusChecker = new DrawingBoardPage.ServiceStatusChecker(serviceInstanceName, Collections.singleton(COMPLETED)); - boolean statusIsShown = Wait.waitFor(serviceStatusChecker, null, 20, 2); - assertTrue("service "+serviceInstanceName+" wasnt completed after in time", statusIsShown); - - VidBasePage.goOutFromIframe(); + drawingBoardPage.deploy(); + drawingBoardPage.verifyServiceCompletedOnTime(serviceInstanceName, "service "+serviceInstanceName); } @Test public void createNewServiceInstance_macro_validPopupDataAndUI() { - List<String> serviceDynamicFields = Arrays.asList("2017488 PASQUALEvpe0 asn:"); + List<String> serviceDynamicFields = Arrays.asList("2017488 pasqualevpe0 asn:"); ServiceData serviceData = new ServiceData( macroSriovWithDynamicFieldsEcompNamingTruePartialModelDetails.modelVersionId, serviceDynamicFields, - true, true, true, false, + IS_GENERATED_NAMING.TRUE, true, true, false, "2017-488_PASQUALE-vPE 0", - "2017488_PASQUALEvpe0..2017488PASQUALEVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); + "2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_vRE_BV..module-1", 0, 1, new ArrayList<>(), "25284168-24bb-4698-8cb4-3f509146eca5"); prepareServicePreset(macroSriovWithDynamicFieldsEcompNamingTruePartialModelDetails, false); - final String serviceInstanceName = createSriovService(serviceData, true); + final String serviceInstanceName = createMacroService(serviceData, true); createVnf(serviceData, true, true, serviceInstanceName); clickRemoveVfModule(vfModule0UUID, vfModule0Name); createVfModule(serviceData, serviceInstanceName, false, false); } + //@Step("deploy and verify module in pending table") private void deployAndVerifyModuleInPendingTableMacro(String serviceInstanceName, String requestId1, String requestId2) { - deploy(); + drawingBoardPage.deploy(); boolean simulatorUpdated = false; int[] ids = {0, 0, 1, 2}; String[] statuses = {IN_PROGRESS, COMPLETED, IN_PROGRESS, PENDING}; for (int i = 0; i < ids.length; i++) { - String actualInstanceName = getActualInstanceName(serviceInstanceName, ids[i], statuses[i]); + String actualInstanceName = getActualInstanceName(serviceInstanceName, ids[i]); verifyModuleInPendingTable(actualInstanceName, requestId1, requestId2, ImmutableSet.of(statuses[i]), true, simulatorUpdated); simulatorUpdated = true; } vidBasePage.screenshotDeployDialog(serviceInstanceName); } - private void deploy() { - try { - logger.info("Redux state before deploy:"); - logger.info(getReduxState()); - } - catch (Exception e) { - //do nothing just logging - } - drawingBoardPage.clickDeployButton(); - - VidBasePage.goOutFromIframe(); - GeneralUIUtils.ultimateWait(); - vidBasePage.goToIframe(); - GeneralUIUtils.ultimateWait(); - } - private void verifyModuleInPendingTable(String serviceInstanceName, String requestId1, String requestId2, Set<String> expectedStatuses, boolean isMacro, boolean simulatorUpdated) { DrawingBoardPage.ServiceStatusChecker serviceStatusChecker = new DrawingBoardPage.ServiceStatusChecker(serviceInstanceName, expectedStatuses); boolean statusIsShown = Wait.waitFor(serviceStatusChecker, null, 20, 2); @@ -622,15 +655,16 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { vidBasePage.screenshotDeployDialog(serviceInstanceName); } - private String getActualInstanceName(String serviceInstanceName, Integer i, String status) { + private String getActualInstanceName(String serviceInstanceName, Integer i) { return i==0 ? serviceInstanceName : serviceInstanceName + "_00" + i; } + //@Step("verify open view edit") private void verifyOpenViewEdit(String serviceInstanceName) { boolean[] openEnabled = {true, false, false}; String[] statuses = {COMPLETED, IN_PROGRESS, PENDING}; ImmutableList.of(0, 1, 2).forEach(i -> { - String actualInstanceName = getActualInstanceName(serviceInstanceName, i, statuses[i]); + String actualInstanceName = getActualInstanceName(serviceInstanceName, i); if (Features.FLAG_1902_NEW_VIEW_EDIT.isActive()) { InstantiationStatusPage.verifyOpenNewViewEdit(actualInstanceName, openEnabled[i], "EDIT"); } @@ -640,11 +674,12 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { }); } + //@Step("verify open audit info") private void verifyOpenAuditInfo(String serviceInstanceName) { boolean auditInfoEnabled = true; String[] statuses = {COMPLETED, IN_PROGRESS, PENDING}; for (Integer i : ImmutableList.of(0, 1, 2)) { - String actualInstanceName = getActualInstanceName(serviceInstanceName, i, statuses[i]); + String actualInstanceName = getActualInstanceName(serviceInstanceName, i); InstantiationStatusPage.checkMenuItem(actualInstanceName, Constants.InstantiationStatus.CONTEXT_MENU_HEADER_AUDIT_INFO_ITEM, auditInfoEnabled, contextMenuOpen -> { Click.byTestId(contextMenuOpen); checkAuditInfoModal(actualInstanceName, i, statuses); @@ -672,8 +707,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { .collect(Collectors.toList()); List<String> serviceStatus = Arrays.asList(Arrays.copyOfRange(statuses, i, statuses.length)); - assertThat("statuses for " + actualInstanceName + " must be as expected", vidStatuses, is(Lists.reverse(serviceStatus))); - + assertThat("statuses for " + actualInstanceName + " must be as expected", vidStatuses, containsInAnyOrder(serviceStatus.toArray())); String dateString = vidTableElement.findElements(By.id("vidStatusTime")).get(0).getText(); assertTrue("vid Status Time column must contains valid date in format : MMM dd, yyyy HH:mm", isDateValid(dateString, "MMM dd, yyyy HH:mm")); @@ -710,12 +744,14 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { return true; } + //@Step("verifyDeleteJob") private void verifyDeleteJob(String serviceInstanceName) { boolean[] deleteEnabled = {false, false, true}; String[] statuses = {COMPLETED, IN_PROGRESS, PENDING}; verifyDeleteOrHideOperation(serviceInstanceName, Constants.InstantiationStatus.CONTEXT_MENU_REMOVE, statuses, deleteEnabled, "deleted"); } + //@Step("verify hide job") private void verifyHideJob(String serviceInstanceName) { boolean[] hideEnabled = {true, false}; String[] statuses = {COMPLETED, IN_PROGRESS}; @@ -724,7 +760,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { private void verifyDeleteOrHideOperation(String serviceInstanceName, String contextMenuItem, String[] statuses, boolean[] operationEnabled, String operationName) { for (int i = 0; i < statuses.length; i++) { - String actualInstanceName = getActualInstanceName(serviceInstanceName, i, statuses[i]); + String actualInstanceName = getActualInstanceName(serviceInstanceName, i); InstantiationStatusPage.checkMenuItem(actualInstanceName, contextMenuItem, operationEnabled[i], contextMenuDelete -> { Click.byTestId(contextMenuDelete); GeneralUIUtils.ultimateWait(); @@ -766,11 +802,13 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { .build(); } - private String createSriovService(ServiceData serviceData, boolean tryCancelsAndReentries) { - return createSriovService(serviceData, tryCancelsAndReentries, randomAlphabetic(5)); + //@Step("create sriov service") + private String createMacroService(ServiceData serviceData, boolean tryCancelsAndReentries) { + return createMacroService(serviceData, tryCancelsAndReentries, randomAlphabetic(5), true, 3); } - private String createSriovService(ServiceData serviceData, boolean tryCancelsAndReentries, String randomAlphabetic) { + //@Step("create sriov service") + private String createMacroService(ServiceData serviceData, boolean tryCancelsAndReentries, String randomAlphabetic, boolean fillLcpRegionAndTenantAndZone, int bulkSize) { BrowseASDCPage browseASDCPage = new BrowseASDCPage(); User user = usersService.getUser(Constants.Users.SILVIA_ROBBINS_TYLER_SILVIA); @@ -788,14 +826,17 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { WebElement instanceName = Get.byId("instanceName"); boolean isRequired = isElementByIdRequired("instanceName-label"); - if (serviceData.isGeneratedNaming) { + if (serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE || serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE_BUT_GIVE_NAME_EITHER_WAY) { Assert.assertNotNull(instanceName, "instance name input should be visible when serviceEcompNaming == true."); Assert.assertFalse(isRequired,"instance name input should be optional when ecompNaming == true."); - } else { Assert.assertTrue(isRequired,"instance name input should be required when serviceEcompNaming == false."); + } + + if (serviceData.isGeneratedNaming == IS_GENERATED_NAMING.FALSE || serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE_BUT_GIVE_NAME_EITHER_WAY) { instanceName.sendKeys(serviceInstanceName); } + String setButtonTestId = "form-set"; //serviceType should be dependent on subscriber selection assertElementDisabled("serviceType-select"); @@ -816,38 +857,47 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { Wait.waitByClassAndText(Constants.CreateNewInstance.SERVICE_TYPE_OPTION_CLASS, serviceType, 30); browseASDCPage.selectServiceTypeByName(serviceType); - //tenant should be dependent on lcpRegion selection - assertElementDisabled("tenant-select"); + String owningEntity = "WayneHolland"; + GeneralUIUtils.ultimateWait(); + Wait.waitByClassAndText(Constants.CreateNewInstance.OWNING_ENTITY_OPTION, owningEntity, 30); + SelectOption.byTestIdAndVisibleText(owningEntity, (Constants.OwningEntity.OWNING_ENTITY_SELECT_TEST_ID)); + assertSetButtonDisabled(setButtonTestId); - String lcpRegion = "hvf6"; - Wait.waitByClassAndText("lcpRegionOption", lcpRegion, 30); - viewEditPage.selectLcpRegion(lcpRegion, AIC); + SelectOption.byTestIdAndVisibleText("ERICA", Constants.ViewEdit.PRODUCT_FAMILY_SELECT_TESTS_ID); + browseASDCPage.selectProductFamily("e433710f-9217-458d-a79d-1c7aff376d89"); - GeneralUIUtils.ultimateWait(); - browseASDCPage.selectTenant("bae71557c5bb4d5aac6743a4e5f1d054"); + if (fillLcpRegionAndTenantAndZone) { - String setButtonTestId = "form-set"; - assertSetButtonDisabled(setButtonTestId); + //we assume that if fillLcpRegionAndTenantAndZone is true tenant and lcpRegion are required for this service model + //If you want to fill lcpRegionAndTenant where they are optional you can refactor this test... + assertSetButtonDisabled(setButtonTestId); - SelectOption.byTestIdAndVisibleText("WayneHolland", (Constants.OwningEntity.OWNING_ENTITY_SELECT_TEST_ID)); - assertSetButtonDisabled(setButtonTestId); + //tenant should be dependent on lcpRegion selection + assertElementDisabled("tenant-select"); - SelectOption.byTestIdAndVisibleText("ERICA", Constants.ViewEdit.PRODUCT_FAMILY_SELECT_TESTS_ID); - assertSetButtonEnabled(setButtonTestId); + String lcpRegion = "hvf6"; + Wait.waitByClassAndText("lcpRegionOption", lcpRegion, 30); + viewEditPage.selectLcpRegion(lcpRegion, AIC); - browseASDCPage.selectProductFamily("e433710f-9217-458d-a79d-1c7aff376d89"); + GeneralUIUtils.ultimateWait(); + browseASDCPage.selectTenant("bae71557c5bb4d5aac6743a4e5f1d054"); - browseASDCPage.selectAicZone("NFT1"); + browseASDCPage.selectAicZone("NFT1"); + } - SelectOption.byTestIdAndVisibleText("WATKINS", Constants.OwningEntity.PROJECT_SELECT_TEST_ID); + assertSetButtonEnabled(setButtonTestId); - assertNotificationAreaVisibilityBehaviour(); + + SelectOption.byTestIdAndVisibleText("WATKINS", Constants.OwningEntity.PROJECT_SELECT_TEST_ID); + if (bulkSize!=1) { + assertNotificationAreaVisibilityBehaviourAndSetBulkSize(bulkSize); + } assertPauseOnPausePointsVisibility(serviceData.multiStageDesign); validateDynamicFields(serviceData.dynamicFields); - vidBasePage.screenshotDeployDialog("createSriovService-" + serviceInstanceName); + vidBasePage.screenshotDeployDialog("createMacroService-" + serviceInstanceName); if ("WILL_CANCEL".equals(cycle)) { Click.byTestId(Constants.CANCEL_BUTTON_TEST_ID); @@ -874,9 +924,10 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { loadServicePopup(serviceData.modelUuid); WebElement instanceName = Get.byId("instanceName"); - if (serviceData.isGeneratedNaming) { + if (serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE || serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE_BUT_GIVE_NAME_EITHER_WAY) { Assert.assertNull(instanceName, "instance name input should be invisible when serviceEcompNaming == true."); - } else { + } + if (serviceData.isGeneratedNaming == IS_GENERATED_NAMING.FALSE || serviceData.isGeneratedNaming == IS_GENERATED_NAMING.TRUE_BUT_GIVE_NAME_EITHER_WAY) { instanceName.sendKeys(serviceInstanceName); } @@ -922,6 +973,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { Assert.assertEquals(webElement.getTagName(), tag); } + //@Step("create vnf") private void createVnf(ServiceData serviceData, boolean tryCancelsAndReentries, boolean addedByDefault, String serviceInstanceName) { createVnf(serviceData.vnfData, tryCancelsAndReentries, addedByDefault, serviceInstanceName); } @@ -957,12 +1009,12 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { assertElementDisabled("tenant-select"); WebElement legacyRegion = Get.byTestId("lcpRegionText"); - Assert.assertNull(legacyRegion, "legacy region shouldn't be visible when lcp region isn't JANET25,olson3 or olson5a."); + Assert.assertNull(legacyRegion, "legacy region shouldn't be visible when lcp region isn't AAIAIC25,olson3 or olson5a."); - browseASDCPage.selectLcpRegion("JANET25"); + browseASDCPage.selectLcpRegion("AAIAIC25"); legacyRegion = Get.byTestId("lcpRegionText"); - Assert.assertNotNull(legacyRegion, "legacy region should be visible when lcp region is JANET25,olson3 or olson5a."); + Assert.assertNotNull(legacyRegion, "legacy region should be visible when lcp region is AAIAIC25,olson3 or olson5a."); browseASDCPage.selectTenant("092eb9e8e4b7412e8787dd091bc58e86"); @@ -970,10 +1022,11 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { browseASDCPage.selectPlatform("platform"); + browseASDCPage.selectLineOfBusiness("ONAP"); assertSetButtonEnabled(VNF_SET_BUTTON_TEST_ID); browseASDCPage.setLegacyRegion("some legacy region"); - browseASDCPage.selectLineOfBusiness("ONAP"); + Wait.waitByTestId("model-item-value-subscriberName", 10); Assert.assertEquals(Get.byTestId("model-item-value-subscriberName").getText(), "SILVIA ROBBINS", "Subscriber name should be shown in vf module"); @@ -993,7 +1046,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { Wait.byText("TYLER SILVIA"); GeneralUIUtils.ultimateWait(); - assertThat(Get.selectedOptionText(Constants.ViewEdit.LCP_REGION_SELECT_TESTS_ID), startsWith("JANET25")); + assertThat(Get.selectedOptionText(Constants.ViewEdit.LCP_REGION_SELECT_TESTS_ID), startsWith("AAIAIC25")); Assert.assertEquals(Get.selectedOptionText(Constants.ViewEdit.TENANT_SELECT_TESTS_ID), "USP-SIP-IC-24335-T-01"); Assert.assertEquals(Get.selectedOptionText(Constants.ViewEdit.LINE_OF_BUSINESS_SELECT_TESTS_ID), "ONAP"); Assert.assertEquals(Get.selectedOptionText(Constants.OwningEntity.PLATFORM_SELECT_TEST_ID), "platform"); @@ -1053,6 +1106,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { } } + //@Step("create vf module") private void createVfModule(ServiceData serviceData, String serviceInstanceName, boolean addedByDefault, boolean addOpensPopup) { clickAddVfModule(serviceData, addedByDefault); if (!addOpensPopup) { @@ -1133,33 +1187,34 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { } } - private void assertNotificationAreaVisibilityBehaviour() { + private void assertNotificationAreaVisibilityBehaviourAndSetBulkSize(int size) { WebElement webElement = Get.byId("notification-area"); Assert.assertNull(webElement, "notification area should be invisible if only 1 qty."); - SelectOption.byIdAndVisibleText("quantity-select", "3"); + SelectOption.byIdAndVisibleText("quantity-select", String.valueOf(size)); webElement = Get.byId("notification-area"); Assert.assertNotNull(webElement, "notification area should be visible if more then 1 qty."); } + //@Step("prepare service preset") private void prepareServicePreset(ModelInfo modelInfo, boolean deploy) { String subscriberId = "e433710f-9217-458d-a79d-1c7aff376d89"; if (deploy) { registerExpectationForServiceDeployment( - ImmutableList.of( - modelInfo, - PASQUALEVmxVpeBvService488Annotations - ), - subscriberId, null); + ImmutableList.of( + modelInfo, + pasqualeVmxVpeBvService488Annotations + ), + subscriberId, null); } else { registerExpectationForServiceBrowseAndDesign(ImmutableList.of(modelInfo), subscriberId); } } - private class ServiceData { - ServiceData(String modelUuid, List<String> dynamicFields, boolean isServiceGeneratedNaming, boolean isVnfGeneratedNaming, boolean isVgEnabled, boolean multiStageDesign, String vnfName, String vfName, int vfMin, int vfMax, List<String> vfModuleDynamicFields, String vfVersionId) { + static class ServiceData { + ServiceData(String modelUuid, List<String> dynamicFields, IS_GENERATED_NAMING isServiceGeneratedNaming, boolean isVnfGeneratedNaming, boolean isVgEnabled, boolean multiStageDesign, String vnfName, String vfName, int vfMin, int vfMax, List<String> vfModuleDynamicFields, String vfVersionId) { this.modelUuid = modelUuid; this.dynamicFields = dynamicFields; this.isGeneratedNaming = isServiceGeneratedNaming; @@ -1170,13 +1225,15 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { final String modelUuid; final List<String> dynamicFields; - final boolean isGeneratedNaming; + final IS_GENERATED_NAMING isGeneratedNaming; final boolean multiStageDesign; final VnfData vnfData; final VfData vfData; + + enum IS_GENERATED_NAMING { TRUE, FALSE, TRUE_BUT_GIVE_NAME_EITHER_WAY} } - private class VnfData { + private static class VnfData { VnfData(String vnfName, String vnfUuid, String vnfInstanceName, boolean isGeneratedNaming) { this.vnfName = vnfName; this.vnfUuid = vnfUuid; @@ -1191,7 +1248,7 @@ public class NewServiceInstanceTest extends CreateInstanceDialogBaseTest { } - private class VfData { + private static class VfData { VfData(String vfName, boolean vgEnabled, int vfMin, int vfMax, List<String> dynamicFields, String uuid) { this.vfName = vfName; this.vgEnabled = vgEnabled; diff --git a/vid-automation/src/main/java/vid/automation/test/test/SanityMacroDeployTest.java b/vid-automation/src/main/java/vid/automation/test/test/SanityMacroDeployTest.java index 0741a4b38..59c132367 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/SanityMacroDeployTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/SanityMacroDeployTest.java @@ -1,17 +1,13 @@ package vid.automation.test.test; -import static org.hamcrest.Matchers.containsString; -import static vid.automation.test.infra.ModelInfo.macroForBrowseSdc; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; - import com.google.common.collect.ImmutableList; import org.junit.Assert; -import org.onap.sdc.ci.tests.datatypes.UserCredentials; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIServiceDesignAndCreationPut; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateMacroPre1806Post; +import org.onap.sdc.ci.tests.datatypes.UserCredentials; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; @@ -22,6 +18,10 @@ import vid.automation.test.sections.BrowseASDCPage; import vid.automation.test.sections.SideMenu; import vid.automation.test.services.SimulatorApi; +import static org.hamcrest.Matchers.containsString; +import static vid.automation.test.infra.ModelInfo.macroForBrowseSdc; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; + public class SanityMacroDeployTest extends CreateInstanceDialogBaseTest { static final String NEW_INSTANCE_NAME = "New Instance Name"; diff --git a/vid-automation/src/main/java/vid/automation/test/test/SanityTest.java b/vid-automation/src/main/java/vid/automation/test/test/SanityTest.java index 4ec3d4958..eb41c38e4 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/SanityTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/SanityTest.java @@ -1,10 +1,9 @@ package vid.automation.test.test; -import java.io.IOException; import org.junit.Assert; +import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; import org.openqa.selenium.WebElement; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; @@ -16,6 +15,8 @@ import vid.automation.test.sections.SearchExistingPage; import vid.automation.test.sections.SideMenu; import vid.automation.test.services.SimulatorApi; +import java.io.IOException; + public class SanityTest extends VidBaseTestCase { static final String SUBSCRIBER = "Emanuel"; diff --git a/vid-automation/src/main/java/vid/automation/test/test/SearchExistingInstanceTest.java b/vid-automation/src/main/java/vid/automation/test/test/SearchExistingInstanceTest.java index c8370a571..b1d31f8e2 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/SearchExistingInstanceTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/SearchExistingInstanceTest.java @@ -1,10 +1,7 @@ package vid.automation.test.test; -import static org.testng.Assert.assertFalse; -import static org.testng.Assert.assertTrue; - -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import vid.automation.test.Constants; @@ -15,6 +12,9 @@ import vid.automation.test.sections.SideMenu; import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.SimulatorApi; +import static org.testng.Assert.assertFalse; +import static org.testng.Assert.assertTrue; + public class SearchExistingInstanceTest extends VidBaseTestCase { public static final String serviceIdOeWirelineProjectX1 = "7e4f8130-5dee-47c4-8770-1abc5f5ded83"; diff --git a/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestCase.java b/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestCase.java index c472793fc..ced874ee3 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestCase.java +++ b/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestCase.java @@ -1,23 +1,19 @@ package vid.automation.test.test; +//import com.automation.common.report_portal_integration.annotations.Step; +//import com.automation.common.report_portal_integration.listeners.ReportPortalListener; +//import com.automation.common.report_portal_integration.screenshots.WebDriverScreenshotsProvider; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.ImmutableList; import org.apache.commons.lang3.StringUtils; import org.glassfish.jersey.uri.internal.JerseyUriBuilder; import org.junit.Assert; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsGet; +import org.onap.sdc.ci.tests.datatypes.Configuration; import org.onap.simulator.presetGenerator.presets.BasePresets.BaseMSOPreset; import org.onap.simulator.presetGenerator.presets.BasePresets.BasePreset; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAICloudRegionAndSourceFromConfigurationPut; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetNetworkZones; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetPortMirroringSourcePorts; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetServicesGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsWithoutInstancesGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetTenants; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIPostNamedQueryForViewEdit; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIServiceDesignAndCreationPut; +import org.onap.simulator.presetGenerator.presets.aai.*; import org.onap.simulator.presetGenerator.presets.ecompportal_att.EcompPortalPresetsUtils; +import org.onap.simulator.presetGenerator.presets.ecompportal_att.PresetGetSessionSlotCheckIntervalGet; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstancePost; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; @@ -35,8 +31,10 @@ import org.springframework.web.client.RestTemplate; import org.testng.ITestContext; import org.testng.annotations.BeforeMethod; import org.testng.annotations.BeforeSuite; +import org.testng.annotations.Listeners; import org.testng.annotations.Test; import vid.automation.test.Constants; +import vid.automation.test.Constants.ViewEdit; import vid.automation.test.infra.*; import vid.automation.test.model.Credentials; import vid.automation.test.model.User; @@ -66,11 +64,13 @@ import static org.hamcrest.Matchers.containsInAnyOrder; import static org.hamcrest.collection.IsEmptyCollection.empty; import static org.hamcrest.core.Is.is; import static org.junit.Assert.assertThat; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet.COMPLETE; import static org.testng.Assert.assertEquals; import static org.testng.AssertJUnit.fail; import static vid.automation.test.utils.TestHelper.GET_SERVICE_MODELS_BY_DISTRIBUTION_STATUS; import static vid.automation.test.utils.TestHelper.GET_TENANTS; +//@Listeners(com.automation.common.report_portal_integration.listeners.ReportPortalListener.class) public class VidBaseTestCase extends SetupCDTest{ protected final UsersService usersService = new UsersService(); @@ -129,7 +129,7 @@ public class VidBaseTestCase extends SetupCDTest{ } @Override - protected org.onap.sdc.ci.tests.datatypes.Configuration getEnvConfiguration() { + protected Configuration getEnvConfiguration() { return TestConfigurationHelper.getEnvConfiguration(); } @@ -170,29 +170,14 @@ public class VidBaseTestCase extends SetupCDTest{ LoginExternalPage.performLoginExternal(userCredentials); } - protected String getReduxState() { - final JavascriptExecutor javascriptExecutor = (JavascriptExecutor) GeneralUIUtils.getDriver(); - String reduxState = (String)javascriptExecutor.executeScript("return window.sessionStorage.getItem('reduxState');"); - System.out.println(reduxState); - return reduxState; - } - - protected void setReduxState(String state) { - final JavascriptExecutor javascriptExecutor = (JavascriptExecutor) GeneralUIUtils.getDriver(); - String script = String.format("window.sessionStorage.setItem('reduxState', '%s');", state); - System.out.println("executing script:"); - System.out.println(script); - javascriptExecutor.executeScript(script); - } - protected void registerExpectationForLegacyServiceDeployment(ModelInfo modelInfo, String subscriberId) { List<BasePreset> presets = new ArrayList<>(Arrays.asList( new PresetAAIPostNamedQueryForViewEdit(BaseMSOPreset.DEFAULT_INSTANCE_ID, true, false), - new PresetAAIGetPortMirroringSourcePorts("9533-config-LB1113", "myRandomInterfaceId", "i'm a port", true) + new PresetAAIGetPortMirroringSourcePorts("9533-config-LB1113", "myRandomInterfaceId", ViewEdit.COMMON_PORT_MIRRORING_PORT_NAME, true) )); presets.add(new PresetMSOCreateServiceInstancePost()); - presets.add(new PresetMSOOrchestrationRequestGet()); + presets.add(new PresetMSOOrchestrationRequestGet(COMPLETE, false)); presets.addAll(getPresetForServiceBrowseAndDesign(ImmutableList.of(modelInfo), subscriberId)); @@ -202,7 +187,7 @@ public class VidBaseTestCase extends SetupCDTest{ protected void registerExpectationForServiceDeployment(List<ModelInfo> modelInfoList, String subscriberId, PresetMSOCreateServiceInstanceGen2 createServiceInstancePreset) { List<BasePreset> presets = new ArrayList<>(Arrays.asList( new PresetAAIPostNamedQueryForViewEdit(BaseMSOPreset.DEFAULT_INSTANCE_ID, true, false), - new PresetAAIGetPortMirroringSourcePorts("9533-config-LB1113", "myRandomInterfaceId", "i'm a port", true) + new PresetAAIGetPortMirroringSourcePorts("9533-config-LB1113", "myRandomInterfaceId", ViewEdit.COMMON_PORT_MIRRORING_PORT_NAME, true) )); if (createServiceInstancePreset != null) { @@ -222,6 +207,7 @@ public class VidBaseTestCase extends SetupCDTest{ protected List<BasePreset> getPresetForServiceBrowseAndDesign(List<ModelInfo> modelInfoList, String subscriberId) { List<BasePreset> presets = new ArrayList<>(Arrays.asList( + new PresetGetSessionSlotCheckIntervalGet(), new PresetAAIGetSubDetailsGet(subscriberId), new PresetAAIGetSubDetailsWithoutInstancesGet(subscriberId), new PresetAAIGetSubscribersGet(), @@ -342,9 +328,9 @@ public class VidBaseTestCase extends SetupCDTest{ viewEditPage.selectTenant(tenant); viewEditPage.selectSuppressRollback(suppressRollback); - viewEditPage.selectPlatform(platform); - //viewEditPage.setLegacyRegion(legacyRegion); - + if(platform != null){ + viewEditPage.selectPlatform(platform); + } viewEditPage.clickConfirmButton(); viewEditPage.assertMsoRequestModal(Constants.ViewEdit.MSO_SUCCESSFULLY_TEXT); viewEditPage.clickCloseButton(); @@ -371,6 +357,7 @@ public class VidBaseTestCase extends SetupCDTest{ Assert.assertTrue(Constants.ViewEdit.VF_MODULE_CREATION_FAILED_MESSAGE, byText); } + //@Step("${method}: ${instanceUUID}") void goToExistingInstanceById(String instanceUUID) { SearchExistingPage searchExistingPage = searchExistingInstanceById(instanceUUID); assertViewEditButtonState( Constants.VIEW_EDIT_BUTTON_TEXT, instanceUUID); @@ -498,13 +485,9 @@ public class VidBaseTestCase extends SetupCDTest{ } public DeployMacroDialogBase getMacroDialog(){ - if (Features.FLAG_ASYNC_INSTANTIATION.isActive()) { - VidBasePage vidBasePage =new VidBasePage(); - vidBasePage.goToIframe(); - return new DeployMacroDialog(); - } - else - return new DeployMacroDialogOld(); + VidBasePage vidBasePage =new VidBasePage(); + vidBasePage.goToIframe(); + return new DeployMacroDialog(); } protected void loadServicePopup(ModelInfo modelInfo) { @@ -591,8 +574,8 @@ public class VidBaseTestCase extends SetupCDTest{ SideMenu.navigateToWelcomePage(); vidBasePage.navigateTo("serviceModels.htm#/instantiate?" + "subscriberId=e433710f-9217-458d-a79d-1c7aff376d89&" + - "subscriberName=USP%20VOICE&" + - "serviceType=VIRTUAL%20USP&" + + "subscriberName=SILVIA%20ROBBINS&" + + "serviceType=TYLER%20SILVIA&" + "serviceInstanceId=" + serviceInstanceId + "&" + "aaiModelVersionId=" + aaiModelVersionId + "&" + "isPermitted=true"); diff --git a/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestWithoutLogin.java b/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestWithoutLogin.java index 48f776406..1522c1057 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestWithoutLogin.java +++ b/vid-automation/src/main/java/vid/automation/test/test/VidBaseTestWithoutLogin.java @@ -1,5 +1,6 @@ package vid.automation.test.test; +import org.onap.sdc.ci.tests.datatypes.Configuration; import org.onap.sdc.ci.tests.datatypes.UserCredentials; import org.onap.sdc.ci.tests.execute.setup.DriverFactory; import vid.automation.test.utils.TestConfigurationHelper; @@ -12,7 +13,7 @@ public abstract class VidBaseTestWithoutLogin extends DriverFactory { } @Override - protected org.onap.sdc.ci.tests.datatypes.Configuration getEnvConfiguration() { + protected Configuration getEnvConfiguration() { return TestConfigurationHelper.getEnvConfiguration(); } diff --git a/vid-automation/src/main/java/vid/automation/test/test/ViewEditServiceInstanceTest.java b/vid-automation/src/main/java/vid/automation/test/test/ViewEditServiceInstanceTest.java index ed64bba0a..a24ecb735 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/ViewEditServiceInstanceTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/ViewEditServiceInstanceTest.java @@ -1,47 +1,42 @@ package vid.automation.test.test; -import static org.apache.logging.log4j.core.util.Assert.isNonEmpty; -import static org.hamcrest.CoreMatchers.is; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.equalTo; -import static org.hamcrest.collection.IsEmptyCollection.empty; -import static org.testng.AssertJUnit.assertEquals; -import static vid.automation.test.infra.Features.FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE; -import static vid.automation.test.infra.Features.FLAG_COLLECTION_RESOURCE_SUPPORT; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; - import com.google.common.collect.ImmutableMap; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.time.LocalDate; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import org.hamcrest.MatcherAssert; import org.junit.Assert; import org.junit.Before; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetNetworkCollectionDetails; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.testng.annotations.AfterMethod; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import vid.automation.test.Constants; -import vid.automation.test.infra.Click; -import vid.automation.test.infra.Exists; -import vid.automation.test.infra.FeatureTogglingTest; -import vid.automation.test.infra.Features; -import vid.automation.test.infra.Get; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.*; import vid.automation.test.model.User; import vid.automation.test.sections.VidBasePage; import vid.automation.test.sections.ViewEditPage; import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.SimulatorApi; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import static org.apache.logging.log4j.core.util.Assert.isNonEmpty; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.collection.IsEmptyCollection.empty; +import static org.testng.AssertJUnit.assertEquals; +import static vid.automation.test.infra.Features.FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; + public class ViewEditServiceInstanceTest extends VidBaseTestCase { private ViewEditPage viewEditPage = new ViewEditPage(); @@ -67,9 +62,9 @@ public class ViewEditServiceInstanceTest extends VidBaseTestCase { /// Activate / Deactivate service instance /// ////////////////////////////////////////////// - @FeatureTogglingTest(value = FLAG_COLLECTION_RESOURCE_SUPPORT) + @FeatureTogglingTest(value = Features.FLAG_1908_RESUME_MACRO_SERVICE, flagActive = false) @Test - public void testViewEditCRServiceInstance()throws Exception { + public void testViewEditCRServiceInstance() { SimulatorApi.clearAll(); BulkRegistration.searchExistingCRServiceInstance("Created"); BulkRegistration.activateServiceInstance(ACTIVATE_ACTION); diff --git a/vid-automation/src/main/java/vid/automation/test/test/ViewEditWithDrawingBoardTest.java b/vid-automation/src/main/java/vid/automation/test/test/ViewEditWithDrawingBoardTest.java index 724e68065..76cc7a44b 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/ViewEditWithDrawingBoardTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/ViewEditWithDrawingBoardTest.java @@ -1,80 +1,77 @@ package vid.automation.test.test; -import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.SERVICE_NAME; -import static org.testng.AssertJUnit.assertTrue; -import static vid.automation.test.infra.ModelInfo.aLaCarteVnfGroupingService; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.CLEAR_THEN_SET; -import static vid.automation.test.services.SimulatorApi.registerExpectationFromPresets; - import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableMultimap; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.UUID; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.onap.simulator.presetGenerator.presets.BasePresets.BasePreset; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIFilterServiceInstanceById; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetServicesGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsGetSpecificService; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubDetailsWithoutInstancesGetSpecificService; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIModelsByInvariantIdGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIStandardQueryGet; +import org.onap.simulator.presetGenerator.presets.aai.*; import org.onap.simulator.presetGenerator.presets.ecompportal_att.PresetGetSessionSlotCheckIntervalGet; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOAddOrRemoveOneInstanceGroupMember; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateServiceInstanceGen2WithNamesAlacarteGroupingService; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSODeleteInstanceGroup; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; -import org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames; +import org.onap.simulator.presetGenerator.presets.mso.*; import org.onap.simulator.presetGenerator.presets.sdc.PresetSDCGetServiceMetadataGet; import org.onap.simulator.presetGenerator.presets.sdc.PresetSDCGetServiceToscaModelGet; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.testng.annotations.Test; import vid.automation.test.Constants; +import vid.automation.test.infra.Click; import vid.automation.test.infra.FeatureTogglingTest; import vid.automation.test.infra.Features; -import vid.automation.test.infra.Wait; +import vid.automation.test.infra.ModelInfo; import vid.automation.test.sections.DrawingBoardPage; -import vid.automation.test.sections.VidBasePage; import vid.automation.test.services.SimulatorApi; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIStandardQueryGet.defaultPlacement; +import static org.onap.simulator.presetGenerator.presets.mso.PresetMSOServiceInstanceGen2WithNames.Keys.SERVICE_NAME; +import static vid.automation.test.Constants.DrawingBoard.CONTEXT_MENU_BUTTON_HEADER; +import static vid.automation.test.Constants.DrawingBoard.CONTEXT_MENU_HEADER_RESUME_ITEM; +import static vid.automation.test.infra.ModelInfo.aLaCarteVnfGroupingService; +import static vid.automation.test.infra.ModelInfo.collectionResourceForResume; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.CLEAR_THEN_SET; +import static vid.automation.test.services.SimulatorApi.registerExpectationFromPresets; + public class ViewEditWithDrawingBoardTest extends VidBaseTestCase { - private final String RELATED_VNF_UUID1 = "a9f1b136-11ed-471f-8d77-f123c7501a01"; - private final String RELATED_VNF_UUID2 = "963b67e1-079a-404e-abef-b745d770bd85"; - private final String RELATED_VNF_UUID3 = "5a34a4f4-81a4-4eed-871b-f0b1187160d4"; + private static final String MSO_COMPLETE_STATUS = "COMPLETE"; private static final String COMPLETED = "COMPLETED"; private String vnfGroupInstanceId; - private String vnfGroupInstanceName; - private String serviceInstanceName; - private String serviceInstanceId = "b9af7c1d-a2d7-4370-b747-1b266849ad32"; - String subscriberId = "e433710f-9217-458d-a79d-1c7aff376d89"; - String serviceType = "TYLER SILVIA"; - String serviceReqId = "3cf5ea96-6b34-4945-b5b1-4a7798b1caf2"; + private String serviceInstanceToDeleteName; + private String vnf1Name; + private String subscriberId = "e433710f-9217-458d-a79d-1c7aff376d89"; + private String serviceType = "TYLER SILVIA"; + private String serviceInstanceToResumeName; @FeatureTogglingTest(Features.FLAG_1902_VNF_GROUPING) @Test public void testDeleteVnfGroupWithMembers() { - String vnf1Name = registerServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name(); - final ImmutableMap<PresetMSOServiceInstanceGen2WithNames.Keys, String> names = ImmutableMap.of(SERVICE_NAME, serviceInstanceName); - - - List<BasePreset> presets = ImmutableList.of( - new PresetAAIGetSubscribersGet(), - new PresetAAIGetServicesGet(), - new PresetAAIFilterServiceInstanceById(subscriberId, serviceType, serviceInstanceId), - new PresetAAIGetSubDetailsGetSpecificService(subscriberId, serviceType, "Active", aLaCarteVnfGroupingService, serviceInstanceId), - new PresetAAIGetSubDetailsWithoutInstancesGetSpecificService(subscriberId, serviceType), - new PresetSDCGetServiceMetadataGet(aLaCarteVnfGroupingService), - new PresetSDCGetServiceToscaModelGet(aLaCarteVnfGroupingService), - new PresetMSOCreateServiceInstanceGen2WithNamesAlacarteGroupingService(names, 0, serviceReqId) + String serviceInstanceId = "b9af7c1d-a2d7-4370-b747-1b266849ad32"; + String serviceReqId = "3cf5ea96-6b34-4945-b5b1-4a7798b1caf2"; + + //createPresetsForServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name init serviceInstanceToDeleteName + final List<BasePreset> presetsForGetTopology = createPresetsForServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name(serviceInstanceId); + final ImmutableMap<PresetMSOServiceInstanceGen2WithNames.Keys, String> names = ImmutableMap.of(SERVICE_NAME, serviceInstanceToDeleteName); + SimulatorApi.registerExpectationFromPresetsCollections(ImmutableList.of( + presetsForSearchAndEdit(aLaCarteVnfGroupingService, subscriberId, serviceType, serviceInstanceId), + presetsForGetTopology, + ImmutableList.of( + new PresetAAIModelsByInvariantIdGet(ImmutableList.of(aLaCarteVnfGroupingService.modelInvariantId)), + new PresetMSOCreateServiceInstanceGen2WithNamesAlacarteGroupingService(names, 0, serviceReqId) + ) + ), + CLEAR_THEN_SET); + + registerMsoPresetForRemoveInstanceGroupMember(); + searchEditAndWaitForCompletion( + serviceInstanceId, + serviceInstanceToDeleteName, + () -> hoverAndClickMenuByName(vnf1Name, "daeb6568-cef8-417f-9075-ed259ce59f48-groupingservicefortest..ResourceInstanceGroup..0", Constants.InstantiationStatus.CONTEXT_MENU_DELETE) ); + } - SimulatorApi.registerExpectationFromPresets(presets, APPEND); - registerMsoPreset(); + protected void searchEditAndWaitForCompletion(String serviceInstanceId, String serviceInstanceName, Runnable action) { GeneralUIUtils.ultimateWait(); goToExistingInstanceById(serviceInstanceId); GeneralUIUtils.ultimateWait(); @@ -82,23 +79,14 @@ public class ViewEditWithDrawingBoardTest extends VidBaseTestCase { DrawingBoardPage drawingBoardPage = new DrawingBoardPage(); drawingBoardPage.goToIframe(); GeneralUIUtils.ultimateWait(); - hoverAndClickMenuByName(vnf1Name, "daeb6568-cef8-417f-9075-ed259ce59f48-groupingservicefortest..ResourceInstanceGroup..0", Constants.InstantiationStatus.CONTEXT_MENU_DELETE); - GeneralUIUtils.ultimateWait(); - drawingBoardPage.clickDeployButton(); - - - VidBasePage.goOutFromIframe(); - GeneralUIUtils.ultimateWait(); - drawingBoardPage.goToIframe(); + action.run(); GeneralUIUtils.ultimateWait(); - - DrawingBoardPage.ServiceStatusChecker serviceStatusChecker = new DrawingBoardPage.ServiceStatusChecker(serviceInstanceName, Collections.singleton(COMPLETED)); - boolean statusIsShown = Wait.waitFor(serviceStatusChecker, null, 10, 1); - assertTrue("Service "+serviceInstanceName+" wasn't completed after in time", statusIsShown); - + drawingBoardPage.screenshotDeployDialog(serviceInstanceId); + drawingBoardPage.deploy(); + drawingBoardPage.verifyServiceCompletedOnTime(serviceInstanceName, "Service " + serviceInstanceName); } - public void registerMsoPreset(){ + public void registerMsoPresetForRemoveInstanceGroupMember() { String vnfGroupRequestId = UUID.randomUUID().toString(); String firstMemberRequestId = UUID.randomUUID().toString(); String secondMemberRequestId = UUID.randomUUID().toString(); @@ -129,18 +117,23 @@ public class ViewEditWithDrawingBoardTest extends VidBaseTestCase { } - public String registerServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name() { + public List<BasePreset> createPresetsForServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name(String serviceInstanceId) { + + final String RELATED_VNF_UUID1 = "a9f1b136-11ed-471f-8d77-f123c7501a01"; + final String RELATED_VNF_UUID2 = "963b67e1-079a-404e-abef-b745d770bd85"; + final String RELATED_VNF_UUID3 = "5a34a4f4-81a4-4eed-871b-f0b1187160d4"; + PresetAAIStandardQueryGet relatedVnf1 = PresetAAIStandardQueryGet.ofVnf(RELATED_VNF_UUID1, "7a6ee536-f052-46fa-aa7e-2fca9d674c44", "7a6ee536-f052-46fa-aa7e-2fca9d674c44", - "", ImmutableMultimap.of()); + "", ImmutableMultimap.of(), defaultPlacement()); PresetAAIStandardQueryGet relatedVnf2 = PresetAAIStandardQueryGet.ofVnf(RELATED_VNF_UUID2, "d6557200-ecf2-4641-8094-5393ae3aae60","d6557200-ecf2-4641-8094-5393ae3aae60", - "", ImmutableMultimap.of()); + "", ImmutableMultimap.of(), defaultPlacement()); PresetAAIStandardQueryGet relatedVnf3 = PresetAAIStandardQueryGet.ofVnf(RELATED_VNF_UUID3, "d6557200-ecf2-4641-8094-5393ae3aae60","d6557200-ecf2-4641-8094-5393ae3aae60", - "", ImmutableMultimap.of()); + "", ImmutableMultimap.of(), defaultPlacement()); final PresetAAIStandardQueryGet vnfGroup1 = PresetAAIStandardQueryGet.ofInstanceGroup("vnfGroup-type", "Teresa Bradley", @@ -158,21 +151,93 @@ public class ViewEditWithDrawingBoardTest extends VidBaseTestCase { .putAll("instance-group", vnfGroup1.getReqPath(), vnfGroup2.getReqPath()) .build() ); - SimulatorApi.registerExpectationFromPresets(ImmutableList.of( + + serviceInstanceToDeleteName = serviceInstance.getInstanceName(); + vnfGroupInstanceId = vnfGroup1.getInstanceId(); + vnf1Name = vnfGroup1.getInstanceName(); + return ImmutableList.of( serviceInstance, - vnfGroup1,vnfGroup2, relatedVnf1, relatedVnf2, relatedVnf3, - new PresetAAIModelsByInvariantIdGet(ImmutableList.of(aLaCarteVnfGroupingService.modelInvariantId)), + vnfGroup1, vnfGroup2, relatedVnf1, relatedVnf2, relatedVnf3); + } + + private List<BasePreset> presetsForSearchAndEdit(ModelInfo modelInfo, String subscriberId, String serviceType, String serviceInstanceId) { + return ImmutableList.of( new PresetGetSessionSlotCheckIntervalGet(), new PresetAAIGetSubscribersGet(), - new PresetSDCGetServiceMetadataGet(aLaCarteVnfGroupingService), - new PresetSDCGetServiceToscaModelGet(aLaCarteVnfGroupingService) - ), CLEAR_THEN_SET); + new PresetSDCGetServiceMetadataGet(modelInfo), + new PresetSDCGetServiceToscaModelGet(modelInfo), + new PresetAAIGetServicesGet(), + new PresetAAIFilterServiceInstanceById(subscriberId, serviceType, serviceInstanceId), + new PresetAAIGetSubDetailsGetSpecificService(subscriberId, serviceType, "Assigned", modelInfo, serviceInstanceId), + new PresetAAIGetSubDetailsWithoutInstancesGetSpecificService(subscriberId, serviceType) + ); + } - serviceInstanceName = serviceInstance.getInstanceName(); - vnfGroupInstanceName = vnfGroup1.getInstanceName(); - vnfGroupInstanceId = vnfGroup1.getInstanceId(); - return vnfGroupInstanceName; + @FeatureTogglingTest({Features.FLAG_1908_COLLECTION_RESOURCE_NEW_INSTANTIATION_UI, Features.FLAG_1908_RESUME_MACRO_SERVICE}) + @Test + public void testResumeServiceInstanceWithCollectionResource() { + + String serviceInstanceId = "0d7b5429-da18-475b-8b67-1b8c0a596f68"; + String serviceReqId = "405652f4-ceb3-4a75-9474-8aea71480a77"; //from PresetMSOOrchestrationRequestsGetByServiceInstanceId + + //createPresetsForServiceInstanceTopologyExpectationOnAAIAndGetVnf1Name init serviceInstanceToDeleteName + final List<BasePreset> presetsForGetTopology = createPresetsForGetTopologyOfServiceInstanceWithCRandInstanceGroup(serviceInstanceId); + SimulatorApi.registerExpectationFromPresetsCollections(ImmutableList.of( + presetsForSearchAndEdit(collectionResourceForResume, subscriberId, serviceType, serviceInstanceId), + presetsForGetTopology, + createPresetsForResume(serviceInstanceId, serviceReqId) + ), + CLEAR_THEN_SET); + + searchEditAndWaitForCompletion( + serviceInstanceId, + serviceInstanceToResumeName, //side effect of createPresetsForGetTopologyOfServiceInstanceWithCRandInstanceGroup + () -> { + Click.byTestId(CONTEXT_MENU_BUTTON_HEADER); + Click.byTestId(CONTEXT_MENU_HEADER_RESUME_ITEM); + }); } + private List<BasePreset> createPresetsForResume(String serviceInstanceId, String serviceReqId) { + String resumeRequestId = UUID.randomUUID().toString(); + return ImmutableList.of( + new PresetMSOOrchestrationRequestsGetByServiceInstanceId(serviceInstanceId), + new PresetMSOResumeRequest(serviceReqId, resumeRequestId, serviceInstanceId, "us16807000"), + new PresetMSOOrchestrationRequestGet(MSO_COMPLETE_STATUS, resumeRequestId) + ); + } + + private List<BasePreset> createPresetsForGetTopologyOfServiceInstanceWithCRandInstanceGroup(String serviceInstanceId) { + PresetAAIStandardQueryGet instanceGroup = PresetAAIStandardQueryGet.ofInstanceGroup( + "L3-NETWORK", "SUB_INTERFACE", ImmutableMultimap.of(), + "868b109c-9481-4a18-891b-af974db7705a", "dd182d7d-6949-4b90-b3cc-5befe400742e"); + + PresetAAIStandardQueryGet cr = PresetAAIStandardQueryGet.ofCollectionResource( + "Assigned", + ImmutableMultimap.of("instance-group", instanceGroup.getReqPath()), + "081ceb56-eb71-4566-a72d-3e7cbee5cdf1", + "ce8c98bc-4691-44fb-8ff0-7a47487c11c4" + ); + + PresetAAIStandardQueryGet service = PresetAAIStandardQueryGet.ofServiceInstance( + serviceInstanceId, + "INFRASTRUCTURE", "", collectionResourceForResume.modelVersionId, + collectionResourceForResume.modelInvariantId, + subscriberId, + serviceType, + "Assigned", + ImmutableMultimap.of("collection", cr.getReqPath()) + ); + + PresetAAIModelsByInvariantIdGetForServiceWithCR aaiModelsPreset = new PresetAAIModelsByInvariantIdGetForServiceWithCR( + ImmutableList.of( + "868b109c-9481-4a18-891b-af974db7705a", + "081ceb56-eb71-4566-a72d-3e7cbee5cdf1", + collectionResourceForResume.modelInvariantId)); + + serviceInstanceToResumeName = service.getInstanceName(); + + return ImmutableList.of(service, cr, instanceGroup, aaiModelsPreset); + } } diff --git a/vid-automation/src/main/java/vid/automation/test/test/VlanTagSubInterfaceTest.java b/vid-automation/src/main/java/vid/automation/test/test/VlanTagSubInterfaceTest.java index 3f8db2a94..5f594cb97 100644 --- a/vid-automation/src/main/java/vid/automation/test/test/VlanTagSubInterfaceTest.java +++ b/vid-automation/src/main/java/vid/automation/test/test/VlanTagSubInterfaceTest.java @@ -1,27 +1,10 @@ package vid.automation.test.test; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.equalTo; -import static org.hamcrest.Matchers.is; -import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_AAIAIC25_TO_ATT_AIC; -import static org.testng.AssertJUnit.assertEquals; -import static vid.automation.test.infra.Features.FLAG_COLLECTION_RESOURCE_SUPPORT; -import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; -import static vid.automation.test.test.ALaCarteflowTest.AIC; - import com.google.common.collect.ImmutableList; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.stream.Collectors; -import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetRelatedInstanceGroupsByVnfId; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetServicesGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetSubscribersGet; -import org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetTenants; +import org.onap.simulator.presetGenerator.presets.aai.*; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOCreateVnfVlanTagging; import org.onap.simulator.presetGenerator.presets.mso.PresetMSOOrchestrationRequestGet; +import org.onap.sdc.ci.tests.utilities.GeneralUIUtils; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.ui.Select; import org.testng.Assert; @@ -30,7 +13,6 @@ import org.testng.annotations.DataProvider; import org.testng.annotations.Test; import vid.automation.test.Constants; import vid.automation.test.infra.Click; -import vid.automation.test.infra.FeatureTogglingTest; import vid.automation.test.infra.Get; import vid.automation.test.infra.SelectOption; import vid.automation.test.sections.SearchExistingPage; @@ -38,7 +20,19 @@ import vid.automation.test.sections.VidBasePage; import vid.automation.test.services.BulkRegistration; import vid.automation.test.services.SimulatorApi; -@FeatureTogglingTest(FLAG_COLLECTION_RESOURCE_SUPPORT) +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.is; +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.PRESET_AAIAIC25_TO_ATT_AIC; +import static org.testng.AssertJUnit.assertEquals; +import static vid.automation.test.services.SimulatorApi.RegistrationStrategy.APPEND; +import static vid.automation.test.test.ALaCarteflowTest.AIC; + public class VlanTagSubInterfaceTest extends CreateInstanceDialogBaseTest { private final String ecompNamingFalseInstanceId = "dc3a893e-0104-4ef6-abfe-6c2932294a3e"; @@ -56,7 +50,7 @@ public class VlanTagSubInterfaceTest extends CreateInstanceDialogBaseTest { ); final PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest presetAAIGetInstanceGroupsByCloudRegion1 = new PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest("irma-aic", "hvf6", "untraaa"); - final PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest presetAAIGetInstanceGroupsByCloudRegion2 = new PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest("irma-aic", "JANET25", "untraaa"); + final PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest presetAAIGetInstanceGroupsByCloudRegion2 = new PresetAAIGetInstanceGroupsByCloudRegionInvalidRequest("irma-aic", "AAIAIC25", "untraaa"); SimulatorApi.registerExpectationFromPresets(ImmutableList.of( new PresetAAIGetServicesGet(), @@ -67,8 +61,8 @@ public class VlanTagSubInterfaceTest extends CreateInstanceDialogBaseTest { new PresetAAIGetTenants(), presetAAIGetInstanceGroupsByCloudRegion1, presetAAIGetInstanceGroupsByCloudRegion2, - new PresetMSOOrchestrationRequestGet("IN_PROGRESS"), - new PresetMSOOrchestrationRequestGet("COMPLETE") + new PresetMSOOrchestrationRequestGet("IN_PROGRESS", false), + new PresetMSOOrchestrationRequestGet("COMPLETE", false) ), APPEND); @@ -104,7 +98,7 @@ public class VlanTagSubInterfaceTest extends CreateInstanceDialogBaseTest { WebElement instanceNameInput = GeneralUIUtils.getInputElement(Constants.INSTANCE_NAME_SELECT_TESTS_ID); instanceNameInput.sendKeys("NewName"); SelectOption.byTestIdAndVisibleText("TYLER SILVIA", Constants.ViewEdit.PRODUCT_FAMILY_SELECT_TESTS_ID); - viewEditPage.selectLcpRegion("JANET25", AIC); + viewEditPage.selectLcpRegion("AAIAIC25", AIC); SelectOption.byTestIdAndVisibleText("USP-SIP-IC-24335-T-01", Constants.ViewEdit.TENANT_SELECT_TESTS_ID); SelectOption.byTestIdAndVisibleText("UUUAIAAI-YYY1", Constants.ViewEdit.AIC_ZONE_TEST_ID); SelectOption.byTestIdAndVisibleText("xxx1", Constants.OwningEntity.PLATFORM_SELECT_TEST_ID); diff --git a/vid-automation/src/main/java/vid/automation/test/utils/DB_CONFIG.java b/vid-automation/src/main/java/vid/automation/test/utils/DB_CONFIG.java index 717e2a746..18cda6bda 100644 --- a/vid-automation/src/main/java/vid/automation/test/utils/DB_CONFIG.java +++ b/vid-automation/src/main/java/vid/automation/test/utils/DB_CONFIG.java @@ -2,7 +2,7 @@ package vid.automation.test.utils; public class DB_CONFIG { public static String url = String.format("jdbc:mariadb://%s:%d/vid_portal", - System.getProperty("DB_HOST", System.getProperty("VID_HOST", "10.0.0.10" )), + System.getProperty("DB_HOST", System.getProperty("VID_HOST", "127.0.0.1" )), Integer.valueOf(System.getProperty("DB_PORT", "3306")) ); public static String username = "euser"; diff --git a/vid-automation/src/main/java/vid/automation/test/utils/TestConfigurationHelper.java b/vid-automation/src/main/java/vid/automation/test/utils/TestConfigurationHelper.java index 0b2978dda..0d40a30e7 100644 --- a/vid-automation/src/main/java/vid/automation/test/utils/TestConfigurationHelper.java +++ b/vid-automation/src/main/java/vid/automation/test/utils/TestConfigurationHelper.java @@ -1,18 +1,19 @@ package vid.automation.test.utils; +import org.onap.sdc.ci.tests.datatypes.Configuration; import vid.automation.test.infra.FeaturesTogglingConfiguration; public class TestConfigurationHelper { private TestConfigurationHelper(){} - public static org.onap.sdc.ci.tests.datatypes.Configuration getEnvConfiguration() { + public static Configuration getEnvConfiguration() { try { String envUrl = System.getProperty("ENV_URL"); boolean isCustomLogin = Boolean.parseBoolean(System.getProperty("CUSTOM_LOGIN")); - org.onap.sdc.ci.tests.datatypes.Configuration configuration = new org.onap.sdc.ci.tests.datatypes.Configuration(envUrl, isCustomLogin); + Configuration configuration = new Configuration(envUrl, isCustomLogin); String geckoDriverPath = System.getProperty("GECKO_PATH"); if(geckoDriverPath == null){ |