Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit bdcd1a2

Browse files
committedMar 8, 2025·
Clarify the Value Object concept
1 parent 268b52a commit bdcd1a2

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed
 

‎CleanCode/src/test/java/pl/mperor/lab/java/clean/code/ddd/value/object/ValueObjectTest.java

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,18 @@
55

66
import java.math.BigDecimal;
77
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+
*/
1120
class ValueObjectTest {
1221

1322
@Test
@@ -33,11 +42,11 @@ void shouldAllowToUseEmailAddressAsValueObject() {
3342

3443
@Test
3544
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));
4251
}
4352
}

0 commit comments

Comments
 (0)
Please sign in to comment.