diff --git a/graphene/relay/connection.py b/graphene/relay/connection.py index afe6ffb3..3e2e9ad9 100644 --- a/graphene/relay/connection.py +++ b/graphene/relay/connection.py @@ -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)), diff --git a/graphene/relay/tests/test_connection.py b/graphene/relay/tests/test_connection.py index b6a26df3..36978882 100644 --- a/graphene/relay/tests/test_connection.py +++ b/graphene/relay/tests/test_connection.py @@ -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):