From af59445fdc8563cd8d3e6857e4a135593c6e82b0 Mon Sep 17 00:00:00 2001 From: Mark Skipper <marks@aptivate.org> Date: Wed, 1 Jul 2015 21:48:53 +0100 Subject: [PATCH] Refactor tests --- django/website/data_layer/handlers.py | 5 ---- .../website/data_layer/tests/handler_tests.py | 12 +-------- ..._view_tests.py => item_list_view_tests.py} | 0 .../transport/tests/item_create_tests.py | 12 +++++++++ .../transport/tests/item_list_tests.py | 20 ++++++++++++++ .../website/transport/tests/message_tests.py | 27 ------------------- 6 files changed, 33 insertions(+), 43 deletions(-) rename django/website/rest_api/tests/{item_view_tests.py => item_list_view_tests.py} (100%) create mode 100644 django/website/transport/tests/item_create_tests.py create mode 100644 django/website/transport/tests/item_list_tests.py delete mode 100644 django/website/transport/tests/message_tests.py diff --git a/django/website/data_layer/handlers.py b/django/website/data_layer/handlers.py index 8910d4cc..fc78e9d5 100644 --- a/django/website/data_layer/handlers.py +++ b/django/website/data_layer/handlers.py @@ -7,11 +7,6 @@ class Message(object): def create(cls, message): models.Message(**message).save() - @classmethod - def list(cls): - # TODO: probably use a DRF serializer here instead of .values()? - return models.Message.objects.values().iterator() - # TODO rename this class? Item = Message diff --git a/django/website/data_layer/tests/handler_tests.py b/django/website/data_layer/tests/handler_tests.py index 511d9417..b0d0a815 100644 --- a/django/website/data_layer/tests/handler_tests.py +++ b/django/website/data_layer/tests/handler_tests.py @@ -9,6 +9,7 @@ from data_layer import models class HandlerTests(TestCase): + # Remove these tests and move to API def test_message_create(self): now = timezone.now().replace( microsecond=0 # MySQL discards microseconds @@ -20,14 +21,3 @@ class HandlerTests(TestCase): outmessage = models.Message.objects.get() self.assertEqual(outmessage.body, "Text") self.assertEqual(outmessage.timestamp, now) - - def test_message_list_empty(self): - messages = handlers.Message.list() - self.assertEqual(len(list(messages)), 0) - - def test_message_list_one(self): - models.Message(body="Test").save() - - [message] = handlers.Message.list() - - self.assertEqual(message['body'], "Test") diff --git a/django/website/rest_api/tests/item_view_tests.py b/django/website/rest_api/tests/item_list_view_tests.py similarity index 100% rename from django/website/rest_api/tests/item_view_tests.py rename to django/website/rest_api/tests/item_list_view_tests.py diff --git a/django/website/transport/tests/item_create_tests.py b/django/website/transport/tests/item_create_tests.py new file mode 100644 index 00000000..604356fe --- /dev/null +++ b/django/website/transport/tests/item_create_tests.py @@ -0,0 +1,12 @@ +import pytest + + +@pytest.mark.xfail +def test_create_message_creates_item(): + # now = timezone.now().replace( + # microsecond=0 # MySQL discards microseconds + # ) + # item = {'body': "Text", 'timestamp': now} + # dl.create_message(item) + # create.assert_called_with(message) + assert False diff --git a/django/website/transport/tests/item_list_tests.py b/django/website/transport/tests/item_list_tests.py new file mode 100644 index 00000000..9a385416 --- /dev/null +++ b/django/website/transport/tests/item_list_tests.py @@ -0,0 +1,20 @@ +from __future__ import unicode_literals, absolute_import +import pytest + +from rest_api.serializers import ItemSerializer +from data_layer.tests.factories import ItemFactory +from transport import data_layer_transport as dl + + +@pytest.mark.django_db +def test_get_items_exists(): + items = dl.get_messages() + assert items == [] + +@pytest.mark.django_db +def test_get_items_returns_items(): + item = ItemFactory(body="test") + + items = dl.get_messages() + [item] = items + assert item['body'] == 'test' diff --git a/django/website/transport/tests/message_tests.py b/django/website/transport/tests/message_tests.py deleted file mode 100644 index 85028e3a..00000000 --- a/django/website/transport/tests/message_tests.py +++ /dev/null @@ -1,27 +0,0 @@ -from __future__ import unicode_literals, absolute_import -import pytest - -from rest_api.serializers import ItemSerializer -from data_layer.tests.factories import ItemFactory -from transport import data_layer_transport as dl - - -@pytest.mark.django_db -def test_get_messages_exists(): - messages = dl.get_messages() - assert messages == [] - -@pytest.mark.django_db -def test_get_messages_returns_items(): - item = ItemFactory(body="test") - - messages = dl.get_messages() - [message] = messages - assert message['body'] == 'test' - -@pytest.mark.xfail -def test_store_message_uses_create(): - #message = {} - #:l.create_message(message) - #create.assert_called_with(message) - assert False -- GitLab