mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-08-18 20:38:02 +08:00
Merge pull request #2118 from youzipi/v5-dev
feat(core:DateUtil): add `rangeFunc` and `rangeConsume`
This commit is contained in:
@@ -36,6 +36,32 @@ public class RangeTest {
|
||||
Assert.assertFalse(range.hasNext());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dateRangeFuncTest() {
|
||||
DateTime start = DateUtil.parse("2021-01-01");
|
||||
DateTime end = DateUtil.parse("2021-01-03");
|
||||
|
||||
List<Integer> dayOfMonthList = DateUtil.rangeFunc(start, end, DateField.DAY_OF_YEAR, a -> DateTime.of(a).dayOfMonth());
|
||||
Assert.assertArrayEquals(dayOfMonthList.toArray(new Integer[]{}), new Integer[]{1, 2, 3});
|
||||
|
||||
List<Integer> dayOfMonthList2 = DateUtil.rangeFunc(null, null, DateField.DAY_OF_YEAR, a -> DateTime.of(a).dayOfMonth());
|
||||
Assert.assertArrayEquals(dayOfMonthList2.toArray(new Integer[]{}), new Integer[]{});
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dateRangeConsumeTest() {
|
||||
DateTime start = DateUtil.parse("2021-01-01");
|
||||
DateTime end = DateUtil.parse("2021-01-03");
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
DateUtil.rangeConsume(start, end, DateField.DAY_OF_YEAR, a -> sb.append(DateTime.of(a).dayOfMonth()).append("#"));
|
||||
Assert.assertEquals(sb.toString(), "1#2#3#");
|
||||
|
||||
StringBuilder sb2 = new StringBuilder();
|
||||
DateUtil.rangeConsume(null, null, DateField.DAY_OF_YEAR, a -> sb.append(DateTime.of(a).dayOfMonth()).append("#"));
|
||||
Assert.assertEquals(sb2.toString(), "");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void dateRangeTest2() {
|
||||
DateTime start = DateUtil.parse("2021-01-31");
|
||||
|
Reference in New Issue
Block a user