|
|
@ -20,6 +20,7 @@ import org.junit.After; |
|
|
import org.junit.Assert; |
|
|
import org.junit.Assert; |
|
|
import org.junit.Before; |
|
|
import org.junit.Before; |
|
|
import org.junit.Test; |
|
|
import org.junit.Test; |
|
|
|
|
|
import org.junit.jupiter.api.Assertions; |
|
|
import org.thingsboard.server.common.data.Customer; |
|
|
import org.thingsboard.server.common.data.Customer; |
|
|
import org.thingsboard.server.common.data.Dashboard; |
|
|
import org.thingsboard.server.common.data.Dashboard; |
|
|
import org.thingsboard.server.common.data.DashboardInfo; |
|
|
import org.thingsboard.server.common.data.DashboardInfo; |
|
|
@ -82,58 +83,68 @@ public abstract class BaseDashboardServiceTest extends AbstractServiceTest { |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testSaveDashboardWithEmptyTitle() { |
|
|
public void testSaveDashboardWithEmptyTitle() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboardService.saveDashboard(dashboard); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.saveDashboard(dashboard); |
|
|
|
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testSaveDashboardWithEmptyTenant() { |
|
|
public void testSaveDashboardWithEmptyTenant() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboardService.saveDashboard(dashboard); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.saveDashboard(dashboard); |
|
|
|
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testSaveDashboardWithInvalidTenant() { |
|
|
public void testSaveDashboardWithInvalidTenant() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTenantId(TenantId.fromUUID(Uuids.timeBased())); |
|
|
dashboard.setTenantId(TenantId.fromUUID(Uuids.timeBased())); |
|
|
dashboardService.saveDashboard(dashboard); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.saveDashboard(dashboard); |
|
|
|
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testAssignDashboardToNonExistentCustomer() { |
|
|
public void testAssignDashboardToNonExistentCustomer() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard = dashboardService.saveDashboard(dashboard); |
|
|
Dashboard savedDashboard = dashboardService.saveDashboard(dashboard); |
|
|
try { |
|
|
try { |
|
|
dashboardService.assignDashboardToCustomer(tenantId, dashboard.getId(), new CustomerId(Uuids.timeBased())); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.assignDashboardToCustomer(tenantId, savedDashboard.getId(), new CustomerId(Uuids.timeBased())); |
|
|
|
|
|
}); |
|
|
} finally { |
|
|
} finally { |
|
|
dashboardService.deleteDashboard(tenantId, dashboard.getId()); |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testAssignDashboardToCustomerFromDifferentTenant() { |
|
|
public void testAssignDashboardToCustomerFromDifferentTenant() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard = dashboardService.saveDashboard(dashboard); |
|
|
Dashboard savedDashboard = dashboardService.saveDashboard(dashboard); |
|
|
Tenant tenant = new Tenant(); |
|
|
Tenant tenant = new Tenant(); |
|
|
tenant.setTitle("Test different tenant [dashboard]"); |
|
|
tenant.setTitle("Test different tenant [dashboard]"); |
|
|
tenant = tenantService.saveTenant(tenant); |
|
|
tenant = tenantService.saveTenant(tenant); |
|
|
Customer customer = new Customer(); |
|
|
Customer customer = new Customer(); |
|
|
customer.setTenantId(tenant.getId()); |
|
|
customer.setTenantId(tenant.getId()); |
|
|
customer.setTitle("Test different customer"); |
|
|
customer.setTitle("Test different customer"); |
|
|
customer = customerService.saveCustomer(customer); |
|
|
Customer savedCustomer = customerService.saveCustomer(customer); |
|
|
try { |
|
|
try { |
|
|
dashboardService.assignDashboardToCustomer(tenantId, dashboard.getId(), customer.getId()); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.assignDashboardToCustomer(tenantId, savedDashboard.getId(), savedCustomer.getId()); |
|
|
|
|
|
}); |
|
|
} finally { |
|
|
} finally { |
|
|
dashboardService.deleteDashboard(tenantId, dashboard.getId()); |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
tenantService.deleteTenant(tenant.getId()); |
|
|
tenantService.deleteTenant(tenant.getId()); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -389,25 +400,27 @@ public abstract class BaseDashboardServiceTest extends AbstractServiceTest { |
|
|
tenantService.deleteTenant(tenantId); |
|
|
tenantService.deleteTenant(tenantId); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testAssignDashboardToNonExistentEdge() { |
|
|
public void testAssignDashboardToNonExistentEdge() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard = dashboardService.saveDashboard(dashboard); |
|
|
Dashboard savedDashboard = dashboardService.saveDashboard(dashboard); |
|
|
try { |
|
|
try { |
|
|
dashboardService.assignDashboardToEdge(tenantId, dashboard.getId(), new EdgeId(Uuids.timeBased())); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.assignDashboardToEdge(tenantId, savedDashboard.getId(), new EdgeId(Uuids.timeBased())); |
|
|
|
|
|
}); |
|
|
} finally { |
|
|
} finally { |
|
|
dashboardService.deleteDashboard(tenantId, dashboard.getId()); |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test(expected = DataValidationException.class) |
|
|
@Test |
|
|
public void testAssignDashboardToEdgeFromDifferentTenant() { |
|
|
public void testAssignDashboardToEdgeFromDifferentTenant() { |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
Dashboard dashboard = new Dashboard(); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTitle("My dashboard"); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard.setTenantId(tenantId); |
|
|
dashboard = dashboardService.saveDashboard(dashboard); |
|
|
Dashboard savedDashboard = dashboardService.saveDashboard(dashboard); |
|
|
Tenant tenant = new Tenant(); |
|
|
Tenant tenant = new Tenant(); |
|
|
tenant.setTitle("Test different tenant [edge]"); |
|
|
tenant.setTitle("Test different tenant [edge]"); |
|
|
tenant = tenantService.saveTenant(tenant); |
|
|
tenant = tenantService.saveTenant(tenant); |
|
|
@ -418,11 +431,13 @@ public abstract class BaseDashboardServiceTest extends AbstractServiceTest { |
|
|
edge.setType("default"); |
|
|
edge.setType("default"); |
|
|
edge.setSecret(StringUtils.randomAlphanumeric(20)); |
|
|
edge.setSecret(StringUtils.randomAlphanumeric(20)); |
|
|
edge.setRoutingKey(StringUtils.randomAlphanumeric(20)); |
|
|
edge.setRoutingKey(StringUtils.randomAlphanumeric(20)); |
|
|
edge = edgeService.saveEdge(edge); |
|
|
Edge savedEdge = edgeService.saveEdge(edge); |
|
|
try { |
|
|
try { |
|
|
dashboardService.assignDashboardToEdge(tenantId, dashboard.getId(), edge.getId()); |
|
|
Assertions.assertThrows(DataValidationException.class, () -> { |
|
|
|
|
|
dashboardService.assignDashboardToEdge(tenantId, savedDashboard.getId(), savedEdge.getId()); |
|
|
|
|
|
}); |
|
|
} finally { |
|
|
} finally { |
|
|
dashboardService.deleteDashboard(tenantId, dashboard.getId()); |
|
|
dashboardService.deleteDashboard(tenantId, savedDashboard.getId()); |
|
|
tenantService.deleteTenant(tenant.getId()); |
|
|
tenantService.deleteTenant(tenant.getId()); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|