diff --git a/graphene_sqlalchemy/registry.py b/graphene_sqlalchemy/registry.py index 61285cbf..60904065 100644 --- a/graphene_sqlalchemy/registry.py +++ b/graphene_sqlalchemy/registry.py @@ -8,7 +8,7 @@ def __init__(self): def register(self, cls): from .types import SQLAlchemyObjectType assert issubclass(cls, SQLAlchemyObjectType), ( - 'Only classes of type SQLAlchemyObjectType can be registered, ', + 'Only classes of type SQLAlchemyObjectType can be registered, ' 'received "{}"' ).format(cls.__name__) assert cls._meta.registry == self, 'Registry for a Model have to match.' diff --git a/graphene_sqlalchemy/tests/test_registry.py b/graphene_sqlalchemy/tests/test_registry.py new file mode 100644 index 00000000..86a54f4e --- /dev/null +++ b/graphene_sqlalchemy/tests/test_registry.py @@ -0,0 +1,31 @@ +import pytest + +from .models import Pet +from ..registry import Registry +from ..types import SQLAlchemyObjectType + + +def test_register_incorrect_objecttype(): + reg = Registry() + + class Spam: + pass + + with pytest.raises(AssertionError) as excinfo: + reg.register(Spam) + + assert 'Only classes of type SQLAlchemyObjectType can be registered' in str(excinfo.value) + + +def test_register_objecttype(): + reg = Registry() + + class PetType(SQLAlchemyObjectType): + class Meta: + model = Pet + registry = reg + + try: + reg.register(PetType) + except AssertionError: + pytest.fail("expected no AssertionError")