Allow ObjectType to set Connection name

This commit is contained in:
Brian Chapman 2018-01-08 09:16:02 -08:00
parent 38db32e4f2
commit a2178dc220
2 changed files with 18 additions and 2 deletions

View File

@ -73,7 +73,7 @@ class Connection(ObjectType):
edge = type(edge_name, edge_bases, {})
cls.Edge = edge
_meta.name = name
options['name'] = name
_meta.node = node
_meta.fields = OrderedDict([
('page_info', Field(PageInfo, name='pageInfo', required=True)),

View File

@ -52,6 +52,21 @@ def test_connection_inherit_abstracttype():
assert list(fields.keys()) == ['page_info', 'edges', 'extra']
def test_connection_name():
custom_name = "MyObjectCustomNameConnection"
class BaseConnection(object):
extra = String()
class MyObjectConnection(BaseConnection, Connection):
class Meta:
node = MyObject
name = custom_name
assert MyObjectConnection._meta.name == custom_name
def test_edge():
class MyObjectConnection(Connection):
@ -122,9 +137,10 @@ def test_connectionfield_node_deprecated():
field = ConnectionField(MyObject)
with pytest.raises(Exception) as exc_info:
field.type
assert "ConnectionField's now need a explicit ConnectionType for Nodes." in str(exc_info.value)
def test_connectionfield_custom_args():
class MyObjectConnection(Connection):