Skip to content
Snippets Groups Projects
Commit 746ab50d authored by Mark Skipper's avatar Mark Skipper
Browse files

Use mock to test transport

parent 86060dcf
Branches
No related tags found
No related merge requests found
......@@ -12,7 +12,7 @@ MySQL-python==1.2.5
# testing
pytest-django==2.8.0
mock
django-jenkins==0.17.0
......
from __future__ import unicode_literals, absolute_import
from mock import patch
from django.test import TestCase
from django.utils import timezone
from transport import data_layer_transport as dl
# TODO use mock here to verify the handler methods are being called instead of
# verifying the store behaviour
class TransportLayerMessageTests(TestCase):
def test_get_messages_exists(self):
@patch('data_layer.handlers.Message.list')
def test_get_messages_uses_list(self, list):
list.return_value = []
messages = dl.get_messages()
self.assertEqual(len(list(messages)), 0)
self.assertEqual(messages, [])
list.assert_called_with()
def test_store_messages_exists(self):
message = dict()
@patch('data_layer.handlers.Message.create')
def test_store_message_uses_create(self, create):
message = {}
dl.store_message(message)
def test_stored_messages_can_be_gotten(self):
now = timezone.now().replace(
microsecond=0 # MySQL discards microseconds
)
message = dict(body="Text", timestamp=now)
dl.store_message(message)
messagelist = list(dl.get_messages())
[outmessage] = messagelist
self.assertEqual(outmessage['body'], "Text")
self.assertEqual(outmessage['timestamp'], now)
create.assert_called_with(message)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment