mirror of
https://repository.entgra.net/community/product-iots.git
synced 2025-09-16 23:32:19 +00:00
Merge pull request #1454 from menakaj/master
Changes and Improvements as per the code review.
This commit is contained in:
commit
e10841587d
@ -23,7 +23,6 @@ import org.wso2.carbon.automation.engine.annotations.ExecutionEnvironment;
|
||||
import org.wso2.carbon.automation.engine.context.AutomationContext;
|
||||
import org.wso2.carbon.automation.engine.context.ContextXpathConstants;
|
||||
import org.wso2.carbon.automation.engine.context.TestUserMode;
|
||||
import org.wso2.carbon.automation.engine.exceptions.AutomationFrameworkException;
|
||||
import org.wso2.carbon.automation.engine.extensions.ExecutionListenerExtension;
|
||||
import org.wso2.carbon.automation.extensions.ExtensionConstants;
|
||||
import org.wso2.carbon.automation.extensions.servers.carbonserver.CarbonServerExtension;
|
||||
@ -40,48 +39,43 @@ public class AnalyticsServerExtension extends ExecutionListenerExtension {
|
||||
private static final Log log = LogFactory.getLog(CarbonServerExtension.class);
|
||||
private String executionEnvironment;
|
||||
private AutomationContext automationContext;
|
||||
|
||||
private final String ANALYTICS_PORT_OFFSET = "2";
|
||||
|
||||
@Override
|
||||
public void initiate() throws AutomationFrameworkException {
|
||||
public void initiate() {
|
||||
try {
|
||||
automationContext = new AutomationContext("IOT", TestUserMode.SUPER_TENANT_USER);
|
||||
if (getParameters().get(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND) == null) {
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, "2");
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, ANALYTICS_PORT_OFFSET);
|
||||
}
|
||||
serverManager = new CustomTestServerManager(getAutomationContext(), null, getParameters());
|
||||
executionEnvironment =
|
||||
automationContext.getConfigurationValue(ContextXpathConstants.EXECUTION_ENVIRONMENT);
|
||||
|
||||
} catch (XPathExpressionException e) {
|
||||
handleException("Error while initiating test environment", e);
|
||||
throw new RuntimeException("Error while initiating test environment", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionStart() throws AutomationFrameworkException {
|
||||
public void onExecutionStart() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
String carbonHome = serverManager.startServer("analytics");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to start carbon server ", e);
|
||||
throw new RuntimeException("Fail to start carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionFinish() throws AutomationFrameworkException {
|
||||
public void onExecutionFinish() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
serverManager.stopServer();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to stop carbon server ", e);
|
||||
throw new RuntimeException("Fail to stop carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
private static void handleException(String msg, Exception e) {
|
||||
log.error(msg, e);
|
||||
throw new RuntimeException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -23,7 +23,6 @@ import org.wso2.carbon.automation.engine.annotations.ExecutionEnvironment;
|
||||
import org.wso2.carbon.automation.engine.context.AutomationContext;
|
||||
import org.wso2.carbon.automation.engine.context.ContextXpathConstants;
|
||||
import org.wso2.carbon.automation.engine.context.TestUserMode;
|
||||
import org.wso2.carbon.automation.engine.exceptions.AutomationFrameworkException;
|
||||
import org.wso2.carbon.automation.engine.extensions.ExecutionListenerExtension;
|
||||
import org.wso2.carbon.automation.extensions.ExtensionConstants;
|
||||
import org.wso2.carbon.automation.extensions.servers.carbonserver.CarbonServerExtension;
|
||||
@ -40,26 +39,26 @@ public class BrokerServerExtension extends ExecutionListenerExtension {
|
||||
private static final Log log = LogFactory.getLog(CarbonServerExtension.class);
|
||||
private String executionEnvironment;
|
||||
private AutomationContext automationContext;
|
||||
|
||||
private final String BROKER_PORT_OFFSET = "3";
|
||||
|
||||
@Override
|
||||
public void initiate() throws AutomationFrameworkException {
|
||||
public void initiate() {
|
||||
try {
|
||||
automationContext = new AutomationContext("IOT", TestUserMode.SUPER_TENANT_USER);
|
||||
if (getParameters().get(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND) == null) {
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, "3");
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, BROKER_PORT_OFFSET);
|
||||
}
|
||||
serverManager = new CustomTestServerManager(getAutomationContext(), null, getParameters());
|
||||
executionEnvironment =
|
||||
automationContext.getConfigurationValue(ContextXpathConstants.EXECUTION_ENVIRONMENT);
|
||||
|
||||
} catch (XPathExpressionException e) {
|
||||
handleException("Error while initiating test environment", e);
|
||||
throw new RuntimeException("Error while initiating test environment", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionStart() throws AutomationFrameworkException {
|
||||
public void onExecutionStart() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
String carbonHome = serverManager.startServer("broker");
|
||||
@ -67,23 +66,18 @@ public class BrokerServerExtension extends ExecutionListenerExtension {
|
||||
System.setProperty(ExtensionConstants.CARBON_HOME, carbonHome);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to start carbon server ", e);
|
||||
throw new RuntimeException("Fail to start carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionFinish() throws AutomationFrameworkException {
|
||||
public void onExecutionFinish() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
serverManager.stopServer();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to stop carbon server ", e);
|
||||
throw new RuntimeException("Fail to stop carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
private static void handleException(String msg, Exception e) {
|
||||
log.error(msg, e);
|
||||
throw new RuntimeException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -80,7 +80,6 @@ public class CustomTestServerManager {
|
||||
|
||||
}
|
||||
|
||||
|
||||
public Map<String, String> getCommands() {
|
||||
return commandMap;
|
||||
}
|
||||
@ -181,6 +180,4 @@ public class CustomTestServerManager {
|
||||
public void stopServer() throws AutomationFrameworkException {
|
||||
carbonServer.serverShutdown(portOffset);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -23,7 +23,6 @@ import org.wso2.carbon.automation.engine.annotations.ExecutionEnvironment;
|
||||
import org.wso2.carbon.automation.engine.context.AutomationContext;
|
||||
import org.wso2.carbon.automation.engine.context.ContextXpathConstants;
|
||||
import org.wso2.carbon.automation.engine.context.TestUserMode;
|
||||
import org.wso2.carbon.automation.engine.exceptions.AutomationFrameworkException;
|
||||
import org.wso2.carbon.automation.engine.extensions.ExecutionListenerExtension;
|
||||
import org.wso2.carbon.automation.extensions.ExtensionConstants;
|
||||
import org.wso2.carbon.automation.extensions.servers.carbonserver.CarbonServerExtension;
|
||||
@ -40,26 +39,26 @@ public class IOTServerExtension extends ExecutionListenerExtension {
|
||||
private static final Log log = LogFactory.getLog(CarbonServerExtension.class);
|
||||
private String executionEnvironment;
|
||||
private AutomationContext automationContext;
|
||||
|
||||
private final String IOT_CORE_PORT_OFFSET = "0";
|
||||
|
||||
@Override
|
||||
public void initiate() throws AutomationFrameworkException {
|
||||
public void initiate() {
|
||||
try {
|
||||
automationContext = new AutomationContext("IOT", TestUserMode.SUPER_TENANT_USER);
|
||||
if (getParameters().get(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND) == null) {
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, "0");
|
||||
getParameters().put(ExtensionConstants.SERVER_STARTUP_PORT_OFFSET_COMMAND, IOT_CORE_PORT_OFFSET);
|
||||
}
|
||||
serverManager = new CustomTestServerManager(getAutomationContext(), null, getParameters());
|
||||
executionEnvironment =
|
||||
automationContext.getConfigurationValue(ContextXpathConstants.EXECUTION_ENVIRONMENT);
|
||||
|
||||
} catch (XPathExpressionException e) {
|
||||
handleException("Error while initiating test environment", e);
|
||||
throw new RuntimeException("Error while initiating test environment", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionStart() throws AutomationFrameworkException {
|
||||
public void onExecutionStart() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
String carbonHome = serverManager.startServer("core");
|
||||
@ -70,23 +69,18 @@ public class IOTServerExtension extends ExecutionListenerExtension {
|
||||
Thread.sleep(30000);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to start carbon server ", e);
|
||||
throw new RuntimeException("Fail to start carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExecutionFinish() throws AutomationFrameworkException {
|
||||
public void onExecutionFinish() {
|
||||
try {
|
||||
if (executionEnvironment.equalsIgnoreCase(ExecutionEnvironment.STANDALONE.name())) {
|
||||
serverManager.stopServer();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
handleException("Fail to stop carbon server ", e);
|
||||
throw new RuntimeException("Fail to stop carbon server ", e);
|
||||
}
|
||||
}
|
||||
|
||||
private static void handleException(String msg, Exception e) {
|
||||
log.error(msg, e);
|
||||
throw new RuntimeException(msg, e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,5 +45,4 @@ public class UIUtils {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -80,11 +80,11 @@ public class DevicesPage {
|
||||
*/
|
||||
public ConnectedCupDeviceViewPage viewDevice(String deviceName) throws IOException {
|
||||
WebElement deviceTable = driver.findElement(By.xpath(uiElementMapper.getElement("iot.devices.table.xpath")));
|
||||
List<WebElement> data = deviceTable.findElements(By.cssSelector("a"));
|
||||
for (WebElement e : data) {
|
||||
String s = getLink(e, "/device/connectedcup?id=");
|
||||
if (s != null) {
|
||||
driver.get(s);
|
||||
List<WebElement> anchors = deviceTable.findElements(By.cssSelector("a"));
|
||||
for (WebElement element : anchors) {
|
||||
String connectedCupLink = getLink(element, "/device/connectedcup?id=");
|
||||
if (connectedCupLink != null) {
|
||||
driver.get(connectedCupLink);
|
||||
return new ConnectedCupDeviceViewPage(driver, deviceName);
|
||||
}
|
||||
}
|
||||
@ -100,12 +100,11 @@ public class DevicesPage {
|
||||
private String getLink(WebElement element, String... lookupText) {
|
||||
String link = element.getAttribute("href");
|
||||
boolean check = true;
|
||||
for (String s : lookupText) {
|
||||
if (!link.contains(s)) {
|
||||
for (String text : lookupText) {
|
||||
if (!link.contains(text)) {
|
||||
check = false;
|
||||
}
|
||||
}
|
||||
return check ? link : null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -81,9 +81,8 @@ public class EnrollDevicePage {
|
||||
tryBtn.click();
|
||||
return new ConnectedCupDeviceTypeViewPage(driver);
|
||||
} else {
|
||||
log.error("Element not found...........................");
|
||||
log.error("Element not found!");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,3 +1,20 @@
|
||||
/*
|
||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||
* Version 2.0 (the "License"); you may not use this file except
|
||||
* in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package org.wso2.iot.integration.ui.pages.error;
|
||||
|
||||
import org.openqa.selenium.WebDriver;
|
||||
@ -24,7 +41,6 @@ public class IOTErrorPage {
|
||||
throw new IllegalStateException("This is not the Error page");
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isErrorPresent() {
|
||||
return this.isErrorPage;
|
||||
}
|
||||
|
||||
@ -60,5 +60,4 @@ public class Graph {
|
||||
return String.format("The graph for graph id : %s, X - axis : %s, Y - axis : %s, legend : %s ", graphId,
|
||||
xAxis, yAxis, legend);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -47,7 +47,6 @@ public class DeviceAddGroupPage {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* This method performs creation of a new device group.
|
||||
* @param name : The group name that is need to be created.
|
||||
@ -91,5 +90,4 @@ public class DeviceAddGroupPage {
|
||||
return driver.findElement(By.xpath(
|
||||
uiElementMapper.getElement("iot.device.groups.add.emptyfrom.error"))).getText();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -73,5 +73,4 @@ public class DeviceGroupsPage {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -132,6 +132,5 @@ public class IOTAdminDashboard {
|
||||
driver.findElement(By.xpath(uiElementMapper.getElement("iot.admin.device.viewBtn.xpath"))).click();
|
||||
return new DevicesPage(driver);
|
||||
}
|
||||
|
||||
//ToDo : Need to add policy methods
|
||||
}
|
||||
|
||||
@ -57,7 +57,6 @@ public class IOTHomePage {
|
||||
return name.contains(uiElementMapper.getElement("iot.user.login.username"));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Performs the logout function.
|
||||
* @return : IOT login page.
|
||||
@ -90,7 +89,5 @@ public class IOTHomePage {
|
||||
driver.findElement(By.xpath("iot.device.viewGroup.empty.addGroup.xpath")).click();
|
||||
return new DeviceAddGroupPage(driver);
|
||||
}
|
||||
|
||||
//ToDo : To add policies
|
||||
|
||||
}
|
||||
|
||||
@ -101,5 +101,4 @@ public class LoginPage {
|
||||
registerLink.click();
|
||||
return new NewUserRegisterPage(driver);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -110,5 +110,4 @@ public class ConnectedCupDeviceInterface {
|
||||
Action action = move.dragAndDropBy(slider, 0, val).build();
|
||||
action.perform();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@
|
||||
*/
|
||||
package org.wso2.iot.integration.ui.pages.samples;
|
||||
|
||||
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.WebDriver;
|
||||
import org.openqa.selenium.WebElement;
|
||||
@ -79,5 +78,4 @@ public class ConnectedCupDeviceTypeViewPage {
|
||||
return driver.findElement(By.xpath(
|
||||
uiElementMapper.getElement("iot.sample.connectedcup.page.title"))).getText().contains("Connected Cup");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -170,5 +170,4 @@ public class ConnectedCupDeviceViewPage {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -27,7 +27,6 @@ import org.wso2.iot.integration.ui.pages.UIElementMapper;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
|
||||
/**
|
||||
* This class represents the add user page of the IOT server.
|
||||
*/
|
||||
@ -76,5 +75,4 @@ public class AddUserPage {
|
||||
|
||||
return new UserAddedConfirmationPage(driver);
|
||||
}
|
||||
|
||||
}
|
||||
@ -48,5 +48,4 @@ public class EditUserPage {
|
||||
public void editUser(String password, String firstName, String lastName) {
|
||||
driver.findElement(By.xpath(uiElementMapper.getElement("iot.user.add.input.password.xpath")));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -127,5 +127,4 @@ public class NewUserRegisterPage {
|
||||
passwordField.clear();
|
||||
passwordConfirmationField.clear();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -33,5 +33,4 @@ public class UserAddedConfirmationPage {
|
||||
|
||||
driver.findElement(By.xpath(uiElementMapper.getElement("iot.admin.addUser.view.btn.xpath"))).click();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -64,5 +64,4 @@ public class UserListingPage {
|
||||
|
||||
return new UserListingPage(driver);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -43,5 +43,4 @@ public class ViewUserPage {
|
||||
throw new IllegalStateException("This is not the User view page");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user