diff options
author | Pjotr Prins | 2018-02-15 14:03:38 +0000 |
---|---|---|
committer | Pjotr Prins | 2018-03-26 09:29:29 +0000 |
commit | e7f80eb6cf60bb117f943132049ec0b220ddcab4 (patch) | |
tree | f9e159e8cd182cb300f629040e5d0ba1e35b1b16 /wqflask | |
parent | 3de1ecfa37b73b4cb011b634c8b4afc2362f858c (diff) | |
download | genenetwork2-e7f80eb6cf60bb117f943132049ec0b220ddcab4.tar.gz |
Added unittest example
Diffstat (limited to 'wqflask')
-rw-r--r-- | wqflask/mock/__init__.py (renamed from wqflask/tests/__init__.py) | 0 | ||||
-rw-r--r-- | wqflask/mock/es_double.py | 15 | ||||
-rw-r--r-- | wqflask/tests/es_double.py | 30 | ||||
-rw-r--r-- | wqflask/tests/test_registration.py | 113 |
4 files changed, 15 insertions, 143 deletions
diff --git a/wqflask/tests/__init__.py b/wqflask/mock/__init__.py index e69de29b..e69de29b 100644 --- a/wqflask/tests/__init__.py +++ b/wqflask/mock/__init__.py diff --git a/wqflask/mock/es_double.py b/wqflask/mock/es_double.py new file mode 100644 index 00000000..6ef8a1b9 --- /dev/null +++ b/wqflask/mock/es_double.py @@ -0,0 +1,15 @@ +class ESDouble(object): + def __init__(self): + self.items = {} + + def ping(self): + return true + + def create(self, index, doc_type, body, id): + self.items["index"] = {doc_type: {"id": id, "_source": data}} + + def search(self, index, doc_type, body): + return { + "hits": { + "hits": self.items[index][doc_type][body] + }} diff --git a/wqflask/tests/es_double.py b/wqflask/tests/es_double.py deleted file mode 100644 index 00739016..00000000 --- a/wqflask/tests/es_double.py +++ /dev/null @@ -1,30 +0,0 @@ -class ESDouble(object): - def __init__(self): - self.items = { - "users": { - "local": [] - }} - - def ping(self): - return true - - def create(self, index, doc_type, body, id): - item = {"id": id, "_source": body} - if not self.items.get("index", None): - self.items[index] = {doc_type: [item]} - else: - self.items[index][doc_type].append(item) - - def search(self, index, doc_type, body): - d = body["query"]["match"] - column = [(key, d[key]) for key in d] - - items = [] - for thing in self.items[index][doc_type]: - if thing["_source"][column[0][0]] == column[0][1]: - items.append(thing) - break - return { - "hits": { - "hits": items - }} diff --git a/wqflask/tests/test_registration.py b/wqflask/tests/test_registration.py deleted file mode 100644 index 50a2a84c..00000000 --- a/wqflask/tests/test_registration.py +++ /dev/null @@ -1,113 +0,0 @@ -import unittest -import es_double -import wqflask.user_manager -from wqflask.user_manager import RegisterUser - -class TestRegisterUser(unittest.TestCase): - def setUp(self): - # Mock elasticsearch - self.es = es_double.ESDouble() - - # Patch method - wqflask.user_manager.basic_info = lambda : {"basic_info": "some info"} - - def tearDown(self): - self.es = None - - def testRegisterUserWithNoData(self): - data = {} - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Data was not provided. Error was expected") - - def testRegisterUserWithNoEmail(self): - data = { - "email_address": "" - , "full_name": "A.N. Other" - , "organization": "Some Organisation" - , "password": "testing" - , "password_confirm": "testing" - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Email not provided. Error was expected") - - def testRegisterUserWithNoName(self): - data = { - "email_address": "user@example.com" - , "full_name": "" - , "organization": "Some Organisation" - , "password": "testing" - , "password_confirm": "testing" - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Name not provided. Error was expected") - - def testRegisterUserWithNoOrganisation(self): - data = { - "email_address": "user@example.com" - , "full_name": "A.N. Other" - , "organization": "" - , "password": "testing" - , "password_confirm": "testing" - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertEqual(len(result.errors), 0, "Organisation not provided. Error not expected") - - def testRegisterUserWithShortOrganisation(self): - data = { - "email_address": "user@example.com" - , "full_name": "A.N. Other" - , "organization": "SO" - , "password": "testing" - , "password_confirm": "testing" - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Organisation name too short. Error expected") - - def testRegisterUserWithNoPassword(self): - data = { - "email_address": "user@example.com" - , "full_name": "A.N. Other" - , "organization": "Some Organisation" - , "password": None - , "password_confirm": None - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Password not provided. Error was expected") - - def testRegisterUserWithNonMatchingPasswords(self): - data = { - "email_address": "user@example.com" - , "full_name": "A.N. Other" - , "organization": "Some Organisation" - , "password": "testing" - , "password_confirm": "stilltesting" - , "es_connection": self.es - } - - result = RegisterUser(data) - self.assertNotEqual(len(result.errors), 0, "Password mismatch. Error was expected") - - def testRegisterUserWithCorrectData(self): - data = { - "email_address": "user@example.com" - , "full_name": "A.N. Other" - , "organization": "Some Organisation" - , "password": "testing" - , "password_confirm": "testing" - , "es_connection": self.es - } - result = RegisterUser(data) - self.assertEqual(len(result.errors), 0, "All data items provided. Errors were not expected") - -if __name__ == "__main__": - unittest.main() |