refactoring JpaBaseComponentDescriptorDaoTest

This commit is contained in:
van-vanich 2022-02-03 12:18:09 +02:00
parent 97a9854f41
commit 62ee824530

View File

@ -16,6 +16,8 @@
package org.thingsboard.server.dao.sql.component; package org.thingsboard.server.dao.sql.component;
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.Before;
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.ComponentDescriptorId; import org.thingsboard.server.common.data.id.ComponentDescriptorId;
@ -37,35 +39,43 @@ import static org.junit.Assert.assertEquals;
*/ */
public class JpaBaseComponentDescriptorDaoTest extends AbstractJpaDaoTest { public class JpaBaseComponentDescriptorDaoTest extends AbstractJpaDaoTest {
final List<ComponentType> componentTypes = List.of(ComponentType.FILTER, ComponentType.ACTION);
@Autowired @Autowired
private ComponentDescriptorDao componentDescriptorDao; private ComponentDescriptorDao componentDescriptorDao;
@Test @Before
public void findByType() { public void setUp() {
for (int i = 0; i < 20; i++) { for (int i = 0; i < 20; i++) {
createComponentDescriptor(ComponentType.FILTER, ComponentScope.SYSTEM, i); createComponentDescriptor(ComponentType.FILTER, ComponentScope.SYSTEM, i);
createComponentDescriptor(ComponentType.ACTION, ComponentScope.TENANT, i + 20); createComponentDescriptor(ComponentType.ACTION, ComponentScope.TENANT, i + 20);
} }
}
@After
public void tearDown() {
for (ComponentType componentType : componentTypes) {
List<ComponentDescriptor> byTypeAndPageLink = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID,
componentType, new PageLink(20)).getData();
for (ComponentDescriptor descriptor : byTypeAndPageLink) {
componentDescriptorDao.deleteById(AbstractServiceTest.SYSTEM_TENANT_ID, descriptor.getId());
}
}
}
@Test
public void findByType() {
PageLink pageLink = new PageLink(15, 0, "COMPONENT_"); PageLink pageLink = new PageLink(15, 0, "COMPONENT_");
PageData<ComponentDescriptor> components1 = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID, ComponentType.FILTER, pageLink); PageData<ComponentDescriptor> components1 = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID, ComponentType.FILTER, pageLink);
assertEquals(15, components1.getData().size()); assertEquals(15, components1.getData().size());
pageLink = pageLink.nextPageLink(); pageLink = pageLink.nextPageLink();
PageData<ComponentDescriptor> components2 = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID,ComponentType.FILTER, pageLink); PageData<ComponentDescriptor> components2 = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID, ComponentType.FILTER, pageLink);
assertEquals(5, components2.getData().size()); assertEquals(5, components2.getData().size());
deleteComponentDescription(List.of(ComponentType.FILTER, ComponentType.ACTION));
} }
@Test @Test
public void findByTypeAndSocpe() { public void findByTypeAndScope() {
for (int i = 0; i < 20; i++) { PageLink pageLink = new PageLink(15, 0, "COMPONENT_");
createComponentDescriptor(ComponentType.ENRICHMENT, ComponentScope.SYSTEM, i);
createComponentDescriptor(ComponentType.ACTION, ComponentScope.TENANT, i + 20);
createComponentDescriptor(ComponentType.FILTER, ComponentScope.SYSTEM, i + 40);
}
PageLink pageLink = new PageLink(15, 0, "COMPONENT_");
PageData<ComponentDescriptor> components1 = componentDescriptorDao.findByScopeAndTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID, PageData<ComponentDescriptor> components1 = componentDescriptorDao.findByScopeAndTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID,
ComponentScope.SYSTEM, ComponentType.FILTER, pageLink); ComponentScope.SYSTEM, ComponentType.FILTER, pageLink);
assertEquals(15, components1.getData().size()); assertEquals(15, components1.getData().size());
@ -74,7 +84,6 @@ public class JpaBaseComponentDescriptorDaoTest extends AbstractJpaDaoTest {
PageData<ComponentDescriptor> components2 = componentDescriptorDao.findByScopeAndTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID, PageData<ComponentDescriptor> components2 = componentDescriptorDao.findByScopeAndTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID,
ComponentScope.SYSTEM, ComponentType.FILTER, pageLink); ComponentScope.SYSTEM, ComponentType.FILTER, pageLink);
assertEquals(5, components2.getData().size()); assertEquals(5, components2.getData().size());
deleteComponentDescription(List.of(ComponentType.FILTER, ComponentType.ACTION, ComponentType.ENRICHMENT));
} }
private void createComponentDescriptor(ComponentType type, ComponentScope scope, int index) { private void createComponentDescriptor(ComponentType type, ComponentScope scope, int index) {
@ -83,17 +92,7 @@ public class JpaBaseComponentDescriptorDaoTest extends AbstractJpaDaoTest {
component.setType(type); component.setType(type);
component.setScope(scope); component.setScope(scope);
component.setName("COMPONENT_" + index); component.setName("COMPONENT_" + index);
componentDescriptorDao.save(AbstractServiceTest.SYSTEM_TENANT_ID,component); componentDescriptorDao.save(AbstractServiceTest.SYSTEM_TENANT_ID, component);
} }
void deleteComponentDescription(List<ComponentType> componentTypes) {
for (ComponentType componentType : componentTypes) {
List<ComponentDescriptor> byTypeAndPageLink = componentDescriptorDao.findByTypeAndPageLink(AbstractServiceTest.SYSTEM_TENANT_ID,
componentType,
new PageLink(100)).getData();
for (ComponentDescriptor descriptor : byTypeAndPageLink) {
componentDescriptorDao.deleteById(AbstractServiceTest.SYSTEM_TENANT_ID, descriptor.getId());
}
}
}
} }