diff --git a/requirements.txt b/requirements.txt index ccf4a4e1..43ead491 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,7 @@ pytz==2014.4 six==1.8.0 amqp==1.4.6 djmail==0.9 -django-pgjson==0.2.0 +django-pgjson==0.2.1 djorm-pgarray==1.0.4 django-jinja==1.0.4 jinja2==2.7.2 diff --git a/tests/factories.py b/tests/factories.py index 14f120a8..b4577757 100644 --- a/tests/factories.py +++ b/tests/factories.py @@ -216,8 +216,8 @@ class WebhookLogFactory(Factory): webhook = factory.SubFactory("tests.factories.WebhookFactory") url = "http://localhost:8080/test" status = "200" - request_data = "test-request" - response_data = "test-response" + request_data = {"text": "test-request-data"} + response_data = {"text": "test-response-data"} class StorageEntryFactory(Factory): @@ -227,7 +227,7 @@ class StorageEntryFactory(Factory): owner = factory.SubFactory("tests.factories.UserFactory") key = factory.Sequence(lambda n: "key-{}".format(n)) - value = factory.Sequence(lambda n: "value {}".format(n)) + value = factory.Sequence(lambda n: {"value": "value-{}".format(n)}) class UserStoryFactory(Factory): diff --git a/tests/integration/resources_permissions/test_storage_resources.py b/tests/integration/resources_permissions/test_storage_resources.py index 8f7f1f05..07270f92 100644 --- a/tests/integration/resources_permissions/test_storage_resources.py +++ b/tests/integration/resources_permissions/test_storage_resources.py @@ -103,7 +103,7 @@ def test_storage_create(client, data): create_data = json.dumps({ "key": "test", - "value": "test", + "value": {"test": "test-value"}, }) results = helper_test_http_method(client, 'post', url, create_data, users, lambda: StorageEntry.objects.all().delete()) assert results == [401, 201, 201] @@ -118,6 +118,6 @@ def test_storage_patch(client, data): data.user2, ] - patch_data = json.dumps({"value": "test"}) + patch_data = json.dumps({"value": {"test": "test-value"}}) results = helper_test_http_method(client, 'patch', url, patch_data, users) assert results == [401, 200, 201] diff --git a/tests/integration/test_userstorage_api.py b/tests/integration/test_userstorage_api.py index fb2eef3f..1b642de2 100644 --- a/tests/integration/test_userstorage_api.py +++ b/tests/integration/test_userstorage_api.py @@ -34,18 +34,18 @@ def test_list_userstorage(client): factories.StorageEntryFactory(owner=user2) # List by anonumous user - response = client.get(reverse("user-storage-list")) + response = client.json.get(reverse("user-storage-list")) assert response.status_code == 200 assert len(response.data) == 0 # List own entries client.login(username=user1.username, password=user1.username) - response = client.get(reverse("user-storage-list")) + response = client.json.get(reverse("user-storage-list")) assert response.status_code == 200 assert len(response.data) == 3 client.login(username=user2.username, password=user2.username) - response = client.get(reverse("user-storage-list")) + response = client.json.get(reverse("user-storage-list")) assert response.status_code == 200 assert len(response.data) == 1 @@ -54,7 +54,7 @@ def test_list_userstorage(client): keys = ",".join([storage11.key, storage13.key]) url = "{}?keys={}".format(reverse("user-storage-list"), keys) - response = client.get(url) + response = client.json.get(url) assert response.status_code == 200 assert len(response.data) == 2 @@ -65,22 +65,22 @@ def test_view_storage_entries(client): storage11 = factories.StorageEntryFactory(owner=user1) # Get by anonymous user - response = client.get(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.get(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 404 # Get single entry client.login(username=user1.username, password=user1.username) - response = client.get(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.get(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 200 assert response.data["key"] == storage11.key assert response.data["value"] == storage11.value # Get not existent key client.login(username=user2.username, password=user2.username) - response = client.get(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.get(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 404 - response = client.get(reverse("user-storage-detail", args=["foobar"])) + response = client.json.get(reverse("user-storage-detail", args=["foobar"])) assert response.status_code == 404 @@ -89,30 +89,30 @@ def test_create_entries(client): storage11 = factories.StorageEntryFactory(owner=user1) form = {"key": "foo", - "value": "bar"} - form_without_key = {"value": "bar"} + "value": {"bar": "bar"}} + form_without_key = {"value": {"bar": "bar"}} form_without_value = {"key": "foo"} error_form = {"key": storage11.key, - "value": "bar"} + "value": {"bar": "bar"}} # Create entry by anonymous user - response = client.post(reverse("user-storage-list"), form) + response = client.json.post(reverse("user-storage-list"), json.dumps(form)) assert response.status_code == 401 # Create by logged user client.login(username=user1.username, password=user1.username) - response = client.post(reverse("user-storage-list"), form) + response = client.json.post(reverse("user-storage-list"), json.dumps(form)) assert response.status_code == 201 - response = client.get(reverse("user-storage-detail", args=[form["key"]])) + response = client.json.get(reverse("user-storage-detail", args=[form["key"]])) assert response.status_code == 200 # Wrong data client.login(username=user1.username, password=user1.username) - response = client.post(reverse("user-storage-list"), form_without_key) + response = client.json.post(reverse("user-storage-list"), json.dumps(form_without_key)) assert response.status_code == 400 - response = client.post(reverse("user-storage-list"), form_without_value) + response = client.json.post(reverse("user-storage-list"), json.dumps(form_without_value)) assert response.status_code == 400 - response = client.post(reverse("user-storage-list"), error_form) + response = client.json.post(reverse("user-storage-list"), json.dumps(error_form)) assert response.status_code == 400 @@ -122,32 +122,29 @@ def test_update_entries(client): # Update by anonymous user form = {"value": "bar", "key": storage11.key} - response = client.put(reverse("user-storage-detail", args=[storage11.key]), - json.dumps(form), - content_type='application/json') + response = client.json.put(reverse("user-storage-detail", args=[storage11.key]), + json.dumps(form)) assert response.status_code == 401 # Update by logged user client.login(username=user1.username, password=user1.username) - form = {"value": "bar", "key": storage11.key} + form = {"value": {"bar": "bar"}, "key": storage11.key} - response = client.put(reverse("user-storage-detail", args=[storage11.key]), - json.dumps(form), - content_type='application/json') + response = client.json.put(reverse("user-storage-detail", args=[storage11.key]), + json.dumps(form)) assert response.status_code == 200 - response = client.get(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.get(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 200 assert response.data["value"] == form["value"] # Update not existing entry - form = {"value": "bar", "key": "foo"} - response = client.get(reverse("user-storage-detail", args=[form["key"]])) + form = {"value": {"bar": "bar"}, "key": "foo"} + response = client.json.get(reverse("user-storage-detail", args=[form["key"]])) assert response.status_code == 404 - response = client.put(reverse("user-storage-detail", args=[form["key"]]), - json.dumps(form), - content_type='application/json') + response = client.json.put(reverse("user-storage-detail", args=[form["key"]]), + json.dumps(form)) assert response.status_code == 201 - response = client.get(reverse("user-storage-detail", args=[form["key"]])) + response = client.json.get(reverse("user-storage-detail", args=[form["key"]])) assert response.status_code == 200 assert response.data["value"] == form["value"] @@ -158,21 +155,21 @@ def test_delete_storage_entry(client): storage11 = factories.StorageEntryFactory(owner=user1) # Delete by anonumous user - response = client.delete(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.delete(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 401 # Delete by logged user client.login(username=user1.username, password=user1.username) - response = client.delete(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.delete(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 204 - response = client.get(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.get(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 404 # Delete not existent entry - response = client.delete(reverse("user-storage-detail", args=["foo"])) + response = client.json.delete(reverse("user-storage-detail", args=["foo"])) assert response.status_code == 404 client.login(username=user2.username, password=user2.username) - response = client.delete(reverse("user-storage-detail", args=[storage11.key])) + response = client.json.delete(reverse("user-storage-detail", args=[storage11.key])) assert response.status_code == 404