|
|
@ -16,7 +16,7 @@ |
|
|
package org.thingsboard.server.dao.sql.widget; |
|
|
package org.thingsboard.server.dao.sql.widget; |
|
|
|
|
|
|
|
|
import com.datastax.oss.driver.api.core.uuid.Uuids; |
|
|
import com.datastax.oss.driver.api.core.uuid.Uuids; |
|
|
|
|
|
import org.junit.After; |
|
|
import org.junit.Test; |
|
|
import org.junit.Test; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
import org.thingsboard.server.common.data.id.TenantId; |
|
|
import org.thingsboard.server.common.data.id.TenantId; |
|
|
@ -38,55 +38,47 @@ import static org.junit.Assert.assertEquals; |
|
|
*/ |
|
|
*/ |
|
|
public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
|
|
|
|
|
|
|
|
|
List<WidgetsBundle> widgetsBundles; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private WidgetsBundleDao widgetsBundleDao; |
|
|
private WidgetsBundleDao widgetsBundleDao; |
|
|
|
|
|
|
|
|
|
|
|
@After |
|
|
|
|
|
public void tearDown() { |
|
|
|
|
|
for (WidgetsBundle widgetsBundle : widgetsBundles) { |
|
|
|
|
|
widgetsBundleDao.removeById(widgetsBundle.getTenantId(), widgetsBundle.getUuidId()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
public void testFindAll() { |
|
|
public void testFindAll() { |
|
|
createSystemWidgetBundles(7, "WB_"); |
|
|
createSystemWidgetBundles(7, "WB_"); |
|
|
List<WidgetsBundle> widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
try { |
|
|
assertEquals(7, widgetsBundles.size()); |
|
|
assertEquals(7, widgetsBundles.size()); |
|
|
|
|
|
} finally { |
|
|
|
|
|
for (WidgetsBundle widgetsBundle:widgetsBundles) { |
|
|
|
|
|
widgetsBundleDao.removeById(AbstractServiceTest.SYSTEM_TENANT_ID, widgetsBundle.getUuidId()); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
public void testFindWidgetsBundleByTenantIdAndAlias() { |
|
|
public void testFindWidgetsBundleByTenantIdAndAlias() { |
|
|
createSystemWidgetBundles(1, "CHECK"); |
|
|
createSystemWidgetBundles(1, "WB_"); |
|
|
WidgetsBundle widgetsBundle = widgetsBundleDao.findWidgetsBundleByTenantIdAndAlias( |
|
|
WidgetsBundle widgetsBundle = widgetsBundleDao.findWidgetsBundleByTenantIdAndAlias( |
|
|
AbstractServiceTest.SYSTEM_TENANT_ID.getId(), "CHECK" + 0); |
|
|
AbstractServiceTest.SYSTEM_TENANT_ID.getId(), "WB_" + 0); |
|
|
try { |
|
|
widgetsBundles = List.of(widgetsBundle); |
|
|
System.out.println(widgetsBundle); |
|
|
assertEquals("WB_" + 0, widgetsBundle.getAlias()); |
|
|
assertEquals("CHECK" + 0, widgetsBundle.getAlias()); |
|
|
|
|
|
} finally { |
|
|
|
|
|
List<WidgetsBundle> allWidgets = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(AbstractServiceTest.SYSTEM_TENANT_ID.getId(), |
|
|
|
|
|
new PageLink(1, 0, "CHECK" + 0)).getData(); |
|
|
|
|
|
deleteWidgetBundles(allWidgets); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
public void testFindSystemWidgetsBundles() { |
|
|
public void testFindSystemWidgetsBundles() { |
|
|
createSystemWidgetBundles(30, "WB_"); |
|
|
createSystemWidgetBundles(30, "WB_"); |
|
|
try { |
|
|
widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
assertEquals(30, widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID).size()); |
|
|
assertEquals(30, widgetsBundles.size()); |
|
|
// Get first page
|
|
|
// Get first page
|
|
|
PageLink pageLink = new PageLink(10, 0, "WB"); |
|
|
PageLink pageLink = new PageLink(10, 0, "WB"); |
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findSystemWidgetsBundles(AbstractServiceTest.SYSTEM_TENANT_ID, pageLink); |
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findSystemWidgetsBundles(AbstractServiceTest.SYSTEM_TENANT_ID, pageLink); |
|
|
assertEquals(10, widgetsBundles1.getData().size()); |
|
|
assertEquals(10, widgetsBundles1.getData().size()); |
|
|
// Get next page
|
|
|
// Get next page
|
|
|
pageLink = pageLink.nextPageLink(); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findSystemWidgetsBundles(AbstractServiceTest.SYSTEM_TENANT_ID, pageLink); |
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findSystemWidgetsBundles(AbstractServiceTest.SYSTEM_TENANT_ID, pageLink); |
|
|
assertEquals(10, widgetsBundles2.getData().size()); |
|
|
assertEquals(10, widgetsBundles2.getData().size()); |
|
|
} finally { |
|
|
|
|
|
List<WidgetsBundle> allWidgets = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(AbstractServiceTest.SYSTEM_TENANT_ID.getId(), |
|
|
|
|
|
new PageLink(500, 0, "WB")).getData(); |
|
|
|
|
|
deleteWidgetBundles(allWidgets); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
@ -94,35 +86,25 @@ public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
UUID tenantId1 = Uuids.timeBased(); |
|
|
UUID tenantId1 = Uuids.timeBased(); |
|
|
UUID tenantId2 = Uuids.timeBased(); |
|
|
UUID tenantId2 = Uuids.timeBased(); |
|
|
// Create a bunch of widgetBundles
|
|
|
// Create a bunch of widgetBundles
|
|
|
for (int i= 0; i < 10; i++) { |
|
|
for (int i = 0; i < 10; i++) { |
|
|
createWidgetBundles(3, tenantId1, "WB1_"); |
|
|
createWidgetBundles(3, tenantId1, "WB1_"); |
|
|
createWidgetBundles(5, tenantId2, "WB2_"); |
|
|
createWidgetBundles(5, tenantId2, "WB2_"); |
|
|
createSystemWidgetBundles(10, "WB_SYS_"); |
|
|
createSystemWidgetBundles(10, "WB_SYS_"); |
|
|
} |
|
|
} |
|
|
try { |
|
|
widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
assertEquals(180, widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID).size()); |
|
|
assertEquals(180, widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID).size()); |
|
|
|
|
|
|
|
|
PageLink pageLink1 = new PageLink(40, 0, "WB"); |
|
|
PageLink pageLink1 = new PageLink(40, 0, "WB"); |
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId1, pageLink1); |
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId1, pageLink1); |
|
|
assertEquals(30, widgetsBundles1.getData().size()); |
|
|
assertEquals(30, widgetsBundles1.getData().size()); |
|
|
|
|
|
|
|
|
PageLink pageLink2 = new PageLink(40, 0, "WB"); |
|
|
PageLink pageLink2 = new PageLink(40, 0, "WB"); |
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId2, pageLink2); |
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId2, pageLink2); |
|
|
assertEquals(40, widgetsBundles2.getData().size()); |
|
|
assertEquals(40, widgetsBundles2.getData().size()); |
|
|
|
|
|
|
|
|
pageLink2 = pageLink2.nextPageLink(); |
|
|
pageLink2 = pageLink2.nextPageLink(); |
|
|
PageData<WidgetsBundle> widgetsBundles3 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId2, pageLink2); |
|
|
PageData<WidgetsBundle> widgetsBundles3 = widgetsBundleDao.findTenantWidgetsBundlesByTenantId(tenantId2, pageLink2); |
|
|
assertEquals(10, widgetsBundles3.getData().size()); |
|
|
assertEquals(10, widgetsBundles3.getData().size()); |
|
|
} finally { |
|
|
|
|
|
List<WidgetsBundle> allWidgets = |
|
|
|
|
|
widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, |
|
|
|
|
|
new PageLink(500, 0, "WB1_")).getData(); |
|
|
|
|
|
allWidgets.addAll(widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId2, |
|
|
|
|
|
new PageLink(500, 0, "WB2_")).getData()); |
|
|
|
|
|
allWidgets.addAll(widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(AbstractServiceTest.SYSTEM_TENANT_ID.getId(), |
|
|
|
|
|
new PageLink(500, 0, "WB_SYS_")).getData()); |
|
|
|
|
|
deleteWidgetBundles(allWidgets); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
@ -130,37 +112,29 @@ public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
UUID tenantId1 = Uuids.timeBased(); |
|
|
UUID tenantId1 = Uuids.timeBased(); |
|
|
UUID tenantId2 = Uuids.timeBased(); |
|
|
UUID tenantId2 = Uuids.timeBased(); |
|
|
// Create a bunch of widgetBundles
|
|
|
// Create a bunch of widgetBundles
|
|
|
for (int i= 0; i < 10; i++) { |
|
|
for (int i = 0; i < 10; i++) { |
|
|
createWidgetBundles( 5, tenantId1,"WB1_"); |
|
|
createWidgetBundles(5, tenantId1, "WB1_"); |
|
|
createWidgetBundles(3, tenantId2, "WB2_"); |
|
|
createWidgetBundles(3, tenantId2, "WB2_"); |
|
|
createSystemWidgetBundles(2, "WB_SYS_"); |
|
|
createSystemWidgetBundles(2, "WB_SYS_"); |
|
|
} |
|
|
} |
|
|
try { |
|
|
widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
PageLink pageLink = new PageLink(30, 0, "WB"); |
|
|
assertEquals(100, widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID).size()); |
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
|
|
|
assertEquals(30, widgetsBundles1.getData().size()); |
|
|
PageLink pageLink = new PageLink(30, 0, "WB"); |
|
|
|
|
|
PageData<WidgetsBundle> widgetsBundles1 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
assertEquals(30, widgetsBundles1.getData().size()); |
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
|
|
|
assertEquals(30, widgetsBundles2.getData().size()); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
|
|
|
PageData<WidgetsBundle> widgetsBundles2 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
assertEquals(30, widgetsBundles2.getData().size()); |
|
|
PageData<WidgetsBundle> widgetsBundles3 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
|
|
|
assertEquals(10, widgetsBundles3.getData().size()); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
|
|
|
PageData<WidgetsBundle> widgetsBundles3 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
assertEquals(10, widgetsBundles3.getData().size()); |
|
|
PageData<WidgetsBundle> widgetsBundles4 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
|
|
|
assertEquals(0, widgetsBundles4.getData().size()); |
|
|
pageLink = pageLink.nextPageLink(); |
|
|
} finally { |
|
|
PageData<WidgetsBundle> widgetsBundles4 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, pageLink); |
|
|
List<WidgetsBundle> allWidgets = |
|
|
assertEquals(0, widgetsBundles4.getData().size()); |
|
|
widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId1, |
|
|
|
|
|
new PageLink(500, 0, "WB1_")).getData(); |
|
|
|
|
|
allWidgets.addAll(widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId2, |
|
|
|
|
|
new PageLink(500, 0, "WB2_")).getData()); |
|
|
|
|
|
allWidgets.addAll(widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(AbstractServiceTest.SYSTEM_TENANT_ID.getId(), |
|
|
|
|
|
new PageLink(500, 0, "WB_SYS_")).getData()); |
|
|
|
|
|
deleteWidgetBundles(allWidgets); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Test |
|
|
@Test |
|
|
@ -168,18 +142,11 @@ public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
UUID tenantId = Uuids.timeBased(); |
|
|
UUID tenantId = Uuids.timeBased(); |
|
|
createWidgetBundles(5, tenantId, "ABC_"); |
|
|
createWidgetBundles(5, tenantId, "ABC_"); |
|
|
createSystemWidgetBundles(5, "SYS_"); |
|
|
createSystemWidgetBundles(5, "SYS_"); |
|
|
try { |
|
|
widgetsBundles = widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID); |
|
|
PageLink textPageLink = new PageLink(30, 0, "TEXT_NOT_FOUND"); |
|
|
assertEquals(10, widgetsBundleDao.find(AbstractServiceTest.SYSTEM_TENANT_ID).size()); |
|
|
PageData<WidgetsBundle> widgetsBundles4 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId, textPageLink); |
|
|
PageLink textPageLink = new PageLink(30, 0, "TEXT_NOT_FOUND"); |
|
|
assertEquals(0, widgetsBundles4.getData().size()); |
|
|
PageData<WidgetsBundle> widgetsBundles4 = widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId, textPageLink); |
|
|
} finally { |
|
|
assertEquals(0, widgetsBundles4.getData().size()); |
|
|
List<WidgetsBundle> allWidgets = |
|
|
|
|
|
widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(tenantId, |
|
|
|
|
|
new PageLink(500, 0, "ABC_")).getData(); |
|
|
|
|
|
allWidgets.addAll(widgetsBundleDao.findAllTenantWidgetsBundlesByTenantId(AbstractServiceTest.SYSTEM_TENANT_ID.getId(), |
|
|
|
|
|
new PageLink(500, 0, "SYS_")).getData()); |
|
|
|
|
|
deleteWidgetBundles(allWidgets); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void createWidgetBundles(int count, UUID tenantId, String prefix) { |
|
|
private void createWidgetBundles(int count, UUID tenantId, String prefix) { |
|
|
@ -203,10 +170,4 @@ public class JpaWidgetsBundleDaoTest extends AbstractJpaDaoTest { |
|
|
widgetsBundleDao.save(AbstractServiceTest.SYSTEM_TENANT_ID, widgetsBundle); |
|
|
widgetsBundleDao.save(AbstractServiceTest.SYSTEM_TENANT_ID, widgetsBundle); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
void deleteWidgetBundles(List<WidgetsBundle> widgetsBundles) { |
|
|
|
|
|
for (WidgetsBundle widgetsBundle : widgetsBundles) { |
|
|
|
|
|
widgetsBundleDao.removeById(widgetsBundle.getTenantId(), widgetsBundle.getUuidId()); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|