5
5
6
6
import java .math .BigDecimal ;
7
7
import java .math .RoundingMode ;
8
- import java .time .LocalDateTime ;
9
-
10
-
8
+ import java .time .LocalDate ;
9
+
10
+ /**
11
+ * 🧩 Value Object Test
12
+ *
13
+ * <p>A small simple object, like money or a date range, whose equality isn't based on identity.
14
+ *
15
+ * <p><b>Key Traits:</b>
16
+ * - Immutable 🚫
17
+ * - Equality by values ✅
18
+ * - Reusable & shareable ♻️
19
+ */
11
20
class ValueObjectTest {
12
21
13
22
@ Test
@@ -33,11 +42,11 @@ void shouldAllowToUseEmailAddressAsValueObject() {
33
42
34
43
@ Test
35
44
void shouldAllowToUseDateTimeRangeAsValueObject () {
36
- Assertions .assertTrue (new DateTimeRange ( LocalDateTime .MIN , LocalDateTime .MAX )
37
- .isWithinRange (LocalDateTime .now ()));
38
- Assertions .assertTrue (new DateTimeRange ( LocalDateTime .MIN , LocalDateTime .MAX )
39
- .isWithinRange (LocalDateTime .MIN ));
40
- Assertions .assertTrue (new DateTimeRange ( LocalDateTime .MIN , LocalDateTime .MAX )
41
- .isWithinRange (LocalDateTime .MAX ));
45
+ Assertions .assertTrue (new DateRange ( LocalDate .MIN , LocalDate .MAX )
46
+ .isWithinRange (LocalDate .now ()));
47
+ Assertions .assertTrue (new DateRange ( LocalDate .MIN , LocalDate .MAX )
48
+ .isWithinRange (LocalDate .MIN ));
49
+ Assertions .assertTrue (new DateRange ( LocalDate .MIN , LocalDate .MAX )
50
+ .isWithinRange (LocalDate .MAX ));
42
51
}
43
52
}
0 commit comments