1 package vid.automation.test.test;
3 import org.junit.Assert;
4 import org.junit.Before;
5 import org.openqa.selenium.WebElement;
6 import org.testng.annotations.Test;
7 import vid.automation.test.Constants;
8 import vid.automation.test.infra.Exists;
9 import vid.automation.test.infra.Get;
10 import vid.automation.test.infra.Wait;
11 import vid.automation.test.model.User;
12 import vid.automation.test.sections.ViewEditPage;
13 import vid.automation.test.services.BulkRegistration;
14 import vid.automation.test.services.SimulatorApi;
15 import vid.automation.test.services.UsersService;
17 import java.io.IOException;
18 import java.util.Arrays;
19 import java.util.List;
21 public class ViewEditServiceInstanceTest extends VidBaseTestCase {
23 private ViewEditPage viewEditPage = new ViewEditPage();
24 private UsersService usersService = new UsersService();
25 private String serviceInstanceId = "3f93c7cb-2fd0-4557-9514-e189b7b04f9d";
26 private String serviceInstanceId2 ="f36f5734-e9df-4fbf-9f35-61be13f028a1";
27 private final String DEACTIVATE_ACTION = "deactivate";
28 private final String ACTIVATE_ACTION = "activate";
29 private List<String> pnfs = Arrays.asList("SANITY6785cce9", "tesai371ve2");
31 public ViewEditServiceInstanceTest() throws IOException { }
34 public void testGetAssociatedPnfsForServiceInstance() {
35 SimulatorApi.clearAll();
36 BulkRegistration.searchExistingServiceInstance();
37 BulkRegistration.getAssociatedPnfs();
39 goToExistingInstanceById(serviceInstanceId);
40 for (String pnf: pnfs) {
41 viewEditPage.getPnf(pnf);
46 public void testPnfsNotExistForServiceInstance() {
47 SimulatorApi.clearAll();
48 BulkRegistration.searchExistingServiceInstance();
50 goToExistingInstanceById(serviceInstanceId);
54 public void testActivateServiceInstance()throws Exception {
55 SimulatorApi.clearAll();
56 BulkRegistration.searchExistingServiceInstance("Created");
57 BulkRegistration.activateServiceInstance(ACTIVATE_ACTION);
58 goToExistingInstanceById(serviceInstanceId);
59 viewEditPage.assertButtonState(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID,true);
60 viewEditPage.assertButtonState(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID,false);
61 viewEditPage.clickActivateButton();
62 viewEditPage.assertMsoRequestModal("COMPLETE - Success");
63 viewEditPage.clickCloseButton();
67 public void testActivateServiceInstanceError()throws Exception {
68 SimulatorApi.clearAll();
69 BulkRegistration.searchExistingServiceInstance("Created");
70 BulkRegistration.activateServiceInstanceError(ACTIVATE_ACTION);
71 goToExistingInstanceById(serviceInstanceId);
72 viewEditPage.assertButtonState(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID,true);
73 viewEditPage.assertButtonState(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID,false);
74 viewEditPage.clickActivateButton();
75 viewEditPage.assertMsoRequestModal("Error");
76 viewEditPage.clickCloseButton();
79 public void testDeactivateServiceInstance(){
80 SimulatorApi.clearAll();
81 BulkRegistration.searchExistingServiceInstance("Active");
82 BulkRegistration.activateServiceInstance(DEACTIVATE_ACTION);
83 goToExistingInstanceById(serviceInstanceId);
84 viewEditPage.assertButtonState(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID,true);
85 viewEditPage.assertButtonState(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID,false);
86 viewEditPage.clickDeactivateButton();
87 viewEditPage.assertMsoRequestModal("COMPLETE - Success");
88 SimulatorApi.clearAll();
89 BulkRegistration.searchExistingServiceInstance("PendingDelete");
90 BulkRegistration.activateServiceInstance(ACTIVATE_ACTION);
91 viewEditPage.clickCloseButton();
92 viewEditPage.assertButtonState(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID,true);
93 viewEditPage.assertButtonState(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID,false);
97 public void testDeactivateServiceInstanceError()throws Exception {
98 SimulatorApi.clearAll();
99 BulkRegistration.searchExistingServiceInstance("Active");
100 BulkRegistration.activateServiceInstanceError(DEACTIVATE_ACTION);
101 goToExistingInstanceById(serviceInstanceId);
102 viewEditPage.assertButtonState(Constants.ViewEdit.ACTIVATE_BUTTON_TEST_ID,false);
103 viewEditPage.assertButtonState(Constants.ViewEdit.DEACTIVATE_BUTTON_TEST_ID,true);
104 viewEditPage.clickDeactivateButton();
105 viewEditPage.assertMsoRequestModal("Error");
106 viewEditPage.clickCloseButton();
109 public void testSuccessDissociatePnfFromServiceInstance() throws Exception {
110 SimulatorApi.clearAll();
111 BulkRegistration.searchExistingServiceInstance();
112 BulkRegistration.getAssociatedPnfs();
113 BulkRegistration.dissociatePnf();
114 goToExistingInstanceById(serviceInstanceId);
115 dissociatePnf(pnfs.get(0)); //SANITY6785cce9
116 viewEditPage.assertMsoRequestModal("COMPLETE - Success");
117 viewEditPage.clickCloseButton();
121 public void testFailDissociatePnfFromServiceInstance() throws Exception {
122 SimulatorApi.clearAll();
123 BulkRegistration.searchExistingServiceInstance();
124 BulkRegistration.getAssociatedPnfs();
125 SimulatorApi.registerExpectation(Constants.RegisterToSimulator.pProbe.REMOVE_PNF_RELATIONSHIP_ERROR);
127 goToExistingInstanceById(serviceInstanceId);
128 dissociatePnf(pnfs.get(0)); //SANITY6785cce9
129 viewEditPage.assertMsoRequestModal("Error");
130 viewEditPage.clickCloseButton();
133 private void assertNoPnfExists() {
134 WebElement pnfElement = viewEditPage.getPnf("");
135 Assert.assertNull("Pnf found under service instance", pnfElement);
138 private void dissociatePnf(String pnfName) throws InterruptedException {
139 viewEditPage.clickDissociatePnfButton(pnfName);
140 assertDissociateConfirmModal(pnfName);
143 private void assertDissociateConfirmModal(String pnfName) {
144 Wait.modalToBeDisplayed();
145 Assert.assertTrue(Exists.modal());
146 Assert.assertTrue(Exists.byCssSelectorAndText(".modal-body span", String.format(Constants.ViewEdit.DISSOCIATE_CONFIRM_MODAL_TEXT, pnfName)));
147 WebElement confirmBtn = Get.byId(Constants.ViewEdit.DISSOCIATE_CONFIRM_MODAL_BTN_ID);
148 Assert.assertNotNull(confirmBtn);
150 Wait.modalToDisappear();
153 public void before() throws Exception {
154 User user = usersService.getUser(Constants.Users.USP_VOICE_VIRTUAL_USP);
155 relogin(user.credentials);