From 57cd6fcc4e8ee4d8d1d13d47a97a6c35b344c30e Mon Sep 17 00:00:00 2001 From: Giorgos Stamatelatos Date: Wed, 27 Jun 2018 23:02:16 +0300 Subject: [PATCH] Extra assertions on Weighted --- src/main/java/gr/james/sampling/Weighted.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/gr/james/sampling/Weighted.java b/src/main/java/gr/james/sampling/Weighted.java index e188893..64ba390 100644 --- a/src/main/java/gr/james/sampling/Weighted.java +++ b/src/main/java/gr/james/sampling/Weighted.java @@ -49,8 +49,10 @@ public Weighted(T object, double weight) { public int compareTo(Weighted o) { final int c = Double.compare(weight, o.weight); if (c == 0) { + assert (Integer.compare(System.identityHashCode(this), System.identityHashCode(o)) == 0) == (this.equals(o)); return Integer.compare(System.identityHashCode(this), System.identityHashCode(o)); } else { + assert !this.equals(o); return c; } } @@ -65,6 +67,7 @@ public int compareTo(Weighted o) { */ @Override public boolean equals(Object obj) { + assert !super.equals(obj) || super.hashCode() == obj.hashCode(); return super.equals(obj); }