|
|
|
@ -58,7 +58,6 @@ import org.thingsboard.server.dao.device.DeviceService; |
|
|
|
import org.thingsboard.server.dao.relation.RelationService; |
|
|
|
import org.thingsboard.server.dao.user.UserService; |
|
|
|
|
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.Collections; |
|
|
|
import java.util.List; |
|
|
|
import java.util.concurrent.ExecutionException; |
|
|
|
@ -245,8 +244,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
// Check child relation
|
|
|
|
PageData<AlarmInfo> alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -257,8 +256,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
// Check parent relation
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(parentId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -272,8 +271,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
// Check child relation
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -284,8 +283,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
// Check parent relation
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(parentId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -298,8 +297,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.ACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.ACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -310,8 +309,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
// Check not existing relation
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.UNACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -323,8 +322,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmsV2(tenantId, AlarmQueryV2.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(Arrays.asList(AlarmSearchStatus.CLEARED, AlarmSearchStatus.ACK)).pageLink( |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.CLEARED, AlarmSearchStatus.ACK)).pageLink( |
|
|
|
new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -334,7 +333,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testFindAssignedAlarm() throws ExecutionException, InterruptedException { |
|
|
|
public void testFindAssignedAlarm() { |
|
|
|
|
|
|
|
AssetId parentId = new AssetId(Uuids.timeBased()); |
|
|
|
AssetId childId = new AssetId(Uuids.timeBased()); |
|
|
|
@ -368,7 +367,6 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
PageData<AlarmInfo> alarms = alarmService.findAlarms(tenantId, AlarmQuery.builder() |
|
|
|
.assigneeId(tenantUser.getId()) |
|
|
|
.fetchOriginator(true) |
|
|
|
.pageLink(new TimePageLink(1, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
).build()); |
|
|
|
@ -405,7 +403,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testFindCustomerAlarm() throws ExecutionException, InterruptedException { |
|
|
|
public void testFindCustomerAlarm() { |
|
|
|
Customer customer = new Customer(); |
|
|
|
customer.setTitle("TestCustomer"); |
|
|
|
customer.setTenantId(tenantId); |
|
|
|
@ -451,10 +449,10 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
PageData<AlarmData> tenantAlarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Arrays.asList(tenantDevice.getId(), customerDevice.getId())); |
|
|
|
PageData<AlarmData> tenantAlarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), List.of(tenantDevice.getId(), customerDevice.getId())); |
|
|
|
Assert.assertEquals(2, tenantAlarms.getData().size()); |
|
|
|
|
|
|
|
PageData<AlarmData> customerAlarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(customerDevice.getId())); |
|
|
|
@ -473,7 +471,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testFindPropagatedCustomerAssetAlarm() throws ExecutionException, InterruptedException { |
|
|
|
public void testFindPropagatedCustomerAssetAlarm() { |
|
|
|
Customer customer = new Customer(); |
|
|
|
customer.setTitle("TestCustomer"); |
|
|
|
customer.setTenantId(tenantId); |
|
|
|
@ -525,8 +523,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
//TEST that propagated alarms are visible on the asset level.
|
|
|
|
PageData<AlarmData> customerAlarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(customerAsset.getId())); |
|
|
|
@ -576,7 +574,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Collections.singletonList(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
//TEST that propagated alarms are visible on the asset level.
|
|
|
|
@ -599,7 +597,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testFindHighestAlarmSeverity() throws ExecutionException, InterruptedException { |
|
|
|
public void testFindHighestAlarmSeverity() { |
|
|
|
Customer customer = new Customer(); |
|
|
|
customer.setTitle("TestCustomer"); |
|
|
|
customer.setTenantId(tenantId); |
|
|
|
@ -679,8 +677,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(false); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
PageData<AlarmData> alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(childId)); |
|
|
|
|
|
|
|
@ -695,8 +693,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(false); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(childId)); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
@ -722,8 +720,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(childId)); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
@ -738,8 +736,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(parentId)); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
@ -748,7 +746,6 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
PageData<AlarmInfo> alarmsInfoData = alarmService.findAlarms(tenantId, AlarmQuery.builder() |
|
|
|
.affectedEntityId(childId) |
|
|
|
.fetchOriginator(true) |
|
|
|
.status(AlarmStatus.ACTIVE_UNACK).pageLink( |
|
|
|
new TimePageLink(10, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
@ -759,7 +756,6 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
alarmsInfoData = alarmService.findAlarms(tenantId, AlarmQuery.builder() |
|
|
|
.affectedEntityId(parentId) |
|
|
|
.fetchOriginator(true) |
|
|
|
.status(AlarmStatus.ACTIVE_UNACK).pageLink( |
|
|
|
new TimePageLink(10, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
@ -770,7 +766,6 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
|
|
|
|
alarmsInfoData = alarmService.findAlarms(tenantId, AlarmQuery.builder() |
|
|
|
.affectedEntityId(parentId2) |
|
|
|
.fetchOriginator(true) |
|
|
|
.status(AlarmStatus.ACTIVE_UNACK).pageLink( |
|
|
|
new TimePageLink(10, 0, "", |
|
|
|
new SortOrder("createdTime", SortOrder.Direction.DESC), 0L, System.currentTimeMillis()) |
|
|
|
@ -786,8 +781,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(parentId)); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
@ -803,8 +798,8 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
pageLink.setStartTs(0L); |
|
|
|
pageLink.setEndTs(System.currentTimeMillis()); |
|
|
|
pageLink.setSearchPropagatedAlarms(true); |
|
|
|
pageLink.setSeverityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(Arrays.asList(AlarmSearchStatus.ACTIVE)); |
|
|
|
pageLink.setSeverityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)); |
|
|
|
pageLink.setStatusList(List.of(AlarmSearchStatus.ACTIVE)); |
|
|
|
|
|
|
|
alarms = alarmService.findAlarmDataByQueryForEntities(tenantId, toQuery(pageLink), Collections.singletonList(childId)); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
@ -813,7 +808,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testCountAlarmsUsingAlarmDataQuery() throws ExecutionException, InterruptedException { |
|
|
|
public void testCountAlarmsUsingAlarmDataQuery() { |
|
|
|
AssetId childId = new AssetId(Uuids.timeBased()); |
|
|
|
|
|
|
|
long ts = System.currentTimeMillis(); |
|
|
|
@ -829,7 +824,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
.startTs(0L) |
|
|
|
.endTs(System.currentTimeMillis()) |
|
|
|
.searchPropagatedAlarms(false) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE)) |
|
|
|
.build(); |
|
|
|
|
|
|
|
@ -841,7 +836,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
.startTs(0L) |
|
|
|
.endTs(System.currentTimeMillis()) |
|
|
|
.searchPropagatedAlarms(true) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE)) |
|
|
|
.build(); |
|
|
|
|
|
|
|
@ -866,7 +861,7 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
.startTs(0L) |
|
|
|
.endTs(System.currentTimeMillis()) |
|
|
|
.searchPropagatedAlarms(true) |
|
|
|
.severityList(Arrays.asList(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.severityList(List.of(AlarmSeverity.CRITICAL, AlarmSeverity.WARNING)) |
|
|
|
.statusList(List.of(AlarmSearchStatus.ACTIVE, AlarmSearchStatus.CLEARED)) |
|
|
|
.build(); |
|
|
|
|
|
|
|
@ -939,6 +934,6 @@ public class AlarmServiceTest extends AbstractServiceTest { |
|
|
|
).build()); |
|
|
|
Assert.assertNotNull(alarms.getData()); |
|
|
|
Assert.assertEquals(0, alarms.getData().size()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|