Skip to content

Commit 2f75f35

Browse files
authored
Fix regression when query keys filter is not applied to the fetch query (#515)
1 parent 3d93040 commit 2f75f35

File tree

2 files changed

+30
-3
lines changed

2 files changed

+30
-3
lines changed

schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaQueryDataFetcher.java

+1-3
Original file line numberDiff line numberDiff line change
@@ -104,9 +104,7 @@ public PagedResult<Object> get(DataFetchingEnvironment environment) {
104104
);
105105

106106
if (!queryKeys.isEmpty()) {
107-
pagedResult.withSelect(
108-
queryFactory.queryResultList(environment, maxResults, restrictedKeys.get())
109-
);
107+
pagedResult.withSelect(queryFactory.queryResultList(environment, maxResults, queryKeys));
110108
} else {
111109
pagedResult.withSelect(List.of());
112110
}

schema/src/test/java/com/introproventures/graphql/jpa/query/converter/GraphQLJpaConverterTests.java

+29
Original file line numberDiff line numberDiff line change
@@ -1054,4 +1054,33 @@ public void testGraphqlTasksQueryWithEmbeddedVariablesWhereCriteria() throws Int
10541054

10551055
assertThat(result.toString()).isEqualTo(expected);
10561056
}
1057+
1058+
@Test
1059+
void testGraphqlTasksQueryWithAliases() {
1060+
// @formatter:off
1061+
String query ="""
1062+
query {
1063+
page1: Tasks(page: {start: 1, limit: 2}) {
1064+
select {
1065+
id
1066+
name
1067+
}
1068+
}
1069+
page2: Tasks(page: {start: 3, limit: 2}) {
1070+
select {
1071+
id
1072+
name
1073+
}
1074+
}
1075+
}
1076+
""";
1077+
// @formatter:on
1078+
1079+
Object result = executor.execute(query).getData();
1080+
1081+
String expected =
1082+
"{page1={select=[{id=1, name=task1}, {id=2, name=task2}]}, page2={select=[{id=5, name=task5}, {id=6, name=task6}]}}";
1083+
1084+
assertThat(result.toString()).isEqualTo(expected);
1085+
}
10571086
}

0 commit comments

Comments
 (0)