@Test public void testRangeQuerySortByOtherFieldNaturalOrdering() throws Exception { DBSession pojoDb = sessionFactory.createSession(); EntityBag bag = pojoDb.createOrGetBag("inverted"); try { QueryExecutor executor = bag.find(QueryBuilder.createBuilder().field("field5").greaterThan(10).field("field5").smallerThan(30).sortBy("field1")); try (QueryResult result = executor.execute()) { assertNotNull(result); assertTrue("There should be a result", result.hasNext()); int start = 11; int amount = 18; List<String> keysInOrder = assertResult(start, amount, result); List<String> expectedOrder = new ArrayList<>(); for (int i = start; i < amount + start; i++) { String id = valueToId.get("value" + i); expectedOrder.add(id); LOG.info("Expected key: {} with value: {}", id, "value" + i); } assertListOrder(keysInOrder, expectedOrder); } } finally { pojoDb.closeSession(); JasDBMain.shutdown(); } }
@Test public void testRangeQuerySortByOtherField() throws Exception { DBSession pojoDb = sessionFactory.createSession(); EntityBag bag = pojoDb.createOrGetBag("inverted"); try { QueryBuilder query = QueryBuilder.createBuilder().field("field5").greaterThan(10).field("field5").smallerThan(30).sortBy("field6", Order.ASCENDING); List<Entity> entities = getEntities(bag, query); List<String> field6Values = getEntityValue(entities, "field6"); long previous = 0; for(String stringValue : field6Values) { long value = Long.parseLong(stringValue); assertThat(value >= previous, is(true)); previous = value; } } finally { pojoDb.closeSession(); JasDBMain.shutdown(); } }
@Test public void testRangeQuery() throws Exception { DBSession pojoDb = sessionFactory.createSession(); EntityBag bag = pojoDb.createOrGetBag("inverted"); try { QueryExecutor executor = bag.find(QueryBuilder.createBuilder().field("field5").greaterThan(10).field("field5").smallerThan(30)); try (QueryResult result = executor.execute()) { assertEquals(19, result.size()); assertNotNull(result); assertTrue("There should be a result", result.hasNext()); assertResult(11, 18, result); } } finally { pojoDb.closeSession(); JasDBMain.shutdown(); } }