Skip to content

Commit 9dcd798

Browse files
committed
Improved testing on fields
1 parent 2eea03c commit 9dcd798

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

graphene/core/types/tests/test_field.py

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,3 +129,38 @@ class Query(ObjectType):
129129
assert isinstance(type, GraphQLInputObjectField)
130130
assert type.description == 'My input field'
131131
assert type.default_value == '3'
132+
133+
134+
def test_field_resolve_argument():
135+
resolver = lambda instance, args, info: args.get('first_name')
136+
137+
field = Field(String(), first_name=String(), description='My argument', resolver=resolver)
138+
139+
class Query(ObjectType):
140+
my_field = field
141+
schema = Schema(query=Query)
142+
143+
type = schema.T(field)
144+
assert type.resolver(None, {'firstName': 'Peter'}, None) == 'Peter'
145+
146+
147+
def test_field_resolve_vars():
148+
class Query(ObjectType):
149+
hello = String(first_name=String())
150+
151+
def resolve_hello(self, args, info):
152+
return 'Hello ' + args.get('first_name')
153+
154+
schema = Schema(query=Query)
155+
156+
result = schema.execute("""
157+
query foo($firstName:String)
158+
{
159+
hello(firstName:$firstName)
160+
}
161+
""", args={"firstName": "Serkan"})
162+
163+
expected = {
164+
'hello': 'Hello Serkan'
165+
}
166+
assert result.data == expected

0 commit comments

Comments
 (0)