diff --git a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaQueryDataFetcher.java b/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaQueryDataFetcher.java index af06479f..b1736deb 100644 --- a/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaQueryDataFetcher.java +++ b/schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaQueryDataFetcher.java @@ -104,9 +104,7 @@ public PagedResult get(DataFetchingEnvironment environment) { ); if (!queryKeys.isEmpty()) { - pagedResult.withSelect( - queryFactory.queryResultList(environment, maxResults, restrictedKeys.get()) - ); + pagedResult.withSelect(queryFactory.queryResultList(environment, maxResults, queryKeys)); } else { pagedResult.withSelect(List.of()); } diff --git a/schema/src/test/java/com/introproventures/graphql/jpa/query/converter/GraphQLJpaConverterTests.java b/schema/src/test/java/com/introproventures/graphql/jpa/query/converter/GraphQLJpaConverterTests.java index aaeaeed3..acf43390 100644 --- a/schema/src/test/java/com/introproventures/graphql/jpa/query/converter/GraphQLJpaConverterTests.java +++ b/schema/src/test/java/com/introproventures/graphql/jpa/query/converter/GraphQLJpaConverterTests.java @@ -1054,4 +1054,33 @@ public void testGraphqlTasksQueryWithEmbeddedVariablesWhereCriteria() throws Int assertThat(result.toString()).isEqualTo(expected); } + + @Test + void testGraphqlTasksQueryWithAliases() { + // @formatter:off + String query =""" + query { + page1: Tasks(page: {start: 1, limit: 2}) { + select { + id + name + } + } + page2: Tasks(page: {start: 3, limit: 2}) { + select { + id + name + } + } + } + """; + // @formatter:on + + Object result = executor.execute(query).getData(); + + String expected = + "{page1={select=[{id=1, name=task1}, {id=2, name=task2}]}, page2={select=[{id=5, name=task5}, {id=6, name=task6}]}}"; + + assertThat(result.toString()).isEqualTo(expected); + } }