summaryrefslogtreecommitdiffstats
path: root/vid-automation/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'vid-automation/src/main/java')
-rw-r--r--vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetBaseAAICustomQuery.java54
-rw-r--r--vid-automation/src/main/java/vid/automation/test/test/ChangeManagementTest.java138
2 files changed, 131 insertions, 61 deletions
diff --git a/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetBaseAAICustomQuery.java b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetBaseAAICustomQuery.java
new file mode 100644
index 000000000..a979bae53
--- /dev/null
+++ b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetBaseAAICustomQuery.java
@@ -0,0 +1,54 @@
+package org.onap.simulator.presetGenerator.presets.aai;
+
+import com.google.common.collect.ImmutableMap;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset;
+import org.springframework.http.HttpMethod;
+
+public abstract class PresetBaseAAICustomQuery extends BaseAAIPreset {
+
+ private final String requestBodyStart;
+ private final String requestBodyQuery;
+ private final FORMAT format;
+
+ public enum FORMAT {
+ RESOURCE, SIMPLE;
+
+ public String value() {
+ return this.name().toLowerCase();
+ }
+ }
+ public PresetBaseAAICustomQuery(FORMAT format, String requestBodyStart, String requestBodyQuery) {
+ this.format = format;
+ this.requestBodyStart = requestBodyStart;
+ this.requestBodyQuery = requestBodyQuery;
+ }
+
+ @Override
+ public HttpMethod getReqMethod() {
+ return HttpMethod.PUT;
+ }
+
+ @Override
+ public String getReqPath() {
+ return getRootPath() + "/query";
+ }
+
+ @Override
+ public Map<String, List> getQueryParams() {
+ return ImmutableMap.of(
+ "format", Collections.singletonList(format.value())
+ );
+ }
+
+ @Override
+ public Object getRequestBody() {
+ return ImmutableMap.of(
+ "start", new String[] {requestBodyStart},
+ "query", requestBodyQuery
+ );
+ }
+
+}
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 dbc603c26..6b7fe1252 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,13 +1,31 @@
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.onap.simulator.presetGenerator.presets.scheduler.PresetDeleteSchedulerChangeManagement;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebElement;
@@ -15,32 +33,29 @@ 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.*;
+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 vid.automation.test.Constants;
-import vid.automation.test.infra.*;
+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.Input;
+import vid.automation.test.infra.SelectOption;
+import vid.automation.test.infra.Wait;
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";
+ public static final String SCHEDULED_ID = "0b87fe60-50b0-4bac-a0a7-49e951b0ba9e";
+
@Test
public void testLeftPanelChangeManagementButton() {
Assert.assertTrue(Wait.byText(Constants.SideMenu.VNF_CHANGES));
@@ -79,8 +94,10 @@ public class ChangeManagementTest extends VidBaseTestCase {
SelectOption.waitForOptionInSelect(subscriberName, "subscriberName");
ChangeManagementPage.selectSubscriberById(subscriberId);
Wait.angularHttpRequestsLoaded();
+
SelectOption.byIdAndVisibleText(Constants.ChangeManagement.newModalServiceTypeInputId, serviceType);
Wait.angularHttpRequestsLoaded();
+
SelectOption.byIdAndVisibleText(Constants.ChangeManagement.newModalVNFTypeInputId, vnfType);
Wait.angularHttpRequestsLoaded();
SelectOption.byIdAndVisibleText(Constants.ChangeManagement.newModalFromVNFVersionInputId, vnfSourceVersion);
@@ -161,16 +178,16 @@ public class ChangeManagementTest extends VidBaseTestCase {
SimulatorApi.clearAll();
SimulatorApi.registerExpectation(SimulatorApi.RegistrationStrategy.APPEND,
"changeManagement/ecompportal_getSessionSlotCheckInterval.json"
- , "changeManagement/get_aai_sub_details.json"
- , "changeManagement/get_sdc_catalog_services_2f80c596.json"
- , "changeManagement/get_service-design-and-creation.json"
- , "changeManagement/get_vnf_data_by_globalid_and_service_type.json"
- , "changeManagement/service-design-and-creation.json"
- , "changeManagement/mso_get_manual_task.json"
- , "changeManagement/mso_post_manual_task.json"
- , "changeManagement/mso_get_change_managements_scaleout.json"
+ , "changeManagement/get_aai_sub_details.json"
+ , "changeManagement/get_sdc_catalog_services_2f80c596.json"
+ , "changeManagement/get_service-design-and-creation.json"
+ , "changeManagement/get_vnf_data_by_globalid_and_service_type.json"
+ , "changeManagement/service-design-and-creation.json"
+ , "changeManagement/mso_get_manual_task.json"
+ , "changeManagement/mso_post_manual_task.json"
+ , "changeManagement/mso_get_change_managements_scaleout.json"
);
- SimulatorApi.registerExpectationFromPreset(new PresetAAIGetSubscribersGet(),SimulatorApi.RegistrationStrategy.APPEND);
+ SimulatorApi.registerExpectationFromPreset(new PresetAAIGetSubscribersGet(), SimulatorApi.RegistrationStrategy.APPEND);
registerDefaultTablesData();
resetGetServicesCache();
@@ -178,9 +195,9 @@ public class ChangeManagementTest extends VidBaseTestCase {
private void registerDefaultTablesData() {
SimulatorApi.registerExpectation(
- new String[] {"changeManagement/get_scheduler_details_short.json",
+ new String[]{"changeManagement/get_scheduler_details_short.json",
"changeManagement/mso_get_change_managements.json"
- ,"changeManagement/delete_scheduled_task.json"},
+ , "changeManagement/delete_scheduled_task.json"},
ImmutableMap.of(
"<SCHEDULE_ID>", SCHEDULED_ID,
"<IN_PROGRESS_DATE>", "Fri, 08 Sep 2017 19:34:32 GMT"), SimulatorApi.RegistrationStrategy.APPEND
@@ -259,7 +276,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
@Test
public void clickOnScheduledJob_SuccessfulMessageAppear() {
- SimulatorApi.registerExpectationFromPreset(new PresetDeleteSchedulerChangeManagement(),SimulatorApi.RegistrationStrategy.APPEND);
+ SimulatorApi.registerExpectationFromPreset(new PresetDeleteSchedulerChangeManagement(), SimulatorApi.RegistrationStrategy.APPEND);
ChangeManagementPage.openChangeManagementPage();
GeneralUIUtils.ultimateWait();
@@ -279,13 +296,14 @@ public class ChangeManagementTest extends VidBaseTestCase {
}
- private void clickAndAssertOnCancelButton(String scheduledID){
- Wait.waitByTestId("icon-status-"+ scheduledID, 5);
- Click.byTestId("icon-status-"+ scheduledID);
+ private void clickAndAssertOnCancelButton(String scheduledID) {
+ Wait.waitByTestId("icon-status-" + scheduledID, 5);
+ Click.byTestId("icon-status-" + scheduledID);
GeneralUIUtils.ultimateWait();
WebElement cancelPendingConfirmationMessage = Get.byTestId("btn-cancel-workflow");
- assertThat(cancelPendingConfirmationMessage.getText(),containsString("Are you sure you want to delete workflow"));
+ assertThat(cancelPendingConfirmationMessage.getText(), containsString("Are you sure you want to delete workflow"));
}
+
private void clickAndAssertClickOnCancelWorkflowButtonOnPendingPopUp() {
try {
@@ -293,14 +311,14 @@ public class ChangeManagementTest extends VidBaseTestCase {
GeneralUIUtils.ultimateWait();
Assert.assertTrue(Exists.byClassAndText(Constants.generalModalTitleClass, "Success"));
} finally {
- if (Exists.byClassAndText("modal-title", "Pending")){
+ if (Exists.byClassAndText("modal-title", "Pending")) {
Click.byClass("pull-right modal-close");
}
}
- Click.byClassAndVisibleText("btn","OK");
+ Click.byClassAndVisibleText("btn", "OK");
}
- private void assertCorrectJobDeleted (String vnfName){
+ private void assertCorrectJobDeleted(String vnfName) {
WebElement canceledScheduledJobRow = GeneralUIUtils.getWebElementByTestID("pending-table-cm-row");
String scheduledVnfName = ((RemoteWebElement) canceledScheduledJobRow).findElementsByTagName("td").get(1).getText();
String scheduledState = ((RemoteWebElement) canceledScheduledJobRow).findElementsByTagName("td").get(5).getText();
@@ -308,14 +326,14 @@ public class ChangeManagementTest extends VidBaseTestCase {
Assert.assertEquals("Deleted", scheduledState);
}
- private void assertAndCheckStatusCellOnDeletedSheduledJob(String scheduledId, String classString){
+ private void assertAndCheckStatusCellOnDeletedSheduledJob(String scheduledId, String classString) {
boolean isNotDisplayed = GeneralUIUtils.waitForElementInVisibilityByTestId("icon-status-" + scheduledId, 5);
Assert.assertTrue(isNotDisplayed);
}
- public void updateSimulatorWithParametersOfScheduledJod(String jasonFile){
+ public void updateSimulatorWithParametersOfScheduledJod(String jasonFile) {
SimulatorApi.registerExpectation(
- new String[] {"changeManagement/"+jasonFile},
+ new String[]{"changeManagement/" + jasonFile},
ImmutableMap.of("<SCHEDULE_ID>", SCHEDULED_ID), SimulatorApi.RegistrationStrategy.APPEND
);
}
@@ -330,7 +348,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
@FeatureTogglingTest(value = Features.FLAG_HANDLE_SO_WORKFLOWS, flagActive = false)
@Test
- public void testWorkflowVNFInPlaceSoftwareUpdateInWorkflowsListWhenExpected() {
+ public void testWorkflowVNFInPlaceSoftwareUpdateInWorkflowsListWhenExpected() {
List<String> workflows = getListOfWorkflowsFor(VNF_DATA_WITH_IN_PLACE.vnfName);
assertThat(workflows, hasItem(VNF_DATA_WITH_IN_PLACE.workflowName));
}
@@ -438,19 +456,18 @@ public class ChangeManagementTest extends VidBaseTestCase {
@DataProvider
public static Object[][] dataForUpdateWorkflowPartialWithInPlace() {
- return new Object[][] {
- { "1111", "22222", "33333" }
+ return new Object[][]{
+ {"1111", "22222", "33333"}
, {"8", "3t3MhTRqkyjB85o5NC9OacAw", "B.bJ6f7KYI6Wz-----DMR0.fyNM9r4"}
, {"78058488", "n", "WkH"}
};
}
-
- // Deleted testVidToMsoCallbackDataWithInPlaceSWUpdate test. It was using assertThatVidToMsoCallbackDataIsOk which is no longer valid.
+ // Deleted testVidToMsoCallbackDataWithInPlaceSWUpdate test. It was using assertThatVidToMsoCallbackDataIsOk which is no longer valid.
// Deleted testUploadConfigUpdateFile test. It was using assertThatVidToMsoCallbackDataIsOk which is no longer valid.
-
+ @FeatureTogglingTest(value = Features.FLAG_FLASH_CLOUD_REGION_AND_NF_ROLE_OPTIONAL_SEARCH, flagActive = false)
@Test
public void testUploadConfigUpdateNonCsvFile() {
String fileName = "non-valid.json";
@@ -470,7 +487,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
@DataProvider
public static Object[][] invalidCsvFiles() {
- return new Object[][] {
+ return new Object[][]{
{"emptyFile.csv"},
{"withoutPayload.csv"},
{"withoutConfigurationParameters.csv"},
@@ -544,15 +561,15 @@ public class ChangeManagementTest extends VidBaseTestCase {
public void testFinishedSectionIncludeUnlockedItem() {
ChangeManagementPage.openChangeManagementPage();
Click.byId(Constants.ChangeManagement.dashboardFinishedTabId);
- Assert.assertThat(Get.byClassAndText("vnf-name","Unlocked instance"),is(notNullValue()));
+ Assert.assertThat(Get.byClassAndText("vnf-name", "Unlocked instance"), is(notNullValue()));
}
@Test
- public void testMainDashboardTableContent () {
+ public void testMainDashboardTableContent() {
ChangeManagementPage.openChangeManagementPage();
GeneralUIUtils.ultimateWait();
List<WebElement> webElements = Get.multipleElementsByTestId(Constants.ChangeManagement.activeTableRowId);
- assertThat("List of pending workflows is empty",webElements,is(not(empty())));
+ assertThat("List of pending workflows is empty", webElements, is(not(empty())));
//TODO: After scheduler will be ready than we will examine if the content is valid.
}
@@ -567,11 +584,10 @@ public class ChangeManagementTest extends VidBaseTestCase {
GeneralUIUtils.ultimateWait();
-
List<WebElement> elements = Get.byClass(Constants.ChangeManagement.pendingIconClass);
Assert.assertTrue(elements != null && elements.size() > 0);
- ((JavascriptExecutor)getDriver()).executeScript("arguments[0].scrollIntoView();", elements.get(0));
+ ((JavascriptExecutor) getDriver()).executeScript("arguments[0].scrollIntoView();", elements.get(0));
elements.get(0).click();
@@ -592,7 +608,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
public void testOpenFailedStatusModal() {
ChangeManagementPage.openChangeManagementPage();
- if(!Exists.byClass(Constants.ChangeManagement.failedIconClass)) {
+ if (!Exists.byClass(Constants.ChangeManagement.failedIconClass)) {
//TODO: Create a job which will shown with status fail.
}
@@ -612,7 +628,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
public void testOpenInProgressStatusModal() {
ChangeManagementPage.openChangeManagementPage();
- if(!Exists.byClass(Constants.ChangeManagement.processIconClass)) {
+ if (!Exists.byClass(Constants.ChangeManagement.processIconClass)) {
//TODO: Create a job which will shown with status in-progress.
}
@@ -632,7 +648,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
public void testOpenAlertStatusModal() {
ChangeManagementPage.openChangeManagementPage();
- if(!Exists.byClass(Constants.ChangeManagement.alertIconClass)) {
+ if (!Exists.byClass(Constants.ChangeManagement.alertIconClass)) {
//TODO: Create a job which will shown with status alert.
}
@@ -652,7 +668,7 @@ public class ChangeManagementTest extends VidBaseTestCase {
public void testOpenPendingStatusModal() {
ChangeManagementPage.openChangeManagementPage();
- if(!Exists.byClass(Constants.ChangeManagement.pendingIconClass)) {
+ if (!Exists.byClass(Constants.ChangeManagement.pendingIconClass)) {
//TODO: Create a job which will shown with status pending.
}
@@ -696,13 +712,13 @@ public class ChangeManagementTest extends VidBaseTestCase {
GeneralUIUtils.ultimateWait();
List<WebElement> pendingRows = Get.multipleElementsByTestId(Constants.ChangeManagement.pendingTableRowId);
List<WebElement> activeRows = Get.multipleElementsByTestId(Constants.ChangeManagement.activeTableRowId);
- assertThat("The pending table has no content",pendingRows, is(not(empty())));
- assertThat("The active table has no content",activeRows, is(not(empty())));
+ assertThat("The pending table has no content", pendingRows, is(not(empty())));
+ assertThat("The active table has no content", activeRows, is(not(empty())));
Click.byTestId(Constants.ChangeManagement.refreshBtnTestId);
GeneralUIUtils.ultimateWait();
pendingRows = Get.multipleElementsByTestId(Constants.ChangeManagement.pendingTableRowId);
- assertThat("The pending table has no content",pendingRows, is(not(empty())));
- assertThat("The active table has no content",activeRows, is(not(empty())));
+ assertThat("The pending table has no content", pendingRows, is(not(empty())));
+ assertThat("The active table has no content", activeRows, is(not(empty())));
//return the register requests to the default state
registerDefaultTablesData();
}