|
16 | 16 |
|
17 | 17 | package com.mongodb;
|
18 | 18 |
|
| 19 | +import org.bson.BSONObject; |
| 20 | +import org.bson.BasicBSONObject; |
19 | 21 | import org.bson.codecs.Codec;
|
20 | 22 | import org.bson.json.JsonMode;
|
21 | 23 | import org.bson.json.JsonWriterSettings;
|
| 24 | +import org.bson.types.BasicBSONList; |
22 | 25 | import org.bson.types.ObjectId;
|
23 | 26 | import org.junit.Assert;
|
24 | 27 | import org.junit.Test;
|
@@ -165,48 +168,65 @@ public void testEqualsAndHashCode() {
|
165 | 168 | assertEquality(new BasicDBObject(), new BasicDBObject());
|
166 | 169 |
|
167 | 170 | assertEquality(new BasicDBObject("x", 1), new BasicDBObject("x", 1));
|
| 171 | + assertEquality(new BasicDBObject("x", 1), new BasicBSONObject("x", 1)); |
168 | 172 |
|
169 | 173 | assertInequality(new BasicDBObject("x", 1), new BasicDBObject("x", 2));
|
| 174 | + assertInequality(new BasicDBObject("x", 1), new BasicBSONObject("x", 2)); |
170 | 175 |
|
171 | 176 | assertInequality(new BasicDBObject("x", 1), new BasicDBObject("y", 1));
|
| 177 | + assertInequality(new BasicDBObject("x", 1), new BasicBSONObject("y", 1)); |
172 | 178 |
|
173 | 179 | assertEquality(new BasicDBObject("x", asList(1, 2, 3)), new BasicDBObject("x", new int[]{1, 2, 3}));
|
| 180 | + assertEquality(new BasicDBObject("x", asList(1, 2, 3)), new BasicBSONObject("x", asList(1, 2, 3))); |
174 | 181 |
|
175 | 182 | BasicDBList list = new BasicDBList();
|
176 | 183 | list.put(0, 1);
|
177 | 184 | list.put(1, 2);
|
178 | 185 | list.put(2, 3);
|
179 | 186 |
|
180 | 187 | assertEquality(new BasicDBObject("x", asList(1, 2, 3)), new BasicDBObject("x", list));
|
| 188 | + assertEquality(new BasicDBObject("x", asList(1, 2, 3)), new BasicBSONObject("x", list)); |
| 189 | + |
181 | 190 |
|
182 | 191 | assertEquality(new BasicDBObject("x", 1).append("y", 2), new BasicDBObject("y", 2).append("x", 1));
|
| 192 | + assertEquality(new BasicDBObject("x", 1).append("y", 2), new BasicBSONObject("y", 2).append("x", 1)); |
183 | 193 |
|
184 | 194 | assertEquality(new BasicDBObject("a", new BasicDBObject("y", 2).append("x", 1)),
|
185 | 195 | new BasicDBObject("a", new BasicDBObject("x", 1).append("y", 2)));
|
| 196 | + assertEquality(new BasicDBObject("a", new BasicDBObject("y", 2).append("x", 1)), |
| 197 | + new BasicBSONObject("a", new BasicBSONObject("x", 1).append("y", 2))); |
186 | 198 |
|
187 | 199 | assertEquality(new BasicDBObject("a", asList(new BasicDBObject("y", 2).append("x", 1))),
|
188 | 200 | new BasicDBObject("a", asList(new BasicDBObject("x", 1).append("y", 2))));
|
| 201 | + assertEquality(new BasicDBObject("a", asList(new BasicDBObject("y", 2).append("x", 1))), |
| 202 | + new BasicBSONObject("a", asList(new BasicBSONObject("x", 1).append("y", 2)))); |
189 | 203 |
|
190 | 204 | assertEquality(new BasicDBObject("a", new BasicDBList().put(1, new BasicDBObject("y", 2).append("x", 1))),
|
191 | 205 | new BasicDBObject("a", new BasicDBList().put(1, new BasicDBObject("x", 1).append("y", 2))));
|
| 206 | + assertEquality(new BasicDBObject("a", new BasicDBList().put(1, new BasicDBObject("y", 2).append("x", 1))), |
| 207 | + new BasicBSONObject("a", new BasicBSONList().put(1, new BasicBSONObject("x", 1).append("y", 2)))); |
192 | 208 |
|
193 | 209 | Map<String, Object> first = new HashMap<String, Object>();
|
194 | 210 | first.put("1", new BasicDBObject("y", 2).append("x", 1));
|
195 | 211 | first.put("2", new BasicDBObject("a", 2).append("b", 1));
|
196 | 212 | Map<String, Object> second = new TreeMap<String, Object>();
|
197 | 213 | second.put("2", new BasicDBObject("b", 1).append("a", 2));
|
198 | 214 | second.put("1", new BasicDBObject("x", 1).append("y", 2));
|
| 215 | + Map<String, Object> third = new TreeMap<String, Object>(); |
| 216 | + third.put("2", new BasicBSONObject("a", 2).append("b", 1)); |
| 217 | + third.put("1", new BasicBSONObject("x", 1).append("y", 2)); |
199 | 218 |
|
200 | 219 | assertEquality(new BasicDBObject("a", first), new BasicDBObject("a", second));
|
| 220 | + assertEquality(new BasicDBObject("a", first), new BasicBSONObject("a", third)); |
201 | 221 | }
|
202 | 222 |
|
203 |
| - void assertEquality(final BasicDBObject x, final BasicDBObject y) { |
| 223 | + void assertEquality(final BSONObject x, final BSONObject y) { |
204 | 224 | assertEquals(x, y);
|
205 | 225 | assertEquals(y, x);
|
206 | 226 | assertEquals(x.hashCode(), y.hashCode());
|
207 | 227 | }
|
208 | 228 |
|
209 |
| - void assertInequality(final BasicDBObject x, final BasicDBObject y) { |
| 229 | + void assertInequality(final BSONObject x, final BSONObject y) { |
210 | 230 | assertThat(x, not(y));
|
211 | 231 | assertThat(y, not(x));
|
212 | 232 | assertThat(x.hashCode(), not(y.hashCode()));
|
|
0 commit comments