use of com.mongodb.client.model.CreateCollectionOptions in project mongo-java-driver by mongodb.
the class DatabaseAcceptanceTest method shouldSupportMaxNumberOfDocumentsInACappedCollection.
@Test
public void shouldSupportMaxNumberOfDocumentsInACappedCollection() {
int maxDocuments = 5;
database.createCollection(getCollectionName(), new CreateCollectionOptions().capped(true).sizeInBytes(40 * 1024).autoIndex(false).maxDocuments(maxDocuments));
List<String> collections = database.listCollectionNames().into(new ArrayList<String>());
assertThat(collections.contains(getCollectionName()), is(true));
Document collStatsCommand = new Document("collStats", getCollectionName());
Document collectionStatistics = database.runCommand(collStatsCommand, ReadPreference.primary());
assertThat("max is set correctly in collection statistics", collectionStatistics.getInteger("max"), is(maxDocuments));
}
use of com.mongodb.client.model.CreateCollectionOptions in project morphia by mongodb.
the class AggregationTest method testBypassDocumentValidation.
@Test
public void testBypassDocumentValidation() {
checkMinServerVersion(3.2);
getDs().save(asList(new User("john doe", new Date()), new User("John Doe", new Date())));
MongoDatabase database = getMongoClient().getDatabase(TEST_DB_NAME);
database.getCollection("out_users").drop();
database.createCollection("out_users", new CreateCollectionOptions().validationOptions(new ValidationOptions().validator(Document.parse("{ age : { gte : 13 } }"))));
try {
getDs().createAggregation(User.class).match(getDs().find(User.class).field("name").equal("john doe")).out("out_users", User.class);
fail("Document validation should have complained.");
} catch (MongoCommandException e) {
// expected
}
getDs().createAggregation(User.class).match(getDs().find(User.class).field("name").equal("john doe")).out("out_users", User.class, builder().bypassDocumentValidation(true).build());
Assert.assertEquals(1, getAds().find("out_users", User.class).count());
}
Aggregations