Search in sources :

Example 1 with AggregateQueryImpl

use of org.molgenis.data.support.AggregateQueryImpl in project molgenis by molgenis.

the class PlatformIT method runAggregateQuery.

private AggregateResult runAggregateQuery(String attrX, String attrY, String attrDistinct, Query<Entity> query) {
    requireNonNull(attrX);
    requireNonNull(query);
    Attribute x = entityTypeDynamic.getAttribute(attrX);
    Attribute y = attrY != null ? entityTypeDynamic.getAttribute(attrY) : null;
    Attribute distinct = attrDistinct != null ? entityTypeDynamic.getAttribute(attrDistinct) : null;
    AggregateQuery aggregateQuery = new AggregateQueryImpl(x, y, distinct, query);
    return runAsSystem(() -> dataService.aggregate(entityTypeDynamic.getId(), aggregateQuery));
}
Also used : AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl)

Example 2 with AggregateQueryImpl

use of org.molgenis.data.support.AggregateQueryImpl in project molgenis by molgenis.

the class DataServiceIT method testAggregateTwoDimensionalDistinct.

@WithMockUser(username = USERNAME_READ)
@Test(groups = "readtest")
public void testAggregateTwoDimensionalDistinct() {
    AggregateQuery aggregateQuery = new AggregateQueryImpl().query(new QueryImpl<>()).attrX(entityType.getAttribute(ATTR_BOOL)).attrY(entityType.getAttribute(ATTR_BOOL)).attrDistinct(entityType.getAttribute(ATTR_ENUM));
    AggregateResult result = dataService.aggregate(entityType.getId(), aggregateQuery);
    AggregateResult expectedResult = new AggregateResult(asList(asList(1L, 0L), asList(0L, 1L)), asList(0L, 1L), asList(0L, 1L));
    assertEquals(result, expectedResult);
}
Also used : AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) QueryImpl(org.molgenis.data.support.QueryImpl) AggregateResult(org.molgenis.data.aggregation.AggregateResult) AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) WithMockUser(org.springframework.security.test.context.support.WithMockUser) Test(org.testng.annotations.Test)

Example 3 with AggregateQueryImpl

use of org.molgenis.data.support.AggregateQueryImpl in project molgenis by molgenis.

the class DataServiceIT method testAggregateTwoDimensionalQuery.

@WithMockUser(username = USERNAME_READ)
@Test(groups = "readtest")
public void testAggregateTwoDimensionalQuery() {
    AggregateQuery aggregateQuery = new AggregateQueryImpl().query(new QueryImpl<>()).attrX(entityType.getAttribute(ATTR_BOOL)).attrY(entityType.getAttribute(ATTR_BOOL)).query(new QueryImpl<>().gt(ATTR_INT, 10));
    AggregateResult result = dataService.aggregate(entityType.getId(), aggregateQuery);
    AggregateResult expectedResult = new AggregateResult(asList(asList(1L, 0L), asList(0L, 1L)), asList(0L, 1L), asList(0L, 1L));
    assertEquals(result, expectedResult);
}
Also used : AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) QueryImpl(org.molgenis.data.support.QueryImpl) AggregateResult(org.molgenis.data.aggregation.AggregateResult) AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) WithMockUser(org.springframework.security.test.context.support.WithMockUser) Test(org.testng.annotations.Test)

Example 4 with AggregateQueryImpl

use of org.molgenis.data.support.AggregateQueryImpl in project molgenis by molgenis.

the class DataServiceIT method testAggregateTwoDimensionalQueryDistinct.

@WithMockUser(username = USERNAME_READ)
@Test(groups = "readtest")
public void testAggregateTwoDimensionalQueryDistinct() {
    AggregateQuery aggregateQuery = new AggregateQueryImpl().query(new QueryImpl<>()).attrX(entityType.getAttribute(ATTR_BOOL)).attrY(entityType.getAttribute(ATTR_ENUM)).attrDistinct(entityType.getAttribute(ATTR_ENUM)).query(new QueryImpl<>().gt(ATTR_INT, 1));
    AggregateResult result = dataService.aggregate(entityType.getId(), aggregateQuery);
    AggregateResult expectedResult = new AggregateResult(asList(asList(0L, 1L), asList(1L, 0L)), asList(0L, 1L), asList("option1", "option2"));
    assertEquals(result, expectedResult);
}
Also used : AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) QueryImpl(org.molgenis.data.support.QueryImpl) AggregateResult(org.molgenis.data.aggregation.AggregateResult) AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) WithMockUser(org.springframework.security.test.context.support.WithMockUser) Test(org.testng.annotations.Test)

Example 5 with AggregateQueryImpl

use of org.molgenis.data.support.AggregateQueryImpl in project molgenis by molgenis.

the class DataServiceIT method testAggregateOneDimensionalDistinct.

@WithMockUser(username = USERNAME_READ)
@Test(groups = "readtest")
public void testAggregateOneDimensionalDistinct() {
    AggregateQuery aggregateQuery = new AggregateQueryImpl().query(new QueryImpl<>()).attrX(entityType.getAttribute(ATTR_BOOL)).attrDistinct(entityType.getAttribute(ATTR_ENUM));
    AggregateResult result = dataService.aggregate(entityType.getId(), aggregateQuery);
    AggregateResult expectedResult = new AggregateResult(asList(singletonList(1L), singletonList(1L)), asList(0L, 1L), emptyList());
    assertEquals(result, expectedResult);
}
Also used : AggregateResult(org.molgenis.data.aggregation.AggregateResult) AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) AggregateQueryImpl(org.molgenis.data.support.AggregateQueryImpl) WithMockUser(org.springframework.security.test.context.support.WithMockUser) Test(org.testng.annotations.Test)

Aggregations

AggregateQueryImpl (org.molgenis.data.support.AggregateQueryImpl)9 AggregateQuery (org.molgenis.data.aggregation.AggregateQuery)8 AggregateResult (org.molgenis.data.aggregation.AggregateResult)7 Test (org.testng.annotations.Test)7 WithMockUser (org.springframework.security.test.context.support.WithMockUser)6 QueryImpl (org.molgenis.data.support.QueryImpl)5 Attribute (org.molgenis.data.meta.model.Attribute)2 Lists.newArrayList (com.google.common.collect.Lists.newArrayList)1 URISyntaxException (java.net.URISyntaxException)1 ExplainedAttribute (org.molgenis.semanticsearch.explain.bean.ExplainedAttribute)1 ResponseEntity (org.springframework.http.ResponseEntity)1