Skip to content

Commit c7a48c3

Browse files
committed
Added connection promise tests
1 parent 0b9aa7c commit c7a48c3

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

graphene/relay/tests/test_connection_query.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from collections import OrderedDict
22

33
from graphql_relay.utils import base64
4+
from promise import Promise
45

56
from ...types import ObjectType, Schema, String
67
from ..connection import ConnectionField, PageInfo
@@ -20,12 +21,16 @@ class Meta:
2021
class Query(ObjectType):
2122
letters = ConnectionField(Letter)
2223
connection_letters = ConnectionField(Letter)
24+
promise_letters = ConnectionField(Letter)
2325

2426
node = Node.Field()
2527

2628
def resolve_letters(self, args, context, info):
2729
return list(letters.values())
2830

31+
def resolve_promise_letters(self, args, context, info):
32+
return Promise.resolve(list(letters.values()))
33+
2934
def resolve_connection_letters(self, args, context, info):
3035
return Letter.Connection(
3136
page_info=PageInfo(
@@ -228,3 +233,38 @@ def test_connection_type_nodes():
228233
}
229234
}
230235
}
236+
237+
238+
def test_connection_promise():
239+
result = schema.execute('''
240+
{
241+
promiseLetters(first:1) {
242+
edges {
243+
node {
244+
id
245+
letter
246+
}
247+
}
248+
pageInfo {
249+
hasPreviousPage
250+
hasNextPage
251+
}
252+
}
253+
}
254+
''')
255+
256+
assert not result.errors
257+
assert result.data == {
258+
'promiseLetters': {
259+
'edges': [{
260+
'node': {
261+
'id': 'TGV0dGVyOjA=',
262+
'letter': 'A',
263+
},
264+
}],
265+
'pageInfo': {
266+
'hasPreviousPage': False,
267+
'hasNextPage': True,
268+
}
269+
}
270+
}

0 commit comments

Comments
 (0)