From cbebe04f64cb5c42200a8e48e6bde5444e9528ee Mon Sep 17 00:00:00 2001
From: Mark Skipper <marks@aptivate.org>
Date: Wed, 1 Jul 2015 22:26:27 +0100
Subject: [PATCH] add filter to transport api

---
 .../website/rest_api/tests/item_list_view_tests.py |  2 +-
 django/website/transport/data_layer_transport.py   |  4 ++--
 django/website/transport/tests/item_list_tests.py  | 14 ++++++++++++++
 3 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/django/website/rest_api/tests/item_list_view_tests.py b/django/website/rest_api/tests/item_list_view_tests.py
index b7659a18..a98e5d93 100644
--- a/django/website/rest_api/tests/item_list_view_tests.py
+++ b/django/website/rest_api/tests/item_list_view_tests.py
@@ -33,7 +33,7 @@ def test_get_items_returns_all_items():
 def test_filter_by_body():
     item1 = ItemFactory(body="one")
     item2 = ItemFactory(body="two")
-    payload = get(ItemList, '/items', {'body': 'one'}).data
+    payload = get(ItemList, '/items', data={'body': 'one'}).data
 
     assert len(payload) == 1
     assert payload[0]['body'] == "one"
diff --git a/django/website/transport/data_layer_transport.py b/django/website/transport/data_layer_transport.py
index 3ec650e8..9d3def0d 100644
--- a/django/website/transport/data_layer_transport.py
+++ b/django/website/transport/data_layer_transport.py
@@ -4,8 +4,8 @@ from data_layer.handlers import Message
 from rest_api.views import ItemList
 
 
-def get_messages():  # TODO rename get_items
-    request = APIRequestFactory().get('/items')
+def get_messages(**kwargs):  # TODO rename get_items
+    request = APIRequestFactory().get('/items', kwargs)
     view = ItemList.as_view()
     return view(request).data
 
diff --git a/django/website/transport/tests/item_list_tests.py b/django/website/transport/tests/item_list_tests.py
index 9a385416..42e9b6f7 100644
--- a/django/website/transport/tests/item_list_tests.py
+++ b/django/website/transport/tests/item_list_tests.py
@@ -16,5 +16,19 @@ def test_get_items_returns_items():
     item = ItemFactory(body="test")
 
     items = dl.get_messages()
+
+    assert len(items) == 1
     [item] = items
     assert item['body'] == 'test'
+
+
+@pytest.mark.django_db
+def test_get_items_filters_by_body():
+    item1 = ItemFactory(body="one")
+    item2 = ItemFactory(body="two")
+
+    items = dl.get_messages(body='one')
+
+    assert len(items) == 1
+    [item] = items
+    assert item['body'] == 'one'
-- 
GitLab