Merge pull request #641 from presencelearning/issue-610-connection-name

Allow ObjectType to set Connection name
This commit is contained in:
Syrus Akbary 2018-01-20 15:37:46 -08:00 committed by GitHub
commit a0fc843513
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 2 deletions

View File

@ -73,7 +73,7 @@ class Connection(ObjectType):
edge = type(edge_name, edge_bases, {}) edge = type(edge_name, edge_bases, {})
cls.Edge = edge cls.Edge = edge
_meta.name = name options['name'] = name
_meta.node = node _meta.node = node
_meta.fields = OrderedDict([ _meta.fields = OrderedDict([
('page_info', Field(PageInfo, name='pageInfo', required=True)), ('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'] 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(): def test_edge():
class MyObjectConnection(Connection): class MyObjectConnection(Connection):
@ -122,9 +137,10 @@ def test_connectionfield_node_deprecated():
field = ConnectionField(MyObject) field = ConnectionField(MyObject)
with pytest.raises(Exception) as exc_info: with pytest.raises(Exception) as exc_info:
field.type field.type
assert "ConnectionField's now need a explicit ConnectionType for Nodes." in str(exc_info.value) assert "ConnectionField's now need a explicit ConnectionType for Nodes." in str(exc_info.value)
def test_connectionfield_custom_args(): def test_connectionfield_custom_args():
class MyObjectConnection(Connection): class MyObjectConnection(Connection):