Browse Source

add new cases

pull/8526/head
Seraphym-Tuhai 4 years ago
parent
commit
057e258227
  1. 85
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/DevicePageElements.java
  2. 45
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/DevicePageHelper.java
  3. 88
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/devicessmoke/CreateDeviceTest.java
  4. 179
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/devicessmoke/EditDeviceTest.java
  5. 3
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/Const.java
  6. 10
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/DataProviderCredential.java
  7. 35
      msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/EntityPrototypes.java

85
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/DevicePageElements.java

@ -29,7 +29,7 @@ public class DevicePageElements extends OtherPageElementsHelper {
private static final String ASSIGN_TO_CUSTOMER_BTN = "//mat-cell[contains(@class,'name')]/span[text()='%s']" +
"/ancestor::mat-row//mat-icon[contains(text(),'assignment_ind')]/parent::button";
private static final String CHOOSE_CUSTOMER_FOR_ASSIGN_FIELD = "//input[@formcontrolname='entity']";
private static final String CUSTOMER_FROM_ASSIGN_DROPDOWN = "//div[@role = 'listbox']//span[text() = '%s']";
private static final String ENTITY_FROM_DROPDOWN = "//div[@role = 'listbox']//span[text() = '%s']";
private static final String CLOSE_DEVICE_DETAILS_VIEW = "//header//mat-icon[contains(text(),'close')]/parent::button";
private static final String SUBMIT_ASSIGN_TO_CUSTOMER_BTN = "//button[@type='submit']";
private static final String ADD_DEVICE_BTN = "//mat-icon[text() = 'insert_drive_file']/parent::button";
@ -38,6 +38,21 @@ public class DevicePageElements extends OtherPageElementsHelper {
private static final String DESCRIPTION_FIELD_CREATE_VIEW = "//tb-device-wizard//textarea[@formcontrolname='description']";
private static final String ADD_DEVICE_VIEW = "//tb-device-wizard";
private static final String DELETE_BTN_DETAILS_TAB = "//span[contains(text(),'Delete device')]/parent::button";
private static final String CHECKBOX_GATEWAY_EDIT = "//mat-checkbox[@formcontrolname='gateway']//label";
private static final String CHECKBOX_GATEWAY_CREATE = "//tb-device-wizard//mat-checkbox[@formcontrolname='gateway']//label";
private static final String CHECKBOX_OVERWRITE_ACTIVITY_TIME_EDIT = "//mat-checkbox[@formcontrolname='overwriteActivityTime']//label";
private static final String CHECKBOX_OVERWRITE_ACTIVITY_TIME_CREATE = "//tb-device-wizard//mat-checkbox[@formcontrolname='overwriteActivityTime']//label";
private static final String CHECKBOX_GATEWAY_DETAILS = "//mat-checkbox[@formcontrolname='gateway']//input";
private static final String CHECKBOX_GATEWAY_PAGE = DEVICE + "/ancestor::mat-row//mat-cell[contains(@class,'cdk-column-gateway')]//mat-icon[text() = 'check_box']";
private static final String CHECKBOX_OVERWRITE_ACTIVITY_TIME_DETAILS = "//mat-checkbox[@formcontrolname='overwriteActivityTime']//input";
private static final String CLEAR_PROFILE_FIELD_BTN = "//button[@aria-label='Clear']";
private static final String DEVICE_PROFILE_REDIRECTED_BTN = "//a[@aria-label='Open device profile']";
private static final String DEVICE_LABEL_FIELD_CREATE = "//tb-device-wizard//input[@formcontrolname='label']";
private static final String DEVICE_LABEL_PAGE = DEVICE + "/ancestor::mat-row//mat-cell[contains(@class,'cdk-column-label')]/span";
private static final String DEVICE_CUSTOMER_PAGE = DEVICE + "/ancestor::mat-row//mat-cell[contains(@class,'cdk-column-customerTitle')]/span";
private static final String CUSTOMER_OPTION_BNT = "//div[text() = 'Customer']/ancestor::mat-step-header";
private static final String ASSIGN_ON_CUSTOMER_FIELD = "//input[@formcontrolname='entity']";
private static final String DEVICE_LABEL_EDIT = "//input[@formcontrolname='label']";
public WebElement device(String deviceName) {
return waitUntilElementToBeClickable(String.format(DEVICE, deviceName));
@ -59,8 +74,8 @@ public class DevicePageElements extends OtherPageElementsHelper {
return waitUntilElementToBeClickable(CHOOSE_CUSTOMER_FOR_ASSIGN_FIELD);
}
public WebElement customerFromAssignDropdown(String customerTitle) {
return waitUntilElementToBeClickable(String.format(CUSTOMER_FROM_ASSIGN_DROPDOWN, customerTitle));
public WebElement entityFromDropdown(String customerTitle) {
return waitUntilElementToBeClickable(String.format(ENTITY_FROM_DROPDOWN, customerTitle));
}
public WebElement closeDeviceDetailsViewBtn() {
@ -94,4 +109,68 @@ public class DevicePageElements extends OtherPageElementsHelper {
public WebElement deleteBtnDetailsTab() {
return waitUntilElementToBeClickable(DELETE_BTN_DETAILS_TAB);
}
public WebElement checkboxGatewayEdit() {
return waitUntilElementToBeClickable(CHECKBOX_GATEWAY_EDIT);
}
public WebElement checkboxGatewayCreate() {
return waitUntilElementToBeClickable(CHECKBOX_GATEWAY_CREATE);
}
public WebElement checkboxOverwriteActivityTimeEdit() {
return waitUntilElementToBeClickable(CHECKBOX_OVERWRITE_ACTIVITY_TIME_EDIT);
}
public WebElement checkboxOverwriteActivityTimeCreate() {
return waitUntilElementToBeClickable(CHECKBOX_OVERWRITE_ACTIVITY_TIME_CREATE);
}
public WebElement checkboxGatewayDetailsTab() {
return waitUntilPresenceOfElementLocated(CHECKBOX_GATEWAY_DETAILS);
}
public WebElement checkboxGatewayPage(String deviceName) {
return waitUntilPresenceOfElementLocated(String.format(CHECKBOX_GATEWAY_PAGE, deviceName));
}
public WebElement checkboxOverwriteActivityTimeDetails() {
return waitUntilPresenceOfElementLocated(CHECKBOX_OVERWRITE_ACTIVITY_TIME_DETAILS);
}
public WebElement clearProfileFieldBtn() {
return waitUntilElementToBeClickable(CLEAR_PROFILE_FIELD_BTN);
}
public WebElement deviceProfileRedirectedBtn() {
return waitUntilElementToBeClickable(DEVICE_PROFILE_REDIRECTED_BTN);
}
public WebElement deviceLabelFieldCreate() {
return waitUntilElementToBeClickable(DEVICE_LABEL_FIELD_CREATE);
}
public WebElement deviceLabelOnPage(String deviceName) {
return waitUntilVisibilityOfElementLocated(String.format(DEVICE_LABEL_PAGE, deviceName));
}
public WebElement customerOptionBtn() {
return waitUntilElementToBeClickable(CUSTOMER_OPTION_BNT);
}
public WebElement assignOnCustomerField() {
return waitUntilElementToBeClickable(ASSIGN_ON_CUSTOMER_FIELD);
}
public WebElement deviceCustomerOnPage(String deviceName) {
return waitUntilVisibilityOfElementLocated(String.format(DEVICE_CUSTOMER_PAGE, deviceName));
}
public WebElement deviceLabelEditField() {
return waitUntilElementToBeClickable(DEVICE_LABEL_EDIT);
}
public WebElement deviceLabelDetailsField() {
return waitUntilVisibilityOfElementLocated(DEVICE_LABEL_EDIT);
}
}

45
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/DevicePageHelper.java

@ -22,6 +22,9 @@ public class DevicePageHelper extends DevicePageElements {
super(driver);
}
private String description;
private String label;
public void openDeviceAlarms(String deviceName) {
if (!deviceDetailsView().isDisplayed()) {
device(deviceName).click();
@ -31,7 +34,7 @@ public class DevicePageHelper extends DevicePageElements {
public void assignToCustomer(String customerTitle) {
chooseCustomerForAssignField().click();
customerFromAssignDropdown(customerTitle).click();
entityFromDropdown(customerTitle).click();
submitAssignToCustomerBtn().click();
}
@ -41,13 +44,15 @@ public class DevicePageHelper extends DevicePageElements {
}
public void enterName(String deviceName) {
nameField().click();
nameField().sendKeys(deviceName);
enterText(nameField(), deviceName);
}
public void enterDescription(String description) {
descriptionFieldCreateField().click();
descriptionFieldCreateField().sendKeys(description);
enterText(descriptionFieldCreateField(), description);
}
public void enterLabel(String label) {
enterText(deviceLabelFieldCreate(), label);
}
public void deleteDeviceByRightSideBtn(String deviceName) {
@ -59,4 +64,34 @@ public class DevicePageHelper extends DevicePageElements {
deleteBtnDetailsTab().click();
warningPopUpYesBtn().click();
}
public void setDescription() {
scrollToElement(descriptionEntityView());
description = descriptionEntityView().getAttribute("value");
}
public void setLabel() {
label = deviceLabelDetailsField().getAttribute("value");
}
public String getDescription() {
return description;
}
public String getLabel() {
return label;
}
public void changeDeviceProfile(String deviceProfileName) {
clearProfileFieldBtn().click();
entityFromDropdown(deviceProfileName).click();
}
public void assignOnCustomer(String customerTitle) {
customerOptionBtn().click();
assignOnCustomerField().click();
entityFromList(customerTitle).click();
customerOptionBtn().click();
sleep(1);
}
}

88
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/devicessmoke/CreateDeviceTest.java

@ -23,6 +23,7 @@ import org.thingsboard.server.msa.ui.utils.EntityPrototypes;
import static org.assertj.core.api.Assertions.assertThat;
import static org.thingsboard.server.msa.ui.base.AbstractBasePage.random;
import static org.thingsboard.server.msa.ui.utils.Const.DEVICE_PROFILE_IS_REQUIRED_MESSAGE;
import static org.thingsboard.server.msa.ui.utils.Const.EMPTY_DEVICE_MESSAGE;
import static org.thingsboard.server.msa.ui.utils.Const.ENTITY_NAME;
import static org.thingsboard.server.msa.ui.utils.Const.NAME_IS_REQUIRED_MESSAGE;
@ -89,7 +90,7 @@ public class CreateDeviceTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.addDeviceView());
}
@Test(priority = 20, groups = "smoke")
@Test(groups = "smoke")
@Description("Create a device with the same name")
public void createRuleChainWithSameName() {
Device device = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME));
@ -105,7 +106,7 @@ public class CreateDeviceTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.addDeviceView());
}
@Test(priority = 30, groups = "smoke")
@Test(groups = "smoke")
@Description("Add device after specifying the name (text/numbers /special characters) without refresh")
public void createDeviceWithoutRefresh() {
deviceName = ENTITY_NAME + random();
@ -118,7 +119,88 @@ public class CreateDeviceTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.entity(deviceName));
}
@Test(priority = 40, groups = "smoke")
@Test(groups = "smoke")
@Description("Add device without device profile")
public void createDeviceWithoutDeviceProfile() {
deviceName = ENTITY_NAME + random();
sideBarMenuView.devicesBtn().click();
devicePage.openCreateDeviceView();
devicePage.enterName(deviceName);
devicePage.clearProfileFieldBtn().click();
devicePage.addBtnC().click();
assertIsDisplayed(devicePage.errorMessage());
assertThat(devicePage.errorMessage().getText()).as("Text of warning message").isEqualTo(DEVICE_PROFILE_IS_REQUIRED_MESSAGE);
assertIsDisplayed(devicePage.addDeviceView());
}
@Test(groups = "smoke")
@Description("Add device with enabled gateway")
public void createDeviceWithEnableGateway() {
deviceName = ENTITY_NAME + random();
sideBarMenuView.devicesBtn().click();
devicePage.openCreateDeviceView();
devicePage.enterName(deviceName);
devicePage.checkboxGatewayCreate().click();
devicePage.addBtnC().click();
assertIsDisplayed(devicePage.device(deviceName));
assertIsDisplayed(devicePage.checkboxGatewayPage(deviceName));
}
@Test(groups = "smoke")
@Description("Add device with enabled overwrite activity time for connected")
public void createDeviceWithEnableOverwriteActivityTimeForConnected() {
deviceName = ENTITY_NAME + random();
sideBarMenuView.devicesBtn().click();
devicePage.openCreateDeviceView();
devicePage.enterName(deviceName);
devicePage.checkboxGatewayCreate().click();
devicePage.checkboxOverwriteActivityTimeCreate().click();
devicePage.addBtnC().click();
devicePage.device(deviceName).click();
assertThat(devicePage.checkboxOverwriteActivityTimeDetails().getAttribute("class").contains("selected"))
.as("Overwrite activity time for connected is enable").isTrue();
}
@Test(groups = "smoke")
@Description("Add device with label")
public void createDeviceWithLabel() {
deviceName = ENTITY_NAME + random();
String deviceLabel = "device label " + random();
sideBarMenuView.devicesBtn().click();
devicePage.openCreateDeviceView();
devicePage.enterName(deviceName);
devicePage.enterLabel(deviceLabel);
devicePage.addBtnC().click();
assertIsDisplayed(devicePage.deviceLabelOnPage(deviceName));
assertThat(devicePage.deviceLabelOnPage(deviceName).getText()).as("Label added correctly").isEqualTo(deviceLabel);
}
@Test(groups = "smoke")
@Description("Add device with assignee on customer")
public void createDeviceWithAssignee() {
deviceName = ENTITY_NAME + random();
String customer = "Customer A";
sideBarMenuView.devicesBtn().click();
devicePage.openCreateDeviceView();
devicePage.enterName(deviceName);
devicePage.assignOnCustomer(customer);
devicePage.addBtnC().click();
assertIsDisplayed(devicePage.deviceCustomerOnPage(deviceName));
assertThat(devicePage.deviceCustomerOnPage(deviceName).getText())
.as("Customer added correctly").isEqualTo(customer);
}
@Test(groups = "smoke")
@Description("Go to devices documentation page")
public void documentation() {
String urlPath = "docs/user-guide/ui/devices/";

179
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/devicessmoke/EditDeviceTest.java

@ -0,0 +1,179 @@
/**
* Copyright © 2016-2023 The Thingsboard Authors
*
* Licensed 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.thingsboard.server.msa.ui.tests.devicessmoke;
import io.qameta.allure.Description;
import io.qameta.allure.Feature;
import org.testng.annotations.Test;
import org.thingsboard.server.msa.ui.utils.DataProviderCredential;
import org.thingsboard.server.msa.ui.utils.EntityPrototypes;
import static org.assertj.core.api.Assertions.assertThat;
import static org.thingsboard.server.msa.ui.base.AbstractBasePage.getRandomNumber;
import static org.thingsboard.server.msa.ui.utils.Const.EMPTY_DEVICE_MESSAGE;
import static org.thingsboard.server.msa.ui.utils.Const.ENTITY_NAME;
@Feature("Edit device")
public class EditDeviceTest extends AbstractDeviceTest {
@Test(groups = "smoke")
@Description("Change name by edit menu")
public void changeName() {
String newDeviceName = "Changed" + getRandomNumber();
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.setHeaderName();
String nameBefore = devicePage.getHeaderName();
devicePage.editPencilBtn().click();
devicePage.changeNameEditMenu(newDeviceName);
devicePage.doneBtnEditView().click();
deviceName = newDeviceName;
devicePage.setHeaderName();
String nameAfter = devicePage.getHeaderName();
assertThat(nameAfter).as("The name has changed").isNotEqualTo(nameBefore);
assertThat(nameAfter).as("The name has changed correctly").isEqualTo(newDeviceName);
}
@Test(groups = "smoke")
@Description("Delete name and save")
public void deleteName() {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.changeNameEditMenu("");
assertIsDisable(devicePage.doneBtnEditViewVisible());
}
@Test(groups = "smoke")
@Description("Save only with space")
public void saveOnlyWithSpace() {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.changeNameEditMenu(" ");
devicePage.doneBtnEditView().click();
assertIsDisplayed(devicePage.warningMessage());
assertThat(devicePage.warningMessage().getText()).as("Text of warning message").isEqualTo(EMPTY_DEVICE_MESSAGE);
}
@Test(groups = "smoke", dataProviderClass = DataProviderCredential.class, dataProvider = "editMenuDescription")
@Description("Write the description and save the changes/Change the description and save the changes/Delete the description and save the changes")
public void editDescription(String description, String newDescription, String finalDescription) {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME, description)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.descriptionEntityView().sendKeys(newDescription);
devicePage.doneBtnEditView().click();
devicePage.setDescription();
assertThat(devicePage.getDescription()).as("The description changed correctly").isEqualTo(finalDescription);
}
@Test(groups = "smoke", dataProviderClass = DataProviderCredential.class, dataProvider = "enable")
@Description("Enable gateway mode/Disable gateway")
public void isGateway(boolean isGateway) {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME, isGateway)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.checkboxGatewayEdit().click();
devicePage.doneBtnEditView().click();
if (isGateway) {
assertThat(devicePage.checkboxGatewayDetailsTab().getAttribute("class").contains("selected"))
.as("Gateway is disable").isFalse();
} else {
assertThat(devicePage.checkboxGatewayDetailsTab().getAttribute("class").contains("selected"))
.as("Gateway is enable").isTrue();
}
}
@Test(groups = "smoke", dataProviderClass = DataProviderCredential.class, dataProvider = "enable")
@Description("Enable overwrite activity time for connected/Disable overwrite activity time for connected")
public void isOverwriteActivityTimeForConnectedDevice(boolean isOverwriteActivityTimeForConnected) {
deviceName = testRestClient.postDevice("",
EntityPrototypes.defaultDevicePrototype(ENTITY_NAME, true, isOverwriteActivityTimeForConnected)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.checkboxOverwriteActivityTimeEdit().click();
devicePage.doneBtnEditView().click();
if (isOverwriteActivityTimeForConnected) {
assertThat(devicePage.checkboxOverwriteActivityTimeDetails().getAttribute("class").contains("selected"))
.as("Overwrite activity time for connected is disable").isFalse();
} else {
assertThat(devicePage.checkboxOverwriteActivityTimeDetails().getAttribute("class").contains("selected"))
.as("Overwrite activity time for connected is enable").isTrue();
}
}
@Test(groups = "smoke")
@Description("Change device profile")
public void changeDeviceProfile() {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.changeDeviceProfile("DEFAULT");
devicePage.doneBtnEditView().click();
assertIsDisplayed(devicePage.deviceProfileRedirectedBtn());
assertThat(devicePage.deviceProfileRedirectedBtn().getText()).as("Profile changed correctly").isEqualTo("DEFAULT");
}
@Test(groups = "smoke")
@Description("Save without device profile")
public void saveWithoutDeviceProfile() {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.clearProfileFieldBtn().click();
assertIsDisable(devicePage.doneBtnEditViewVisible());
}
@Test(groups = "smoke", dataProviderClass = DataProviderCredential.class, dataProvider = "editDeviceLabel")
@Description("Write the label and save the changes/Change the label and save the changes/Delete the label and save the changes")
public void editLabel(String label, String newLabel, String finalLabel) {
deviceName = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype(ENTITY_NAME, "", label)).getName();
sideBarMenuView.devicesBtn().click();
devicePage.entity(deviceName).click();
devicePage.editPencilBtn().click();
devicePage.deviceLabelEditField().sendKeys(newLabel);
devicePage.doneBtnEditView().click();
devicePage.setLabel();
assertThat(devicePage.getLabel()).as("The label changed correctly").isEqualTo(finalLabel);
}
}

3
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/Const.java

@ -44,4 +44,5 @@ public class Const {
public static final String SAME_NAME_WARNING_DEVICE_MESSAGE = "Device with such name already exists!";
public static final String PHONE_NUMBER_ERROR_MESSAGE = "Phone number is invalid or not possible";
public static final String NAME_IS_REQUIRED_MESSAGE = "Name is required.";
}
public static final String DEVICE_PROFILE_IS_REQUIRED_MESSAGE = "Device profile is required";
}

10
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/DataProviderCredential.java

@ -156,4 +156,14 @@ public class DataProviderCredential {
{false},
{true}};
}
@DataProvider
public static Object[][] editDeviceLabel() {
String newLabel = "Label" + getRandomNumber();
String label = "Label";
return new Object[][]{
{"", newLabel, newLabel},
{label, newLabel, label + newLabel},
{label, Keys.CONTROL + "A" + Keys.BACK_SPACE, ""}};
}
}

35
msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/utils/EntityPrototypes.java

@ -192,6 +192,41 @@ public class EntityPrototypes {
return device;
}
public static Device defaultDevicePrototype(String name, String description) {
Device device = new Device();
device.setName(name + RandomStringUtils.randomAlphanumeric(7));
device.setType("DEFAULT");
device.setAdditionalInfo(JacksonUtil.newObjectNode().put("description", description));
return device;
}
public static Device defaultDevicePrototype(String name, String description, String label) {
Device device = new Device();
device.setName(name + RandomStringUtils.randomAlphanumeric(7));
device.setType("DEFAULT");
device.setAdditionalInfo(JacksonUtil.newObjectNode().put("description", description));
device.setLabel(label);
return device;
}
public static Device defaultDevicePrototype(String name, boolean gateway) {
Device device = new Device();
device.setName(name + RandomStringUtils.randomAlphanumeric(7));
device.setType("DEFAULT");
device.setAdditionalInfo(JacksonUtil.newObjectNode().put("gateway", gateway));
return device;
}
public static Device defaultDevicePrototype(String name, boolean gateway, boolean overwriteActivityTime) {
Device device = new Device();
device.setName(name + RandomStringUtils.randomAlphanumeric(7));
device.setType("DEFAULT");
device.setAdditionalInfo(JacksonUtil.newObjectNode()
.put("gateway", gateway)
.put("overwriteActivityTime", overwriteActivityTime));
return device;
}
public static Asset defaultAssetPrototype(String name, CustomerId id) {
Asset asset = new Asset();
asset.setName(name + RandomStringUtils.randomAlphanumeric(7));

Loading…
Cancel
Save