[Improve] add SystemGeneralConfigServiceImpl & SmsGeneralConfigServiceImpl unit test (#2490)

Signed-off-by: yuluo-yx <yuluo08290126@gmail.com>
Co-authored-by: tomsun28 <tomsun28@outlook.com>
This commit is contained in:
YuLuo
2024-08-07 23:31:24 +08:00
committed by GitHub
co-authored by tomsun28
parent 12fee7fb01
commit ec8cc517d1
4 changed files with 95 additions and 3 deletions
@@ -54,7 +54,7 @@ public class SmsGeneralConfigServiceImpl extends AbstractGeneralConfigServiceImp
* a TypeReference of NoticeSender type
*/
@Override
protected TypeReference<SmsNoticeSender> getTypeReference() {
public TypeReference<SmsNoticeSender> getTypeReference() {
return new TypeReference<>() {
@Override
public Type getType() {
@@ -44,7 +44,7 @@ public class SystemGeneralConfigServiceImpl extends AbstractGeneralConfigService
* @param generalConfigDao ConfigDao object
* @param objectMapper JSON tool object
*/
protected SystemGeneralConfigServiceImpl(GeneralConfigDao generalConfigDao, ObjectMapper objectMapper) {
public SystemGeneralConfigServiceImpl(GeneralConfigDao generalConfigDao, ObjectMapper objectMapper) {
super(generalConfigDao, objectMapper);
}
@@ -64,7 +64,7 @@ public class SystemGeneralConfigServiceImpl extends AbstractGeneralConfigService
}
@Override
protected TypeReference<SystemConfig> getTypeReference() {
public TypeReference<SystemConfig> getTypeReference() {
return new TypeReference<>() {
@Override
public Type getType() {
@@ -17,11 +17,58 @@
package org.apache.hertzbeat.manager.service;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.hertzbeat.manager.dao.GeneralConfigDao;
import org.apache.hertzbeat.manager.pojo.dto.SmsNoticeSender;
import org.apache.hertzbeat.manager.service.impl.SmsGeneralConfigServiceImpl;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
/**
* test case for {@link SmsGeneralConfigServiceImpl}
*/
class SmsGeneralConfigServiceTest {
@Mock
private GeneralConfigDao generalConfigDao;
@Mock
private ObjectMapper objectMapper;
@InjectMocks
private SmsGeneralConfigServiceImpl service;
@BeforeEach
void setUp() {
MockitoAnnotations.openMocks(this);
service = new SmsGeneralConfigServiceImpl(
generalConfigDao,
objectMapper
);
}
@Test
void testType() {
String result = service.type();
assertEquals("sms", result);
}
@Test
void testGetTypeReference() {
TypeReference<SmsNoticeSender> typeReference = service.getTypeReference();
assertNotNull(typeReference);
assertEquals(SmsNoticeSender.class, typeReference.getType());
}
}
@@ -17,11 +17,56 @@
package org.apache.hertzbeat.manager.service;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.hertzbeat.manager.dao.GeneralConfigDao;
import org.apache.hertzbeat.manager.pojo.dto.SystemConfig;
import org.apache.hertzbeat.manager.service.impl.SystemGeneralConfigServiceImpl;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
/**
* test case for {@link SystemGeneralConfigServiceImpl}
*/
class SystemGeneralConfigServiceTest {
@Mock
private GeneralConfigDao generalConfigDao;
@Mock
private ObjectMapper objectMapper;
@InjectMocks
private SystemGeneralConfigServiceImpl service;
@BeforeEach
void setUp() {
MockitoAnnotations.openMocks(this);
service = new SystemGeneralConfigServiceImpl(generalConfigDao, objectMapper);
}
@Test
void testType() {
String result = service.type();
assertEquals("system", result);
}
@Test
void testGetTypeReference() {
TypeReference<SystemConfig> typeReference = service.getTypeReference();
assertNotNull(typeReference);
assertEquals(SystemConfig.class, typeReference.getType());
}
}