Search in sources :

Example 1 with Query

use of dev.morphia.query.Query in project morphia by mongodb.

the class TestLegacyQuery method testCollations.

@Test
public void testCollations() {
    getMapper().map(ContainsRenamedFields.class);
    getDs().save(asList(new ContainsRenamedFields("first", "last"), new ContainsRenamedFields("First", "Last")));
    Query query = getDs().find(ContainsRenamedFields.class).field("last_name").equal("last");
    assertEquals(query.execute().toList().size(), 1);
    assertEquals(query.execute(new FindOptions().collation(builder().locale("en").collationStrength(CollationStrength.SECONDARY).build())).toList().size(), 2);
    assertEquals(query.count(), 1);
    assertEquals(query.count(new CountOptions().collation(builder().locale("en").collationStrength(CollationStrength.SECONDARY).build())), 2);
}
Also used : FindOptions(dev.morphia.query.FindOptions) Query(dev.morphia.query.Query) CountOptions(dev.morphia.query.CountOptions) Test(org.testng.annotations.Test)

Example 2 with Query

use of dev.morphia.query.Query in project morphia by mongodb.

the class TestQuery method testCollations.

@Test
public void testCollations() {
    getMapper().map(ContainsRenamedFields.class);
    getDs().save(asList(new ContainsRenamedFields("first", "last"), new ContainsRenamedFields("First", "Last")));
    Query query = getDs().find(ContainsRenamedFields.class).filter(eq("last_name", "last"));
    assertEquals(query.iterator().toList().size(), 1);
    assertEquals(query.iterator(new FindOptions().collation(builder().locale("en").collationStrength(CollationStrength.SECONDARY).build())).toList().size(), 2);
    assertEquals(query.count(), 1);
    assertEquals(query.count(new CountOptions().collation(builder().locale("en").collationStrength(CollationStrength.SECONDARY).build())), 2);
}
Also used : FindOptions(dev.morphia.query.FindOptions) Query(dev.morphia.query.Query) CountOptions(dev.morphia.query.CountOptions) Test(org.testng.annotations.Test)

Example 3 with Query

use of dev.morphia.query.Query in project morphia by mongodb.

the class TestQuery method testNoLifeCycleEventsOnParameters.

@Test
public void testNoLifeCycleEventsOnParameters() {
    final ContainsPic cpk = new ContainsPic();
    final Pic p = new Pic("some pic");
    getDs().save(p);
    cpk.setPic(p);
    getDs().save(cpk);
    Pic queryPic = new Pic("some pic");
    queryPic.setId(p.getId());
    Query query = getDs().find(ContainsPic.class).filter(eq("pic", queryPic));
    assertFalse(queryPic.isPrePersist());
    assertNotNull(query.iterator(new FindOptions().limit(1)).tryNext());
    getDs().find(ContainsPic.class).filter(elemMatch("pic", eq("pic", queryPic)));
    assertFalse(queryPic.isPrePersist());
}
Also used : FindOptions(dev.morphia.query.FindOptions) Query(dev.morphia.query.Query) Test(org.testng.annotations.Test)

Aggregations

FindOptions (dev.morphia.query.FindOptions)3 Query (dev.morphia.query.Query)3 Test (org.testng.annotations.Test)3 CountOptions (dev.morphia.query.CountOptions)2