Search in sources :

Example 6 with User

use of dev.morphia.test.models.User in project morphia by mongodb.

the class AccumulatorExpressionsTest method testStdDevSamp.

@Test
public void testStdDevSamp() {
    // we don't have a data set to test numbers so let's at least test we're creating the correct structures for the server
    getDs().save(new User("", LocalDate.now()));
    getDs().aggregate(User.class).sample(100).group(Group.group().field("ageStdDev", stdDevSamp(field("age")))).execute(Document.class).toList();
}
Also used : User(dev.morphia.test.models.User) Document(org.bson.Document) Test(org.testng.annotations.Test)

Example 7 with User

use of dev.morphia.test.models.User in project morphia by mongodb.

the class ExpressionsTestBase method seed.

@BeforeMethod
public void seed() {
    getDs().getCollection(User.class).drop();
    getDs().save(new User("", LocalDate.now()));
}
Also used : User(dev.morphia.test.models.User) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 8 with User

use of dev.morphia.test.models.User in project morphia by mongodb.

the class FiltersTest method testBitsAllClear.

@Test
public void testBitsAllClear() {
    MongoCollection<Document> collection = getDatabase().getCollection("users");
    collection.insertMany(asList(new Document("a", 54).append("binaryValueofA", "00110110").append("_t", "User"), new Document("a", 20).append("binaryValueofA", "00010100").append("_t", "User"), new Document("a", 20.0).append("binaryValueofA", "00010100").append("_t", "User")));
    FindOptions options = new FindOptions().logQuery();
    Query<User> query = getDs().find(User.class).disableValidation().filter(bitsAllClear("a", 35));
    assertEquals(query.iterator(options).toList().size(), 2, query.getLoggedQuery());
    query = getDs().find(User.class).disableValidation().filter(bitsAllClear("a", new int[] { 1, 5 }));
    assertEquals(query.iterator(options).toList().size(), 2, query.getLoggedQuery());
}
Also used : FindOptions(dev.morphia.query.FindOptions) User(dev.morphia.test.models.User) Document(org.bson.Document) Test(org.testng.annotations.Test)

Example 9 with User

use of dev.morphia.test.models.User in project morphia by mongodb.

the class FiltersTest method testSize.

@Test
public void testSize() {
    getDs().save(List.of(new User("John", LocalDate.now(), "puppies", "kittens", "heavy metal"), new User("Janice", LocalDate.now(), "Chandler", "NYC")));
    User likes = getDs().find(User.class).filter(size("likes", 3)).iterator().next();
    assertEquals(likes.name, "John");
    likes = getDs().find(User.class).filter(size("likes", 2)).iterator().next();
    assertEquals(likes.name, "Janice");
    likes = getDs().find(User.class).filter(size("likes", 20)).iterator().tryNext();
    assertNull(likes);
}
Also used : User(dev.morphia.test.models.User) Test(org.testng.annotations.Test)

Example 10 with User

use of dev.morphia.test.models.User in project morphia by mongodb.

the class TestUpdateOperations method testMaxWithDates.

@Test
public void testMaxWithDates() {
    List<User> entities = List.of(new User("User 1", LocalDate.of(2003, 7, 13)), new User("User 2", LocalDate.of(2009, 12, 1)), new User("User 3", LocalDate.of(2015, 8, 19)));
    getDs().save(entities);
    UpdateResult updated = getDs().find(User.class).update(max("joined", LocalDate.now())).execute(new UpdateOptions().multi(true));
    assertEquals(updated.getModifiedCount(), 3);
    getDs().find(User.class).delete();
    getDs().save(entities);
    updated = getDs().find(User.class).update(max("joined", Instant.now())).execute(new UpdateOptions().multi(true));
    assertEquals(updated.getModifiedCount(), 3);
    getDs().find(User.class).delete();
    getDs().save(entities);
    Calendar instance = Calendar.getInstance();
    instance.set(2136, Calendar.MAY, 13);
    Date date = instance.getTime();
    updated = getDs().find(User.class).update(max("joined", date)).execute(new UpdateOptions().multi(true));
    assertEquals(updated.getModifiedCount(), 3);
}
Also used : User(dev.morphia.test.models.User) Calendar(java.util.Calendar) UpdateResult(com.mongodb.client.result.UpdateResult) UpdateOptions(dev.morphia.UpdateOptions) Date(java.util.Date) LocalDate(java.time.LocalDate) UpdateOperators.currentDate(dev.morphia.query.experimental.updates.UpdateOperators.currentDate) Test(org.testng.annotations.Test)

Aggregations

User (dev.morphia.test.models.User)16 Test (org.testng.annotations.Test)14 Document (org.bson.Document)5 FindOptions (dev.morphia.query.FindOptions)4 LocalDate (java.time.LocalDate)4 UpdateResult (com.mongodb.client.result.UpdateResult)2 UpdateOptions (dev.morphia.UpdateOptions)2 UpdateOperators.currentDate (dev.morphia.query.experimental.updates.UpdateOperators.currentDate)2 Rectangle (dev.morphia.test.models.Rectangle)2 Calendar (java.util.Calendar)2 Date (java.util.Date)2 BeforeMethod (org.testng.annotations.BeforeMethod)2 MongoQueryException (com.mongodb.MongoQueryException)1 MongoWriteException (com.mongodb.MongoWriteException)1 Point (com.mongodb.client.model.geojson.Point)1 InsertOneOptions (dev.morphia.InsertOneOptions)1 MorphiaSession (dev.morphia.experimental.MorphiaSession)1 StringDates (dev.morphia.test.aggregation.experimental.model.StringDates)1 DateTimeFormatter (java.time.format.DateTimeFormatter)1