Skip to content

Commit c28f287

Browse files
cpovirkMichael Bolin
authored andcommitted
Inline checkEqualsAndHashCodeMethods calls in preparation for deprecating the method.
------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=25471702
1 parent de2dc0d commit c28f287

2 files changed

Lines changed: 46 additions & 61 deletions

File tree

tests/com/google/common/geometry/S2PolylineTest.java

Lines changed: 46 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
package com.google.common.geometry;
1818

1919
import com.google.common.collect.Lists;
20-
import com.google.testing.util.MoreAsserts;
20+
21+
import junit.framework.Assert;
2122

2223
import java.util.List;
2324

@@ -105,16 +106,16 @@ public void testEqualsAndHashCode() {
105106
S2Polyline line1 = new S2Polyline(vertices);
106107
S2Polyline line2 = new S2Polyline(vertices);
107108

108-
MoreAsserts.checkEqualsAndHashCodeMethods(line1, line2, true);
109+
checkEqualsAndHashCodeMethods(line1, line2, true);
109110

110111
List<S2Point> moreVertices = Lists.newLinkedList(vertices);
111112
moreVertices.remove(0);
112113

113114
S2Polyline line3 = new S2Polyline(moreVertices);
114115

115-
MoreAsserts.checkEqualsAndHashCodeMethods(line1, line3, false);
116-
MoreAsserts.checkEqualsAndHashCodeMethods(line1, null, false);
117-
MoreAsserts.checkEqualsAndHashCodeMethods(line1, "", false);
116+
checkEqualsAndHashCodeMethods(line1, line3, false);
117+
checkEqualsAndHashCodeMethods(line1, null, false);
118+
checkEqualsAndHashCodeMethods(line1, "", false);
118119
}
119120

120121
public void testProject() {
@@ -159,4 +160,44 @@ public void testProject() {
159160
assertEquals(2, edgeIndex);
160161
}
161162

163+
/**
164+
* Utility for testing equals() and hashCode() results at once.
165+
* Tests that lhs.equals(rhs) matches expectedResult, as well as
166+
* rhs.equals(lhs). Also tests that hashCode() return values are
167+
* equal if expectedResult is true. (hashCode() is not tested if
168+
* expectedResult is false, as unequal objects can have equal hashCodes.)
169+
*
170+
* @param lhs An Object for which equals() and hashCode() are to be tested.
171+
* @param rhs As lhs.
172+
* @param expectedResult True if the objects should compare equal,
173+
* false if not.
174+
*/
175+
private static void checkEqualsAndHashCodeMethods(Object lhs, Object rhs,
176+
boolean expectedResult) {
177+
if ((lhs == null) && (rhs == null)) {
178+
Assert.assertTrue(
179+
"Your check is dubious...why would you expect null != null?",
180+
expectedResult);
181+
return;
182+
}
183+
184+
if ((lhs == null) || (rhs == null)) {
185+
Assert.assertFalse(
186+
"Your check is dubious...why would you expect an object "
187+
+ "to be equal to null?", expectedResult);
188+
}
189+
190+
if (lhs != null) {
191+
assertEquals(expectedResult, lhs.equals(rhs));
192+
}
193+
if (rhs != null) {
194+
assertEquals(expectedResult, rhs.equals(lhs));
195+
}
196+
197+
if (expectedResult) {
198+
String hashMessage =
199+
"hashCode() values for equal objects should be the same";
200+
Assert.assertTrue(hashMessage, lhs.hashCode() == rhs.hashCode());
201+
}
202+
}
162203
}

tests/com/google/testing/util/MoreAsserts.java

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -118,62 +118,6 @@ public static <T> void assertContentsAnyOrder(
118118
assertContentsAnyOrder((String) null, expected, actual, comparator);
119119
}
120120

121-
122-
/**
123-
* Utility for testing equals() and hashCode() results at once.
124-
* Tests that lhs.equals(rhs) matches expectedResult, as well as
125-
* rhs.equals(lhs). Also tests that hashCode() return values are
126-
* equal if expectedResult is true. (hashCode() is not tested if
127-
* expectedResult is false, as unequal objects can have equal hashCodes.)
128-
*
129-
* @param lhs An Object for which equals() and hashCode() are to be tested.
130-
* @param rhs As lhs.
131-
* @param expectedResult True if the objects should compare equal,
132-
* false if not.
133-
*/
134-
public static void checkEqualsAndHashCodeMethods(
135-
String message, Object lhs, Object rhs, boolean expectedResult) {
136-
137-
if ((lhs == null) && (rhs == null)) {
138-
Assert.assertTrue(
139-
"Your check is dubious...why would you expect null != null?",
140-
expectedResult);
141-
return;
142-
}
143-
144-
if ((lhs == null) || (rhs == null)) {
145-
Assert.assertFalse(
146-
"Your check is dubious...why would you expect an object "
147-
+ "to be equal to null?", expectedResult);
148-
}
149-
150-
if (lhs != null) {
151-
assertEqualsImpl(message, expectedResult, lhs.equals(rhs));
152-
}
153-
if (rhs != null) {
154-
assertEqualsImpl(message, expectedResult, rhs.equals(lhs));
155-
}
156-
157-
if (expectedResult) {
158-
String hashMessage =
159-
"hashCode() values for equal objects should be the same";
160-
if (message != null) {
161-
hashMessage += ": " + message;
162-
}
163-
Assert.assertTrue(hashMessage, lhs.hashCode() == rhs.hashCode());
164-
}
165-
}
166-
167-
/**
168-
* Variant of
169-
* {@link #checkEqualsAndHashCodeMethods(String, Object, Object, boolean)}
170-
* using a generic message.
171-
*/
172-
public static void checkEqualsAndHashCodeMethods(Object lhs, Object rhs,
173-
boolean expectedResult) {
174-
checkEqualsAndHashCodeMethods((String) null, lhs, rhs, expectedResult);
175-
}
176-
177121
private static void failNotEqual(String message, Object expected,
178122
Object actual) {
179123
if ((expected != null) && (actual != null)

0 commit comments

Comments
 (0)