From 0ddfaec0dfad04c4f7f4f714c4f6b831fea6cfb5 Mon Sep 17 00:00:00 2001 From: Lijx Date: Sun, 9 Oct 2022 22:40:39 +0800 Subject: [PATCH] AlarmControlHandler supplement test cases --- hippo4j-message/pom.xml | 38 +++++++++++++++++++ .../hippo4j/message/dto/AlarmControlDTO.java | 4 +- .../service/AlarmControlHandlerTest.java | 35 +++++++++++++++++ 3 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 hippo4j-message/src/test/java/cn/hippo4j/message/service/AlarmControlHandlerTest.java diff --git a/hippo4j-message/pom.xml b/hippo4j-message/pom.xml index 91b55f08..2ac59350 100644 --- a/hippo4j-message/pom.xml +++ b/hippo4j-message/pom.xml @@ -15,10 +15,12 @@ hippo4j-common ${revision} + org.projectlombok lombok + com.aliyun alibaba-dingtalk-service-sdk @@ -31,10 +33,18 @@ + commons-codec commons-codec + + + org.springframework.boot + spring-boot-starter-test + test + + @@ -47,5 +57,33 @@ + + + org.apache.maven.plugins + maven-jar-plugin + + + + ${project.artifactId} + ${project.version} + ${maven.build.timestamp} + chen.ma + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.10.3 + + + + jar + + + + + diff --git a/hippo4j-message/src/main/java/cn/hippo4j/message/dto/AlarmControlDTO.java b/hippo4j-message/src/main/java/cn/hippo4j/message/dto/AlarmControlDTO.java index 91901772..11c5128f 100644 --- a/hippo4j-message/src/main/java/cn/hippo4j/message/dto/AlarmControlDTO.java +++ b/hippo4j-message/src/main/java/cn/hippo4j/message/dto/AlarmControlDTO.java @@ -18,12 +18,12 @@ package cn.hippo4j.message.dto; import cn.hippo4j.message.enums.NotifyTypeEnum; -import lombok.Builder; -import lombok.Data; +import lombok.*; /** * Alarm control DTO. */ +@AllArgsConstructor @Data @Builder public class AlarmControlDTO { diff --git a/hippo4j-message/src/test/java/cn/hippo4j/message/service/AlarmControlHandlerTest.java b/hippo4j-message/src/test/java/cn/hippo4j/message/service/AlarmControlHandlerTest.java new file mode 100644 index 00000000..44cea303 --- /dev/null +++ b/hippo4j-message/src/test/java/cn/hippo4j/message/service/AlarmControlHandlerTest.java @@ -0,0 +1,35 @@ +package cn.hippo4j.message.service; + +import cn.hippo4j.message.dto.AlarmControlDTO; +import cn.hippo4j.message.enums.NotifyTypeEnum; +import org.junit.Assert; +import org.junit.Test; + +public class AlarmControlHandlerTest { + + @Test + public void assertIsNotSendAlarm() { + AlarmControlHandler alarmControlHandler = new AlarmControlHandler(); + AlarmControlDTO alarmControlDTO = new AlarmControlDTO("1", "Wechat", NotifyTypeEnum.ACTIVITY); + Assert.assertFalse(alarmControlHandler.isSendAlarm(alarmControlDTO)); + } + + @Test + public void assertIsSendAlarm() { + AlarmControlHandler alarmControlHandler = new AlarmControlHandler(); + AlarmControlDTO alarmControlDTO = new AlarmControlDTO("1", "Wechat", NotifyTypeEnum.ACTIVITY); + alarmControlHandler.initCacheAndLock("1", "Wechat", 1); + Assert.assertTrue(alarmControlHandler.isSendAlarm(alarmControlDTO)); + } + + @Test + public void assertExpireAfterSendAlarm() throws InterruptedException { + AlarmControlHandler alarmControlHandler = new AlarmControlHandler(); + AlarmControlDTO alarmControlDTO = new AlarmControlDTO("1", "Wechat", NotifyTypeEnum.ACTIVITY); + alarmControlHandler.initCacheAndLock("1", "Wechat", 1); + alarmControlHandler.isSendAlarm(alarmControlDTO); + Thread.sleep(60 * 1000); + Assert.assertTrue(alarmControlHandler.isSendAlarm(alarmControlDTO)); + } + +}