Skip to content

Commit f0ecd05

Browse files
committed
Update EqualsBuilderReflectJreImplementationTest for TemporalAmount
1 parent 55608cb commit f0ecd05

File tree

1 file changed

+52
-7
lines changed

1 file changed

+52
-7
lines changed

src/test/java/org/apache/commons/lang3/builder/EqualsBuilderReflectJreImplementationTest.java

Lines changed: 52 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,11 @@
2424
import java.time.Instant;
2525
import java.time.temporal.Temporal;
2626
import java.time.temporal.TemporalAccessor;
27+
import java.time.temporal.TemporalAmount;
2728
import java.time.temporal.TemporalField;
2829
import java.time.temporal.TemporalUnit;
2930
import java.util.Arrays;
31+
import java.util.List;
3032

3133
import org.apache.commons.lang3.AbstractLangTest;
3234
import org.junit.jupiter.api.Test;
@@ -78,16 +80,18 @@ static class MyClass {
7880
private final MyCharSequence charSequence;
7981
private final MyTemporal temporal;
8082
private final MyTemporalAccessor temporalAccessor;
83+
private final MyTemporalAmount temporalAmount;
8184

82-
MyClass(final MyTemporal temporal, final MyTemporalAccessor temporalAccessor, final MyCharSequence charSequence) {
85+
MyClass(final MyCharSequence charSequence, final MyTemporal temporal, final MyTemporalAccessor temporalAccessor, final MyTemporalAmount temporalAmount) {
8386
this.charSequence = charSequence;
8487
this.temporal = temporal;
8588
this.temporalAccessor = temporalAccessor;
89+
this.temporalAmount = temporalAmount;
8690
}
8791

8892
@Override
8993
public String toString() {
90-
return String.format("%s[%s - %s - %s]", getClass().getSimpleName(), charSequence, temporal, temporalAccessor);
94+
return String.format("%s[%s - %s - %s - $s]", getClass().getSimpleName(), charSequence, temporal, temporalAccessor, temporalAmount);
9195
}
9296
}
9397

@@ -141,7 +145,6 @@ public Temporal with(final TemporalField field, final long newValue) {
141145
}
142146

143147
}
144-
145148
static class MyTemporalAccessor implements TemporalAccessor {
146149

147150
private final String string;
@@ -173,13 +176,55 @@ public String toString() {
173176

174177
}
175178

179+
static class MyTemporalAmount implements TemporalAmount {
180+
181+
private final String string;
182+
private final long value;
183+
private final Instant instant;
184+
private final Duration duration;
185+
186+
MyTemporalAmount(final String string) {
187+
this.string = string;
188+
this.value = Long.parseLong(string);
189+
this.instant = Instant.ofEpochMilli(value);
190+
this.duration = Duration.between(instant, instant.plusMillis(value));
191+
}
192+
193+
@Override
194+
public Temporal addTo(final Temporal temporal) {
195+
return null;
196+
}
197+
198+
@Override
199+
public long get(final TemporalUnit unit) {
200+
return 0;
201+
}
202+
203+
@Override
204+
public List<TemporalUnit> getUnits() {
205+
return null;
206+
}
207+
208+
@Override
209+
public Temporal subtractFrom(final Temporal temporal) {
210+
return null;
211+
}
212+
213+
@Override
214+
public String toString() {
215+
return String.format("%s[%s - %s - %s]", getClass().getSimpleName(), string, instant, duration);
216+
}
217+
218+
219+
}
220+
176221
@Test
177222
public void testRecursive() {
178-
final MyClass o1 = new MyClass(new MyTemporal("1"), new MyTemporalAccessor("2"), new MyCharSequence("3"));
223+
final MyClass o1 = new MyClass(new MyCharSequence("1"), new MyTemporal("2"), new MyTemporalAccessor("3"), new MyTemporalAmount("4"));
179224
// This gives you different instances of MyTemporalAccessor for 1 (and 2) that should be equals by reflection.
180-
final MyClass o1Bis = new MyClass(new MyTemporal("1"), new MyTemporalAccessor("2"), new MyCharSequence("3"));
181-
final MyClass o2 = new MyClass(new MyTemporal("4"), new MyTemporalAccessor("5"), new MyCharSequence("6"));
182-
final MyClass o2Bis = new MyClass(new MyTemporal("4"), new MyTemporalAccessor("5"), new MyCharSequence("6"));
225+
final MyClass o1Bis = new MyClass(new MyCharSequence("1"), new MyTemporal("2"), new MyTemporalAccessor("3"), new MyTemporalAmount("4"));
226+
final MyClass o2 = new MyClass(new MyCharSequence("5"), new MyTemporal("6"), new MyTemporalAccessor("7"), new MyTemporalAmount("8"));
227+
final MyClass o2Bis = new MyClass(new MyCharSequence("5"), new MyTemporal("6"), new MyTemporalAccessor("7"), new MyTemporalAmount("8"));
183228
// MyTemporal
184229
assertTrue(new EqualsBuilder().setTestRecursive(true).append(new MyTemporal("1"), new MyTemporal("1")).isEquals());
185230
// MyTemporalAccessor

0 commit comments

Comments
 (0)