graphene/tests/relay/test_relay.py

49 lines
1.1 KiB
Python

from pytest import raises
import graphene
from graphene import relay
schema = graphene.Schema()
relay = schema.relay
class OtherNode(relay.Node):
name = graphene.StringField()
@classmethod
def get_node(cls, id):
pass
def test_field_no_contributed_raises_error():
with raises(Exception) as excinfo:
class Part(relay.Node):
x = graphene.StringField()
assert 'get_node' in str(excinfo.value)
def test_node_should_have_connection():
assert OtherNode.connection
def test_node_should_have_id_field():
assert 'id' in OtherNode._meta.fields_map
# def test_field_no_contributed_raises_error():
# with raises(Exception) as excinfo:
# class Ship(graphene.ObjectType):
# name = graphene.StringField()
# class Meta:
# schema = schema
# class Faction(relay.Node):
# name = graphene.StringField()
# ships = relay.ConnectionField(Ship)
# @classmethod
# def get_node(cls):
# pass
# class Meta:
# schema = schema
# assert 'same type_name' in str(excinfo.value)