Skip to content

Commit 9592e06

Browse files
author
Oryan M
committed
Minor cleanup
1 parent 16b4558 commit 9592e06

File tree

2 files changed

+25
-36
lines changed

2 files changed

+25
-36
lines changed

src/main/kotlin/graphql/kickstart/tools/resolver/MissingFieldResolver.kt

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,13 @@ import graphql.kickstart.tools.SchemaParserOptions
55
import graphql.kickstart.tools.TypeClassMatcher
66
import graphql.language.FieldDefinition
77
import graphql.schema.DataFetcher
8-
import graphql.schema.DataFetchingEnvironment
98

109
internal class MissingFieldResolver(
1110
field: FieldDefinition,
1211
options: SchemaParserOptions
1312
) : FieldResolver(field, FieldResolverScanner.Search(Any::class.java, MissingResolverInfo(), null), options, Any::class.java) {
1413

1514
override fun scanForMatches(): List<TypeClassMatcher.PotentialMatch> = listOf()
16-
override fun createDataFetcher(): DataFetcher<*> {
17-
return options.missingResolverDataFetcher ?: return NotImplementedMissingFieldDataFetcher()
18-
}
19-
20-
class NotImplementedMissingFieldDataFetcher : DataFetcher<Any?> {
21-
override fun get(env: DataFetchingEnvironment?): Any? {
22-
TODO("Schema resolver not implemented")
23-
}
24-
}
15+
override fun createDataFetcher(): DataFetcher<*> =
16+
options.missingResolverDataFetcher ?: DataFetcher<Any> { TODO("Schema resolver not implemented") }
2517
}

src/test/kotlin/graphql/kickstart/tools/MissingFieldResolverTest.kt

Lines changed: 23 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
package graphql.kickstart.tools
22

3-
import graphql.ExecutionInput
43
import graphql.GraphQL
54
import graphql.kickstart.tools.resolver.FieldResolverError
65
import graphql.schema.DataFetcher
76
import graphql.schema.DataFetchingEnvironment
8-
import org.junit.Assert
97
import org.junit.Test
108
import java.util.*
119

1210
class MissingFieldResolverTest {
1311

1412
@Test(expected = FieldResolverError::class)
15-
fun `should throw error`() {
13+
fun `should throw error when a field is missing`() {
1614
SchemaParser.newParser()
17-
.schemaString("""
18-
type Query {
19-
implementedField(input: String): String
20-
missingField(input: Int): Int
21-
}
22-
"""
15+
.schemaString(
16+
"""
17+
type Query {
18+
implementedField(input: String): String
19+
missingField(input: Int): Int
20+
}
21+
"""
2322
)
2423
.resolvers(object : GraphQLQueryResolver {
2524
fun implementedField(input: Optional<String>) = input.toString()
@@ -31,12 +30,13 @@ class MissingFieldResolverTest {
3130
@Test
3231
fun `should call missing resolver data fetcher if provided`() {
3332
val schema = SchemaParser.newParser()
34-
.schemaString("""
35-
type Query {
36-
implementedField(input: String): String
37-
missingField(input: Int): Int
38-
}
39-
"""
33+
.schemaString(
34+
"""
35+
type Query {
36+
implementedField(input: String): String
37+
missingField(input: Int): Int
38+
}
39+
"""
4040
)
4141
.resolvers(object : GraphQLQueryResolver {
4242
fun implementedField(input: Optional<String>) = input.toString()
@@ -49,23 +49,20 @@ class MissingFieldResolverTest {
4949

5050
val gql = GraphQL.newGraphQL(schema).build()
5151

52-
val result = gql
53-
.execute(ExecutionInput.newExecutionInput()
54-
.query("""
55-
query {
56-
implementedField(input: "test-value")
57-
missingField(input: 1)
58-
}
59-
""")
60-
.context(Object())
61-
.root(Object()))
52+
val result = gql.execute(
53+
"""
54+
query {
55+
implementedField(input: "test-value")
56+
missingField(input: 1)
57+
}
58+
""")
6259

6360
val expected = mapOf(
6461
"implementedField" to "Optional[test-value]",
6562
"missingField" to 1
6663
)
6764

68-
Assert.assertEquals(expected, result.getData())
65+
assertEquals(result.getData(), expected)
6966
}
7067

7168
class TestMissingResolverDataFetcher : DataFetcher<Any?> {

0 commit comments

Comments
 (0)