mirror of
https://github.com/graphql-python/graphene.git
synced 2025-02-08 23:50:38 +03:00
Added connection promise tests
This commit is contained in:
parent
0b9aa7cbeb
commit
c7a48c3c2c
|
@ -1,6 +1,7 @@
|
|||
from collections import OrderedDict
|
||||
|
||||
from graphql_relay.utils import base64
|
||||
from promise import Promise
|
||||
|
||||
from ...types import ObjectType, Schema, String
|
||||
from ..connection import ConnectionField, PageInfo
|
||||
|
@ -20,12 +21,16 @@ class Letter(ObjectType):
|
|||
class Query(ObjectType):
|
||||
letters = ConnectionField(Letter)
|
||||
connection_letters = ConnectionField(Letter)
|
||||
promise_letters = ConnectionField(Letter)
|
||||
|
||||
node = Node.Field()
|
||||
|
||||
def resolve_letters(self, args, context, info):
|
||||
return list(letters.values())
|
||||
|
||||
def resolve_promise_letters(self, args, context, info):
|
||||
return Promise.resolve(list(letters.values()))
|
||||
|
||||
def resolve_connection_letters(self, args, context, info):
|
||||
return Letter.Connection(
|
||||
page_info=PageInfo(
|
||||
|
@ -228,3 +233,38 @@ def test_connection_type_nodes():
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
def test_connection_promise():
|
||||
result = schema.execute('''
|
||||
{
|
||||
promiseLetters(first:1) {
|
||||
edges {
|
||||
node {
|
||||
id
|
||||
letter
|
||||
}
|
||||
}
|
||||
pageInfo {
|
||||
hasPreviousPage
|
||||
hasNextPage
|
||||
}
|
||||
}
|
||||
}
|
||||
''')
|
||||
|
||||
assert not result.errors
|
||||
assert result.data == {
|
||||
'promiseLetters': {
|
||||
'edges': [{
|
||||
'node': {
|
||||
'id': 'TGV0dGVyOjA=',
|
||||
'letter': 'A',
|
||||
},
|
||||
}],
|
||||
'pageInfo': {
|
||||
'hasPreviousPage': False,
|
||||
'hasNextPage': True,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user