Browse Source

add CronUtils ut

zhangzy 5 years ago
parent
commit
a09d2d9d0a

+ 1 - 1
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/utils/cron/CronUtils.java

@@ -166,7 +166,7 @@ public class CronUtils {
   public static List<Date> getSelfFireDateList(Date startTime, Date endTime, String cron) {
     CronExpression cronExpression = null;
     try {
-      cronExpression = CronUtils.parse2CronExpression(cron);
+      cronExpression = parse2CronExpression(cron);
     }catch (ParseException e){
       logger.error(e.getMessage(), e);
       return Collections.EMPTY_LIST;

+ 15 - 0
dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/cron/CronUtilsTest.java

@@ -17,6 +17,7 @@
 package org.apache.dolphinscheduler.dao.cron;
 
 import org.apache.dolphinscheduler.common.enums.CycleEnum;
+import org.apache.dolphinscheduler.common.utils.DateUtils;
 import org.apache.dolphinscheduler.dao.utils.cron.CronUtils;
 import com.cronutils.builder.CronBuilder;
 import com.cronutils.model.Cron;
@@ -31,6 +32,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.text.ParseException;
+import java.util.Date;
 
 import static com.cronutils.model.field.expression.FieldExpressionFactory.*;
 
@@ -180,4 +182,17 @@ public class CronUtilsTest {
             }
         }
     }
+
+
+    @Test
+    public void test3(){
+        Date from = DateUtils.stringToDate("2020-01-01 00:00:00");
+        Date to = DateUtils.stringToDate("2020-01-31 01:00:00");
+        // test date
+        Assert.assertEquals(0, CronUtils.getSelfFireDateList(to, from, "0 0 0 * * ? ").size());
+        // test error cron
+        Assert.assertEquals(0, CronUtils.getSelfFireDateList(from, to, "0 0 0 * *").size());
+        // test cron
+        Assert.assertEquals(30, CronUtils.getSelfFireDateList(from, to, "0 0 0 * * ? ").size());
+    }
 }