Description
I'd like to preface this by saying I am new to GraphQL and this could easily be an issue in my Query.
I have recreated the issue with unit tests here: https://github.com/jcromp/graphql-enum-error-example
mvn test
should do the trick.
The query should take a list of Enum's and if no values are provided it should default to a list of ALL the possible enum values:
type Query {
foos(fooStatus: [StatusEnum!] = [GOOD, BAD, UGLY]): [Foo]
}
enum StatusEnum {
GOOD,
BAD,
UGLY
}
This works perfectly fine if I am providing the values to the query. However, when I don't provide value(s) and the default value is used, when the resolver gets the arguments from the DataFetchingEnvironment they come out as Strings and not their Enum type, this causes a ClassCastException: class java.lang.String cannot be cast to class com.example.enumerrorexample.StatusEnum
If this is me not understanding something could someone please let me know what I am doing wrong.
Thanks.