From b91d657b714853431f67369fc28a8eaf1a24d7ee Mon Sep 17 00:00:00 2001
From: Martijn Vermaat <martijn@vermaat.name>
Date: Thu, 19 Sep 2013 07:54:08 +0000
Subject: [PATCH] Add tests for JSON webservice using POST requests

git-svn-id: https://humgenprojects.lumc.nl/svn/mutalyzer/trunk@746 eb6bd6ab-9ccd-42b9-aceb-e2899b4a52f1
---
 tests/test_services_json.py | 42 +++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/tests/test_services_json.py b/tests/test_services_json.py
index f235adbf..67c82785 100644
--- a/tests/test_services_json.py
+++ b/tests/test_services_json.py
@@ -66,3 +66,45 @@ class TestServicesJson():
         r = call('info')
         assert_equal(type(r['infoResponse']['infoResult']['versionParts']['string']), list)
         assert_equal(r['infoResponse']['infoResult']['version'], mutalyzer.__version__)
+
+    def test_method_get(self):
+        """
+        Using a GET request.
+        """
+        r = requests.get(SERVICE_ROOT + 'checkSyntax', params={'variant': 'AB026906.1:c.274G>T'})
+        assert_equal(json.loads(r.content)['checkSyntaxResponse']['checkSyntaxResult']['valid'], True)
+
+    def test_method_get_large(self):
+        """
+        Using a GET request with too large data.
+        """
+        r = requests.get(SERVICE_ROOT + 'checkSyntax', params={'variant': 'AB026906.1:c.274G>T', 'dummy': 'a' * 1000000})
+        assert '414 Request-URI Too Large' in r.content
+
+    def test_method_post_query_string(self):
+        """
+        Using a POST request with query string parameters.
+        """
+        r = requests.post(SERVICE_ROOT + 'checkSyntax', params={'variant': 'AB026906.1:c.274G>T'})
+        assert_equal(json.loads(r.content)['checkSyntaxResponse']['checkSyntaxResult']['valid'], True)
+
+    def test_method_post_query_string_large(self):
+        """
+        Using a POST request with too large data in body.
+        """
+        r = requests.post(SERVICE_ROOT + 'checkSyntax', params={'variant': 'AB026906.1:c.274G>T', 'dummy': 'a' * 1000000})
+        assert '414 Request-URI Too Large' in r.content
+
+    def test_method_post_body(self):
+        """
+        Using a POST request with data in body.
+        """
+        r = requests.post(SERVICE_ROOT + 'checkSyntax', data={'variant': 'AB026906.1:c.274G>T'})
+        assert_equal(json.loads(r.content)['checkSyntaxResponse']['checkSyntaxResult']['valid'], True)
+
+    def test_method_post_body_large(self):
+        """
+        Using a POST request with data in body.
+        """
+        r = requests.post(SERVICE_ROOT + 'checkSyntax', data={'variant': 'AB026906.1:c.274G>T', 'dummy': 'a' * 1000000})
+        assert_equal(json.loads(r.content)['checkSyntaxResponse']['checkSyntaxResult']['valid'], True)
-- 
GitLab