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 collections import OrderedDict
|
||||||
|
|
||||||
from graphql_relay.utils import base64
|
from graphql_relay.utils import base64
|
||||||
|
from promise import Promise
|
||||||
|
|
||||||
from ...types import ObjectType, Schema, String
|
from ...types import ObjectType, Schema, String
|
||||||
from ..connection import ConnectionField, PageInfo
|
from ..connection import ConnectionField, PageInfo
|
||||||
|
@ -20,12 +21,16 @@ class Letter(ObjectType):
|
||||||
class Query(ObjectType):
|
class Query(ObjectType):
|
||||||
letters = ConnectionField(Letter)
|
letters = ConnectionField(Letter)
|
||||||
connection_letters = ConnectionField(Letter)
|
connection_letters = ConnectionField(Letter)
|
||||||
|
promise_letters = ConnectionField(Letter)
|
||||||
|
|
||||||
node = Node.Field()
|
node = Node.Field()
|
||||||
|
|
||||||
def resolve_letters(self, args, context, info):
|
def resolve_letters(self, args, context, info):
|
||||||
return list(letters.values())
|
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):
|
def resolve_connection_letters(self, args, context, info):
|
||||||
return Letter.Connection(
|
return Letter.Connection(
|
||||||
page_info=PageInfo(
|
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