use of org.hypertrace.core.documentstore.OrderBy in project entity-service by hypertrace.
the class DocStoreConverterTest method testSelectionsWithOrderBy.
@Test
public void testSelectionsWithOrderBy() {
Query query = Query.newBuilder().addEntityId("some id").addOrderBy(OrderByExpression.newBuilder().setName("col1").setOrder(SortOrder.DESC).build()).addOrderBy(OrderByExpression.newBuilder().setName("col2").build()).build();
org.hypertrace.core.documentstore.Query transformedQuery = DocStoreConverter.transform(TENANT_ID, query, List.of("selection1", "selection2"));
List<String> selections = transformedQuery.getSelections();
Assertions.assertEquals(2, selections.size());
Assertions.assertEquals("selection1", selections.get(0));
Assertions.assertEquals("selection2", selections.get(1));
List<OrderBy> transformedOrderBys = transformedQuery.getOrderBys();
Assertions.assertEquals(2, transformedOrderBys.size());
Assertions.assertEquals("col1", transformedOrderBys.get(0).getField());
Assertions.assertFalse(transformedOrderBys.get(0).isAsc());
Assertions.assertEquals("col2", transformedOrderBys.get(1).getField());
Assertions.assertTrue(transformedOrderBys.get(1).isAsc());
}
use of org.hypertrace.core.documentstore.OrderBy in project entity-service by hypertrace.
the class DocStoreConverterTest method testOrderByConversion.
@Test
public void testOrderByConversion() {
Query query = Query.newBuilder().addEntityId("some id").addOrderBy(OrderByExpression.newBuilder().setName("col1").setOrder(SortOrder.DESC).build()).addOrderBy(OrderByExpression.newBuilder().setName("col2").build()).build();
org.hypertrace.core.documentstore.Query transformedQuery = DocStoreConverter.transform(TENANT_ID, query, Collections.emptyList());
Assertions.assertEquals(0, transformedQuery.getSelections().size());
List<OrderBy> transformedOrderBys = transformedQuery.getOrderBys();
Assertions.assertEquals(2, transformedOrderBys.size());
Assertions.assertEquals("col1", transformedOrderBys.get(0).getField());
Assertions.assertFalse(transformedOrderBys.get(0).isAsc());
Assertions.assertEquals("col2", transformedOrderBys.get(1).getField());
Assertions.assertTrue(transformedOrderBys.get(1).isAsc());
}
use of org.hypertrace.core.documentstore.OrderBy in project document-store by hypertrace.
the class MongoQueryParserTest method testParseOrderByQuery.
@Test
void testParseOrderByQuery() {
List<OrderBy> orderBys = List.of(new OrderBy("key1", true), new OrderBy("key2", false), new OrderBy("key3", true));
assertEquals(Map.of("key1", 1, "key2", -1, "key3", 1), MongoQueryParser.parseOrderBys(orderBys));
}
use of org.hypertrace.core.documentstore.OrderBy in project document-store by hypertrace.
the class PostgresQueryParserTest method testParseOrderBys.
@Test
void testParseOrderBys() {
List<OrderBy> orderBys = List.of(new OrderBy("key1", true), new OrderBy("key2", false), new OrderBy("key3", true));
Assertions.assertEquals("document->>'key1' ASC , document->>'key2' DESC , document->>'key3' ASC", PostgresQueryParser.parseOrderBys(orderBys));
}