diff --git a/generate/testdata/queries/InputEnum.graphql b/generate/testdata/queries/InputEnum.graphql new file mode 100644 index 0000000..f481333 --- /dev/null +++ b/generate/testdata/queries/InputEnum.graphql @@ -0,0 +1,5 @@ +query InputEnumQuery($role: Role!) { + usersWithRole(role: $role) { + id + } +} diff --git a/generate/testdata/queries/InputEnum.graphql.go b/generate/testdata/queries/InputEnum.graphql.go new file mode 100644 index 0000000..3ccf7ae --- /dev/null +++ b/generate/testdata/queries/InputEnum.graphql.go @@ -0,0 +1,48 @@ +package test + +// Code generated by github.com/Khan/genqlient, DO NOT EDIT. + +import ( + "github.com/Khan/genqlient/graphql" + "github.com/me/mypkg" +) + +type InputEnumQueryResponse struct { + UsersWithRole []InputEnumQueryUsersWithRoleUser `json:"usersWithRole"` +} + +type InputEnumQueryUsersWithRoleUser struct { + Id mypkg.ID `json:"id"` +} + +type Role string + +const ( + RoleStudent Role = "STUDENT" + RoleTeacher Role = "TEACHER" +) + +func InputEnumQuery( + client graphql.Client, + role Role, +) (*InputEnumQueryResponse, error) { + variables := map[string]interface{}{ + "role": role, + } + + var retval InputEnumQueryResponse + err := client.MakeRequest( + nil, + "InputEnumQuery", + ` +query InputEnumQuery ($role: Role!) { + usersWithRole(role: $role) { + id + } +} +`, + &retval, + variables, + ) + return &retval, err +} diff --git a/generate/testdata/queries/InputEnum.graphql.json b/generate/testdata/queries/InputEnum.graphql.json new file mode 100644 index 0000000..1e43b63 --- /dev/null +++ b/generate/testdata/queries/InputEnum.graphql.json @@ -0,0 +1,9 @@ +{ + "operations": [ + { + "operationName": "InputEnumQuery", + "query": "\nquery InputEnumQuery ($role: Role!) {\n\tusersWithRole(role: $role) {\n\t\tid\n\t}\n}\n", + "sourceLocation": "testdata/queries/InputEnum.graphql" + } + ] +} \ No newline at end of file diff --git a/generate/testdata/queries/schema.graphql b/generate/testdata/queries/schema.graphql index a177f6c..8691207 100644 --- a/generate/testdata/queries/schema.graphql +++ b/generate/testdata/queries/schema.graphql @@ -62,6 +62,7 @@ type Topic implements Content { type Query { user(query: UserQueryInput): User + usersWithRole(role: Role!): [User!]! root: Topic! randomLeaf: LeafContent! convert(dt: DateTime!, tz: String): DateTime! diff --git a/generate/types.go b/generate/types.go index d273db6..2550abe 100644 --- a/generate/types.go +++ b/generate/types.go @@ -372,7 +372,7 @@ func (builder *typeBuilder) writeTypedef( builder.WriteString("const (\n") for _, val := range typedef.EnumValues { fmt.Fprintf(builder, "%s %s = \"%s\"\n", - typeNamePrefix+goConstName(val.Name), + typeName+goConstName(val.Name), typeName, val.Name) } builder.WriteString(")\n")