aboutsummaryrefslogtreecommitdiffstats
path: root/vid-automation/src/main/java/vid/automation/test/sections
diff options
context:
space:
mode:
Diffstat (limited to 'vid-automation/src/main/java/vid/automation/test/sections')
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/BrowseASDCPage.java12
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/ChangeManagementPage.java15
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java21
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/CreationDialog.java8
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/LoginExternalPage.java29
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java24
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/SearchExistingPage.java77
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/SideMenu.java30
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java39
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java132
-rw-r--r--vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java84
11 files changed, 471 insertions, 0 deletions
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/BrowseASDCPage.java b/vid-automation/src/main/java/vid/automation/test/sections/BrowseASDCPage.java
new file mode 100644
index 000000000..f9a2e43a5
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/BrowseASDCPage.java
@@ -0,0 +1,12 @@
+package vid.automation.test.sections;
+
+import vid.automation.test.Constants;
+
+/**
+ * Created by itzikliderman on 13/06/2017.
+ */
+public class BrowseASDCPage extends VidBasePage {
+ public String generateInstanceName() {
+ return generateInstanceName(Constants.BrowseASDC.SERVICE_INSTANCE_NAME_PREFIX);
+ }
+}
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/ChangeManagementPage.java b/vid-automation/src/main/java/vid/automation/test/sections/ChangeManagementPage.java
new file mode 100644
index 000000000..bcf035c00
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/ChangeManagementPage.java
@@ -0,0 +1,15 @@
+package vid.automation.test.sections;
+
+import vid.automation.test.Constants;
+import vid.automation.test.infra.Click;
+
+public class ChangeManagementPage extends VidBasePage {
+ public static void openChangeManagementPage() {
+ Click.byText(Constants.SideMenu.VNF_CHANGES);
+ }
+
+ public static void openNewChangeManagementModal() {
+ ChangeManagementPage.openChangeManagementPage();
+ Click.byId(Constants.ChangeManagement.headlineNewButtonId);
+ }
+}
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
new file mode 100644
index 000000000..2eef9b3af
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/CreateNewInstancePage.java
@@ -0,0 +1,21 @@
+package vid.automation.test.sections;
+
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import vid.automation.test.Constants;
+import vid.automation.test.model.Service;
+
+/**
+ * Created by itzikliderman on 13/06/2017.
+ */
+public class CreateNewInstancePage extends VidBasePage {
+
+ public CreateNewInstancePage clickCloseButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.BrowseASDC.MSO_COMMIT_DIALOG_CLOSE_BUTTON, 30);
+ return this;
+ }
+
+ public String generateInstanceName() {
+ return generateInstanceName(Constants.CreateNewInstance.SERVICE_INSTANCE_NAME_PREFIX);
+ }
+
+}
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/CreationDialog.java b/vid-automation/src/main/java/vid/automation/test/sections/CreationDialog.java
new file mode 100644
index 000000000..fdc78d2e5
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/CreationDialog.java
@@ -0,0 +1,8 @@
+package vid.automation.test.sections;
+
+/**
+ * Created by itzikliderman on 31/07/2017.
+ */
+public class CreationDialog extends VidBasePage{
+
+}
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/LoginExternalPage.java b/vid-automation/src/main/java/vid/automation/test/sections/LoginExternalPage.java
new file mode 100644
index 000000000..c1053d2a5
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/LoginExternalPage.java
@@ -0,0 +1,29 @@
+package vid.automation.test.sections;
+
+import org.openecomp.sdc.ci.tests.datatypes.UserCredentials;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import org.openqa.selenium.By;
+import org.openqa.selenium.WebElement;
+import static org.junit.Assert.*;
+
+
+public class LoginExternalPage {
+
+
+ static private final String SUCCESSFUL_LOGIN_STRING_SEARCH = "Welcome to VID";
+
+ static void sendUserAndPasswordKeys(UserCredentials userCredentials) {
+ WebElement loginIdInputElem = GeneralUIUtils.getWebElementBy(By.name("loginId"));
+ loginIdInputElem.sendKeys(userCredentials.getUserId());
+ WebElement passwordInputElem = GeneralUIUtils.getWebElementBy(By.name("password"));
+ passwordInputElem.sendKeys(userCredentials.getPassword());
+ }
+
+ static public void performLoginExternal(UserCredentials userCredentials) {
+ sendUserAndPasswordKeys(userCredentials);
+ WebElement loginButton = GeneralUIUtils.getWebElementBy(By.id("loginBtn"), 30);
+ loginButton.click();
+ boolean isLoginSuccess = GeneralUIUtils.findAndWaitByText(SUCCESSFUL_LOGIN_STRING_SEARCH, 30);
+ assertTrue(isLoginSuccess);
+ }
+}
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
new file mode 100644
index 000000000..3f8061a78
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/PnfSearchAssociationPage.java
@@ -0,0 +1,24 @@
+package vid.automation.test.sections;
+
+import org.junit.Assert;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import org.openqa.selenium.WebElement;
+import vid.automation.test.Constants;
+
+public class PnfSearchAssociationPage extends VidBasePage {
+ public PnfSearchAssociationPage setPnfName(String pnfName){
+ setInputText(Constants.PnfAssociation.PNF_NAME_TEST_ID, pnfName);
+ return this;
+ }
+ public PnfSearchAssociationPage clickSearchButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.PnfAssociation.SEARCH_PNF_TEST_ID, 60);
+ return this;
+ }
+ public PnfSearchAssociationPage clickAssociateButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.PnfAssociation.ASSOCIATE_PNF_TEST_ID, 100);
+ return this;
+ }
+
+
+
+}
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/SearchExistingPage.java b/vid-automation/src/main/java/vid/automation/test/sections/SearchExistingPage.java
new file mode 100644
index 000000000..5fc4894e9
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/SearchExistingPage.java
@@ -0,0 +1,77 @@
+package vid.automation.test.sections;
+
+import org.junit.Assert;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import org.openqa.selenium.WebElement;
+import vid.automation.test.Constants;
+
+
+/**
+ * Created by pickjonathan on 10/07/2017.
+ */
+
+public class SearchExistingPage extends VidBasePage {
+
+ public SearchExistingPage() {}
+
+ public void selectSearchById(){
+ selectSearchBy(Constants.EditExistingInstance.SERVICE_INSTANCE_ID);
+ }
+
+ public void selectSearchByName(){
+ selectSearchBy(Constants.EditExistingInstance.SERVICE_INSTANCE_NAME);
+ }
+
+ public void selectSearchBy(String searchTypeOptionText) {
+ boolean findAndWaitByText = GeneralUIUtils.findAndWaitByText(Constants.EditExistingInstance.SELECT_SERVICE_INSTANCE, 30);
+ Assert.assertTrue(findAndWaitByText);
+ GeneralUIUtils.clickOnElementByText(Constants.EditExistingInstance.SELECT_SERVICE_INSTANCE, 30);
+
+ boolean isSearchByIdAvailable = GeneralUIUtils.findAndWaitByText(searchTypeOptionText, 30);
+ Assert.assertTrue(isSearchByIdAvailable);
+ GeneralUIUtils.clickOnElementByText(searchTypeOptionText, 30);
+ }
+
+ public void searchForInstanceByUuid(String uuid) {
+ selectSearchById();
+ startSearchByInstanceIdentifier(uuid);
+ }
+
+ private void startSearchByInstanceIdentifier(String text) {
+ WebElement textInputWebElement = GeneralUIUtils.getWebElementByTestID(Constants.EditExistingInstance.SEARCH_FOR_EXISTING_INSTANCES_INPUT, 30);
+ Assert.assertTrue(textInputWebElement != null);
+ textInputWebElement.sendKeys(text);
+ clickSubmitButton();
+ }
+
+ public void searchForInstanceByName(String name) {
+ selectSearchByName();
+ startSearchByInstanceIdentifier(name);
+ }
+
+ public void checkForEditButtons() {
+ boolean isDeleteVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.DELETE_VNF_BTN, 30);
+ Assert.assertFalse(isDeleteVisible);
+
+ boolean isAddVnfModuleVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.ADD_VNF_MODULE_DROPDOWN, 30);
+ Assert.assertFalse(isAddVnfModuleVisible);
+
+ boolean isAddCustomVnfModuleVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.ADD_CUSTOM_VNF_MODULE_DROPDOWN, 30);
+ Assert.assertFalse(isAddCustomVnfModuleVisible);
+
+ boolean isAddCustomVolumeGroupVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.ADD_CUSTOM_VOLUME_GROUP, 30);
+ Assert.assertFalse(isAddCustomVolumeGroupVisible);
+
+ boolean isAddVolumeGroupVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.ADD_VOLUME_GROUP, 30);
+ Assert.assertFalse(isAddVolumeGroupVisible);
+
+ boolean isDeleteVfModuleVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.DELETE_VF_MODULE, 30);
+ Assert.assertFalse(isDeleteVfModuleVisible);
+
+ boolean isDeleteVnfGroupVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.DELETE_VNF_VOLUME_GROUP, 30);
+ Assert.assertFalse(isDeleteVnfGroupVisible);
+
+ boolean isDeleteNetworkVisible = GeneralUIUtils.waitForElementInVisibilityByTestId(Constants.EditExistingInstance.DELETE_NETWORK);
+ Assert.assertFalse(isDeleteNetworkVisible);
+ }
+}
diff --git a/vid-automation/src/main/java/vid/automation/test/sections/SideMenu.java b/vid-automation/src/main/java/vid/automation/test/sections/SideMenu.java
new file mode 100644
index 000000000..8745001dd
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/SideMenu.java
@@ -0,0 +1,30 @@
+package vid.automation.test.sections;
+
+import org.junit.Assert;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import vid.automation.test.Constants;
+
+public class SideMenu {
+ public static void navigateToBrowseASDCPage() {
+ navigateToPage(Constants.SideMenu.BROWSE_ASDC_SERVICE_MODELS);
+ }
+
+ public static void navigateToSearchExistingPage() {
+ navigateToPage(Constants.SideMenu.SEARCH_EXISTING_SERVICE);
+ }
+
+ public static void navigateToCreateNewServicePage() {
+ navigateToPage(Constants.SideMenu.CREATE_NEW_SERVICE);
+ }
+
+ public static void navigateToTestEnvironmentsPage() {
+ navigateToPage(Constants.SideMenu.TEST_ENVIRONMENTS);
+ }
+
+ private static void navigateToPage(String PageName) {
+ boolean findAndWaitByText = GeneralUIUtils.findAndWaitByText(PageName, 30);
+ Assert.assertTrue(findAndWaitByText);
+ GeneralUIUtils.clickOnElementByText(PageName, 150);
+ GeneralUIUtils.ultimateWait();
+ }
+}
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
new file mode 100644
index 000000000..f63906323
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/TestEnvironmentPage.java
@@ -0,0 +1,39 @@
+package vid.automation.test.sections;
+
+import org.openecomp.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 static org.junit.Assert.assertEquals;
+
+public class TestEnvironmentPage extends VidBasePage {
+
+ public static void clickTestEnvironmentActivate(String envId) {
+ getTestEnvironmentActivationButton(envId).click();
+ }
+
+ public static void clickTestEnvironmentDeactivate(String envId) {
+ getTestEnvironmentDeactivationButton(envId).click();
+ }
+
+ public static WebElement getTestEnvironmentActivationButton(String envId) {
+ WebElement webElement = Get.byId(Constants.TestEnvironments.activateButtonIdPrefix + envId);
+ return webElement;
+ }
+
+ public static WebElement getTestEnvironmentDeactivationButton(String envId) {
+ WebElement webElement = Get.byId(Constants.TestEnvironments.deactivateButtonIdPrefix + envId);
+ return webElement;
+ }
+
+ public static WebElement getTestEnvironmentAttachButton(String envId) {
+ WebElement webElement = Get.byId(Constants.TestEnvironments.attachButtonIdPrefix + envId);
+ return webElement;
+ }
+}
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
new file mode 100644
index 000000000..6e0367edd
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/VidBasePage.java
@@ -0,0 +1,132 @@
+package vid.automation.test.sections;
+
+import org.junit.Assert;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import org.openqa.selenium.WebElement;
+import vid.automation.test.Constants;
+import vid.automation.test.infra.Click;
+import vid.automation.test.infra.SelectOption;
+import vid.automation.test.infra.Wait;
+
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+
+public class VidBasePage {
+
+ public VidBasePage setInstanceName(String name) {
+ setInputText(Constants.INSTANCE_NAME_SELECT_TESTS_ID, name);
+ return this;
+ }
+
+ public void generateAndSetInstanceName(String prefix) {
+ String instanceName = generateInstanceName(prefix);
+ setInstanceName(instanceName);
+ }
+
+ public VidBasePage setInputText(String inputTestsId, String text) {
+ WebElement instanceNameInput = GeneralUIUtils.getInputElement(inputTestsId);
+ instanceNameInput.sendKeys(text);
+ return this;
+ }
+
+ public String generateInstanceName(String prefix) {
+ SimpleDateFormat sdf = new SimpleDateFormat(Constants.BrowseASDC.DATE_FORMAT);
+ Date now = Calendar.getInstance().getTime();
+ return prefix + sdf.format(now);
+ }
+
+ public VidBasePage selectServiceTypeByName(String serviceType) {
+ SelectOption.byTestIdAndVisibleText(serviceType, Constants.SERVICE_TYPE_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public static void selectSubscriberById(String subscriberId) {
+ SelectOption.byValue(subscriberId, Constants.SUBSCRIBER_NAME_SELECT_TESTS_ID);
+ }
+
+ public VidBasePage selectProductFamily(String productFamily) {
+ SelectOption.byValue(productFamily, Constants.ViewEdit.PRODUCT_FAMILY_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public VidBasePage selectSuppressRollback(String shouldSuppress) {
+ SelectOption.byTestIdAndVisibleText(shouldSuppress, Constants.SUPPRESS_ROLLBACK_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public VidBasePage clickDeployServiceButtonByServiceUUID(String serviceUUID) {
+ setInputText(Constants.BROWSE_SEARCH, serviceUUID);
+ String elementTestId = Constants.DEPLOY_BUTTON_TESTS_ID_PREFIX + serviceUUID;
+ GeneralUIUtils.clickOnElementByTestId(elementTestId, 30);
+ GeneralUIUtils.ultimateWait();
+ return this;
+ }
+
+ public VidBasePage clickEditViewByInstanceId(String instanceId) {
+ String elementTestId = Constants.VIEW_EDIT_TEST_ID_PREFIX + instanceId;
+ GeneralUIUtils.clickOnElementByTestId(elementTestId, 100);
+ GeneralUIUtils.ultimateWait();
+ return this;
+ }
+
+ public VidBasePage clickSubmitButton() {
+ GeneralUIUtils.clickOnElementByText(Constants.SUBMIT_BUTTON_TEXT, 30);
+ return this;
+ }
+
+ public VidBasePage clickCancelButton() {
+ Click.byId(Constants.generalCancelButtonId);
+ return this;
+ }
+
+
+ public VidBasePage clickConfirmButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.CONFIRM_BUTTON_TESTS_ID, 30);
+ return this;
+ }
+
+ public VidBasePage clickCloseButton() {
+ GeneralUIUtils.clickOnElementByText(Constants.CLOSE_BUTTON_TEXT, 30);
+ return this;
+ }
+
+ public VidBasePage selectLcpRegion(String lcpRegion) {
+ SelectOption.byValue(lcpRegion, Constants.ViewEdit.LCP_REGION_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public VidBasePage selectTenant(String tenant) {
+ SelectOption.byValue(tenant, Constants.ViewEdit.TENANT_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public VidBasePage selectAicZone(String aicZone) {
+ SelectOption.byValue(aicZone, Constants.ViewEdit.AIC_ZONE_TEST_ID);
+ return this;
+ }
+
+ public void assertButtonState(String dataTestId, boolean shouldBeEnabled) {
+ GeneralUIUtils.ultimateWait();
+ WebElement webElement = GeneralUIUtils.getWebElementByTestID(dataTestId, 60);
+ boolean enabledElement= webElement.getAttribute("disabled")==null?true:false;
+ if(shouldBeEnabled) {
+ Assert.assertTrue(String.format(Constants.ViewEdit.ENABLE_ERROR_MESSAGE,dataTestId), enabledElement);
+ }else{
+ Assert.assertFalse(String.format(Constants.ViewEdit.DISABLE_ERROR_MESSAGE,dataTestId),enabledElement);
+ }
+
+ }
+ public VidBasePage assertMsoRequestModal(String statusMsg) {
+ boolean waitForTextResult = Wait.waitByClassAndText("status", statusMsg, 60);
+ Assert.assertTrue(statusMsg + " message didn't appear on time", waitForTextResult);
+
+ return this;
+ }
+
+ public VidBasePage refreshPage() {
+ GeneralUIUtils.getDriver().navigate().refresh();
+ return this;
+ }
+
+}
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
new file mode 100644
index 000000000..5f532d22a
--- /dev/null
+++ b/vid-automation/src/main/java/vid/automation/test/sections/ViewEditPage.java
@@ -0,0 +1,84 @@
+package vid.automation.test.sections;
+
+import org.junit.Assert;
+import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
+import org.openqa.selenium.By;
+import org.openqa.selenium.WebElement;
+import vid.automation.test.Constants;
+import vid.automation.test.infra.Get;
+import vid.automation.test.infra.SelectOption;
+import vid.automation.test.infra.Wait;
+
+/**
+ * Created by itzikliderman on 13/06/2017.
+ */
+public class ViewEditPage extends VidBasePage {
+ public ViewEditPage selectNodeInstanceToAdd(String vnfName) {
+ selectFromDropdownByTestId(Constants.ViewEdit.VNF_OPTION_TEST_ID_PREFIX + vnfName,
+ Constants.ViewEdit.ADD_VNF_BUTTON_TEST_ID);
+ return this;
+ }
+
+ public ViewEditPage selectVolumeGroupToAdd(String volumeGroupName) {
+ selectFromDropdownByTestId(Constants.ViewEdit.VOLUME_GROUP_OPTION_TEST_ID_PREFIX + volumeGroupName,
+ Constants.ViewEdit.ADD_VOLUME_GROUP_BUTTON_TEST_ID);
+ return this;
+ }
+
+ public ViewEditPage selectFromDropdownByText(String itemText, String dropdownButtonTestId) {
+ GeneralUIUtils.clickOnElementByTestId(dropdownButtonTestId, 30);
+ GeneralUIUtils.clickOnElementByText(itemText, 30);
+ return this;
+ }
+
+ public ViewEditPage selectFromDropdownByTestId(String itemTestId, String dropdownButtonTestId) {
+ GeneralUIUtils.clickOnElementByTestId(dropdownButtonTestId, 60);
+ Assert.assertTrue(String.format(Constants.ViewEdit.OPTION_IN_DROPDOWN_NOT_EXISTS,dropdownButtonTestId,"Add network instance"),GeneralUIUtils.getWebElementByTestID(itemTestId) != null );
+ GeneralUIUtils.clickOnElementByTestId(itemTestId, 60);
+ return this;
+ }
+
+ public ViewEditPage selectProductFamily(String productFamily){
+ SelectOption.byValue(productFamily, Constants.ViewEdit.PRODUCT_FAMILY_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public ViewEditPage selectLCPRegion(String lcpRegion){
+ SelectOption.byValue(lcpRegion, Constants.ViewEdit.LCP_REGION_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public ViewEditPage setLegacyRegion(String legacyRegionName){
+ setInputText(Constants.ViewEdit.LEGACY_REGION_INPUT_TESTS_ID, legacyRegionName);
+ return this;
+ }
+
+ public ViewEditPage selectTenant(String tenant){
+ SelectOption.byValue(tenant, Constants.ViewEdit.TENANT_SELECT_TESTS_ID);
+ return this;
+ }
+
+ public VidBasePage clickActivateButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID, 60);
+ return this;
+ }
+
+ public WebElement getPnf(String pnfName) {
+ WebElement pnfElement = Get.byClassAndText("tree-node", "PNF: " + pnfName);
+ Assert.assertNotNull("Pnf "+ pnfName +" not found under service instance", pnfElement);
+ return pnfElement;
+ }
+
+ public ViewEditPage clickDissociatePnfButton(String pnfName) {
+ WebElement pnfToDissociate = getPnf(pnfName);
+ WebElement dissociateBtn = pnfToDissociate.findElement(By.className(Constants.ViewEdit.DISSOCIATE_BTN_CLASS));
+ Assert.assertNotNull("Dissociate button not found for pnf " + pnfName, dissociateBtn);
+ dissociateBtn.click();
+ return this;
+ }
+
+ public VidBasePage clickDeactivateButton() {
+ GeneralUIUtils.clickOnElementByTestId(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID, 30);
+ return this;
+ }
+}