Successor of JAVA-794.
If array contains map/DBObject with dots in field names - they wouldn't be detected.
@Test(expectedExceptions = IllegalArgumentException.class)
public void testDotKeysArrayFail() {
DBCollection collection = _db.getCollection("testdotkeysFail");
DBObject obj = new BasicDBObject("x", 1)
.append("y", 2)
.append("array", new Object[]{new BasicDBObject("foo.bar", "baz")});
collection.insert(obj);
}
@Test(expectedExceptions = IllegalArgumentException.class)
public void testDotKeysArrayFail3() {
DBCollection collection = _db.getCollection("testdotkeysFail");
final Map<String, Object> map = new HashMap<String, Object>(1);
map.put("foo.bar",2);
DBObject obj = new BasicDBObject("x", 1)
.append("y", 2)
.append("array", new Object[]{map});
collection.insert(obj);
}