diff --git a/graphene/types/jsontype.py b/graphene/types/generic.py similarity index 71% rename from graphene/types/jsontype.py rename to graphene/types/generic.py index fa46bd68..5a8f467f 100644 --- a/graphene/types/jsontype.py +++ b/graphene/types/generic.py @@ -7,11 +7,11 @@ from graphene.types.scalars import MIN_INT, MAX_INT from .scalars import Scalar -class JSON(Scalar): +class Generic(Scalar): """ - The `JSON` scalar type represents JSON values as specified by - [ECMA-404](http://www.ecma-international.org/ - publications/files/ECMA-ST/ECMA-404.pdf). + The `Generic` scalar type represents a generic + GraphQL scalar value that could be: + String, Boolean, Int, Float, List or Object. """ @staticmethod @@ -32,8 +32,8 @@ class JSON(Scalar): elif isinstance(ast, FloatValue): return float(ast.value) elif isinstance(ast, ListValue): - return [JSON.parse_literal(value) for value in ast.values] + return [Generic.parse_literal(value) for value in ast.values] elif isinstance(ast, ObjectValue): - return {field.name.value: JSON.parse_literal(field.value) for field in ast.fields} + return {field.name.value: Generic.parse_literal(field.value) for field in ast.fields} else: return None diff --git a/graphene/types/tests/test_jsontype.py b/graphene/types/tests/test_generic.py similarity index 81% rename from graphene/types/tests/test_jsontype.py rename to graphene/types/tests/test_generic.py index b56fcf28..e5e940ba 100644 --- a/graphene/types/tests/test_jsontype.py +++ b/graphene/types/tests/test_generic.py @@ -1,12 +1,12 @@ -from ..jsontype import JSON +from ..generic import Generic from ..objecttype import ObjectType from ..schema import Schema class Query(ObjectType): - json = JSON(input=JSON()) + generic = Generic(input=Generic()) - def resolve_json(self, args, context, info): + def resolve_generic(self, args, context, info): input = args.get('input') return input @@ -14,8 +14,8 @@ class Query(ObjectType): schema = Schema(query=Query) -def test_json_query_variable(): - for json_value in [ +def test_generic_query_variable(): + for generic_value in [ 1, 1.1, True, @@ -45,20 +45,20 @@ def test_json_query_variable(): None ]: result = schema.execute( - '''query Test($json: JSON){ json(input: $json) }''', - variable_values={'json': json_value} + '''query Test($generic: Generic){ generic(input: $generic) }''', + variable_values={'generic': generic_value} ) assert not result.errors assert result.data == { - 'json': json_value + 'generic': generic_value } -def test_json_parse_literal_query(): +def test_generic_parse_literal_query(): result = schema.execute( ''' query { - json(input: { + generic(input: { int: 1, float: 1.1 boolean: true, @@ -78,7 +78,7 @@ def test_json_parse_literal_query(): ) assert not result.errors assert result.data == { - 'json': { + 'generic': { 'int': 1, 'float': 1.1, 'boolean': True,