diff --git a/hazelcast/src/test/java/eu/ztsh/lib/time/hazelcast/TimeRangeSerializerTest.java b/hazelcast/src/test/java/eu/ztsh/lib/time/hazelcast/TimeRangeSerializerTest.java index c557968..b932f19 100644 --- a/hazelcast/src/test/java/eu/ztsh/lib/time/hazelcast/TimeRangeSerializerTest.java +++ b/hazelcast/src/test/java/eu/ztsh/lib/time/hazelcast/TimeRangeSerializerTest.java @@ -33,14 +33,14 @@ class TimeRangeSerializerTest { private final TimeRangeSerializer serializer = new TimeRangeSerializer(); @Test - public void identityTest() throws IOException { + void identityTest() throws IOException { var range1 = new TimeRange(date1, date2); var range2 = serializer.read(serializer.write(range1)); assertThat(range2).isEqualTo(range1); } @Test - public void nonIdentityTest() throws IOException { + void nonIdentityTest() throws IOException { var range1 = new TimeRange(date1, date2); var range2 = new TimeRange(date1, date3); var range3 = serializer.read(serializer.write(range1)); diff --git a/time/src/main/java/eu/ztsh/lib/time/Formatters.java b/time/src/main/java/eu/ztsh/lib/time/Formatters.java index 01a9572..5cfc8f4 100644 --- a/time/src/main/java/eu/ztsh/lib/time/Formatters.java +++ b/time/src/main/java/eu/ztsh/lib/time/Formatters.java @@ -23,10 +23,14 @@ import java.time.format.DateTimeFormatter; */ public class Formatters { - public final static DateTimeFormatter hourMinutes = DateTimeFormatter.ofPattern("HH:mm"); - public final static DateTimeFormatter hourMinutesShort = DateTimeFormatter.ofPattern("H:mm"); - public final static DateTimeFormatter dayMonth = DateTimeFormatter.ofPattern("dd.MM"); - public final static DateTimeFormatter yearMonthDay = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - public final static DateTimeFormatter monthYear = DateTimeFormatter.ofPattern("MM.yyyy"); + public static final DateTimeFormatter hourMinutes = DateTimeFormatter.ofPattern("HH:mm"); + public static final DateTimeFormatter hourMinutesShort = DateTimeFormatter.ofPattern("H:mm"); + public static final DateTimeFormatter dayMonth = DateTimeFormatter.ofPattern("dd.MM"); + public static final DateTimeFormatter yearMonthDay = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + public static final DateTimeFormatter monthYear = DateTimeFormatter.ofPattern("MM.yyyy"); + + private Formatters() { + throw new IllegalStateException("Utility class"); + } } diff --git a/time/src/main/java/eu/ztsh/lib/time/TimeRange.java b/time/src/main/java/eu/ztsh/lib/time/TimeRange.java index 8a7d1c0..44da00e 100644 --- a/time/src/main/java/eu/ztsh/lib/time/TimeRange.java +++ b/time/src/main/java/eu/ztsh/lib/time/TimeRange.java @@ -19,6 +19,7 @@ package eu.ztsh.lib.time; import java.time.LocalDate; import java.util.Iterator; import java.util.List; +import java.util.NoSuchElementException; import java.util.Objects; import java.util.stream.Stream; @@ -105,6 +106,9 @@ public record TimeRange(LocalDate from, LocalDate to) { @Override public LocalDate next() { + if (!hasNext()) { + throw new NoSuchElementException("Out of range"); + } now = now.plusDays(1); return now.minusDays(1); } diff --git a/time/src/test/java/eu/ztsh/lib/time/DurationTest.java b/time/src/test/java/eu/ztsh/lib/time/DurationTest.java index c413169..2f23044 100644 --- a/time/src/test/java/eu/ztsh/lib/time/DurationTest.java +++ b/time/src/test/java/eu/ztsh/lib/time/DurationTest.java @@ -32,7 +32,7 @@ class DurationTest { private final Duration shortDuration = new Duration(base, 30 * 60, base.plusMinutes(30)); @Test - public void betweenSimpleComputeTest() { + void betweenSimpleComputeTest() { var next = base.plusSeconds(100); var previousDuration = new Duration(base, 0, base); @@ -42,13 +42,13 @@ class DurationTest { } @Test - public void betweenInboundComputeTest() { + void betweenInboundComputeTest() { assertThat(Duration.between(longDuration, shortDuration)).isEqualByComparingTo(nullDuration); assertThat(Duration.between(shortDuration, longDuration)).isEqualByComparingTo(nullDuration); } @Test - public void sortingTest() { + void sortingTest() { var set = new TreeSet(); set.add(nullDuration); set.add(shortDuration); diff --git a/time/src/test/java/eu/ztsh/lib/time/TimeRangeTest.java b/time/src/test/java/eu/ztsh/lib/time/TimeRangeTest.java index 7fd7282..abe0319 100644 --- a/time/src/test/java/eu/ztsh/lib/time/TimeRangeTest.java +++ b/time/src/test/java/eu/ztsh/lib/time/TimeRangeTest.java @@ -31,28 +31,28 @@ class TimeRangeTest { private final LocalDate date4 = LocalDate.of(2023, 10, 15); @Test - public void lengthTest() { + void lengthTest() { var range = new TimeRange(date1, date2); assertThat(range.getDates()).hasSize(3); assertThat(range.getLength()).isEqualTo(3); } @Test - public void equalityTest() { + void equalityTest() { var range1 = new TimeRange(date1, date2); var range2 = new TimeRange(date1, date2); assertThat(range1).isEqualTo(range2); } @Test - public void nonEqualityTest() { + void nonEqualityTest() { var range1 = new TimeRange(date1, date2); var range2 = new TimeRange(date1, date3); assertThat(range1).isNotEqualTo(range2); } @Test - public void expandAfterTest() { + void expandAfterTest() { var test = new TimeRange(date1, date2); var expected = new TimeRange(date1, date3); var result = test.expand(date3); @@ -60,7 +60,7 @@ class TimeRangeTest { } @Test - public void expandBeforeTest() { + void expandBeforeTest() { var test = new TimeRange(date2, date3); var expected = new TimeRange(date1, date3); var result = test.expand(date1); @@ -68,7 +68,7 @@ class TimeRangeTest { } @Test - public void expandInternalTest() { + void expandInternalTest() { var test = new TimeRange(date1, date3); var expected = new TimeRange(date1, date3); var result = test.expand(date2); @@ -76,7 +76,7 @@ class TimeRangeTest { } @Test - public void mergeAfterTest() { + void mergeAfterTest() { var test1 = new TimeRange(date1, date2); var test2 = new TimeRange(date3, date4); var expected = new TimeRange(date1, date4); @@ -85,7 +85,7 @@ class TimeRangeTest { } @Test - public void mergeBeforeTest() { + void mergeBeforeTest() { var test1 = new TimeRange(date1, date2); var test2 = new TimeRange(date3, date4); var expected = new TimeRange(date1, date4); @@ -94,7 +94,7 @@ class TimeRangeTest { } @Test - public void mergeIntersectingBeforeTest() { + void mergeIntersectingBeforeTest() { var test1 = new TimeRange(date1, date3); var test2 = new TimeRange(date2, date4); var expected = new TimeRange(date1, date4); @@ -103,7 +103,7 @@ class TimeRangeTest { } @Test - public void mergeIntersectionAfterTest() { + void mergeIntersectionAfterTest() { var test1 = new TimeRange(date1, date3); var test2 = new TimeRange(date2, date4); var expected = new TimeRange(date1, date4); @@ -112,7 +112,7 @@ class TimeRangeTest { } @Test - public void mergeMinorContainingTest() { + void mergeMinorContainingTest() { var test1 = new TimeRange(date1, date4); var test2 = new TimeRange(date2, date3); var expected = new TimeRange(date1, date4); @@ -121,7 +121,7 @@ class TimeRangeTest { } @Test - public void mergeMajorContainingTest() { + void mergeMajorContainingTest() { var test1 = new TimeRange(date1, date4); var test2 = new TimeRange(date2, date3); var expected = new TimeRange(date1, date4); @@ -130,7 +130,7 @@ class TimeRangeTest { } @Test - public void mergeAdjacentTest() { + void mergeAdjacentTest() { var test1 = new TimeRange(date1, date2); var test2 = new TimeRange(date4, date4); assertThatThrownBy(() -> test1.merge(test2)).isInstanceOf(IllegalArgumentException.class); diff --git a/time/src/test/java/eu/ztsh/lib/time/util/TimeUtilTest.java b/time/src/test/java/eu/ztsh/lib/time/util/TimeUtilTest.java index 2624cf7..0d1ee89 100644 --- a/time/src/test/java/eu/ztsh/lib/time/util/TimeUtilTest.java +++ b/time/src/test/java/eu/ztsh/lib/time/util/TimeUtilTest.java @@ -26,27 +26,27 @@ import static org.assertj.core.api.Assertions.assertThat; class TimeUtilTest { @Test - public void secondMondayTest() { + void secondMondayTest() { assertThat(TimeUtil.isMonthBeginning(LocalDate.of(2023, 5, 8))).isFalse(); } @Test - public void firstSundayTest() { + void firstSundayTest() { assertThat(TimeUtil.isMonthBeginning(LocalDate.of(2023, 5, 7))).isTrue(); } @Test - public void firstTuesdayTest() { + void firstTuesdayTest() { assertThat(TimeUtil.isMonthBeginning(LocalDate.of(2023, 5, 2))).isTrue(); } @Test - public void firstMondayTest() { + void firstMondayTest() { assertThat(TimeUtil.isMonthBeginning(LocalDate.of(2022, 11, 7))).isTrue(); } @Test - public void countTest() { + void countTest() { var today = LocalDate.of(2023, 7, 23); // Sunday var last = TimeUtil.getLastDayOfMonth(today); var ranges = TimeRangeUtil.createRanges(last); @@ -57,7 +57,7 @@ class TimeUtilTest { } @Test - public void mondayCalculationTest() { + void mondayCalculationTest() { var monday = LocalDate.of(2023, 5, 1); assertThat(TimeUtil.getLastMonday(monday)).isEqualTo(monday); assertThat(TimeUtil.getLastMonday(monday.plusDays(2))).isEqualTo(monday);