diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/WaitTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/WaitTest.java index b539bc8aabcf..05739c0f451d 100644 --- a/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/WaitTest.java +++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/transforms/WaitTest.java @@ -22,6 +22,7 @@ import java.io.Serializable; import java.util.Collections; import java.util.List; +import java.util.Objects; import java.util.Set; import java.util.concurrent.atomic.AtomicReference; import java.util.stream.Collectors; @@ -95,6 +96,22 @@ public String toString() { .add("watermarkUpdate", watermarkUpdate) .toString(); } + + @Override + public int hashCode() { + return Objects.hash(processingTime, element, watermarkUpdate); + } + + @Override + public boolean equals(Object other) { + if (!(other instanceof Event)) { + return false; + } + Event otherEvent = (Event) other; + return Objects.equals(processingTime, otherEvent.processingTime) + && Objects.equals(watermarkUpdate, otherEvent.watermarkUpdate) + && Objects.equals(element, otherEvent.element); + } } /** @@ -238,6 +255,21 @@ public WindowExpirationValue(@Nullable Instant watermarkAdvance, long value) { this.watermarkAdvance = watermarkAdvance; this.value = value; } + + @Override + public boolean equals(Object other) { + if (!(other instanceof WindowExpirationValue)) { + return false; + } + WindowExpirationValue otherValue = (WindowExpirationValue) other; + return Objects.equals(watermarkAdvance, otherValue.watermarkAdvance) + && value == otherValue.value; + } + + @Override + public int hashCode() { + return Objects.hash(watermarkAdvance, value); + } } @Test