From 5dd92b7d6bb641abbe37e503d5adbe59d2e5287f Mon Sep 17 00:00:00 2001 From: Syrus Akbary Date: Mon, 3 Oct 2016 20:51:37 -0700 Subject: [PATCH] Added datetime tests --- graphene/types/tests/test_datetime.py | 41 +++++++++++++++++++++++++++ setup.py | 2 ++ 2 files changed, 43 insertions(+) create mode 100644 graphene/types/tests/test_datetime.py diff --git a/graphene/types/tests/test_datetime.py b/graphene/types/tests/test_datetime.py new file mode 100644 index 00000000..f55cd8c6 --- /dev/null +++ b/graphene/types/tests/test_datetime.py @@ -0,0 +1,41 @@ +import datetime +import pytz + +from ..datetime import DateTime +from ..objecttype import ObjectType +from ..schema import Schema + + +class Query(ObjectType): + datetime = DateTime(_in=DateTime(name='in')) + + def resolve_datetime(self, args, context, info): + _in = args.get('in') + return _in + +schema = Schema(query=Query) + + +def test_datetime_query(): + now = datetime.datetime.now().replace(tzinfo=pytz.utc) + isoformat = now.isoformat() + + result = schema.execute('''{ datetime(in: "%s") }'''%isoformat) + assert not result.errors + assert result.data == { + 'datetime': isoformat + } + + +def test_datetime_query_variable(): + now = datetime.datetime.now().replace(tzinfo=pytz.utc) + isoformat = now.isoformat() + + result = schema.execute( + '''query Test($date: DateTime){ datetime(in: $date) }''', + variable_values={'date': isoformat} + ) + assert not result.errors + assert result.data == { + 'datetime': isoformat + } diff --git a/setup.py b/setup.py index 37f5fa50..b9f8d1f8 100644 --- a/setup.py +++ b/setup.py @@ -78,6 +78,8 @@ setup( 'pytest>=2.7.2', 'pytest-benchmark', 'mock', + 'pytz', + 'iso8601', ], extras_require={ 'django': [