aboutsummaryrefslogtreecommitdiff
path: root/ihatemoney/tests/tests.py
diff options
context:
space:
mode:
authorJosé Antonio de la Torre <1927763+JoseAntonioTorre@users.noreply.github.com>2019-10-25 13:17:54 +0200
committerAlexis Metaireau <alexis@notmyidea.org>2019-10-25 11:17:54 +0000
commitb683d062f018fe042d789957891acadf96535e49 (patch)
treeac2fa7db70934f5069796be3c117aa24e8c1f744 /ihatemoney/tests/tests.py
parente30d863c56e17ebb0c8344e6d8513a206d825092 (diff)
downloadihatemoney-mirror-b683d062f018fe042d789957891acadf96535e49.zip
ihatemoney-mirror-b683d062f018fe042d789957891acadf96535e49.tar.gz
ihatemoney-mirror-b683d062f018fe042d789957891acadf96535e49.tar.bz2
Token support (#504)
Added API support to generate authentication tokens, at `/api/projects/:id/token`
Diffstat (limited to 'ihatemoney/tests/tests.py')
-rw-r--r--ihatemoney/tests/tests.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/ihatemoney/tests/tests.py b/ihatemoney/tests/tests.py
index 7fe4adf..7644490 100644
--- a/ihatemoney/tests/tests.py
+++ b/ihatemoney/tests/tests.py
@@ -1357,6 +1357,42 @@ class APITestCase(IhatemoneyTestCase):
)
self.assertEqual(401, resp.status_code)
+ def test_token_creation(self):
+ """Test that token of project is generated
+ """
+
+ # Create project
+ resp = self.api_create("raclette")
+ self.assertTrue(201, resp.status_code)
+
+ # Get token
+ resp = self.client.get(
+ "/api/projects/raclette/token", headers=self.get_auth("raclette")
+ )
+
+ self.assertEqual(200, resp.status_code)
+
+ decoded_resp = json.loads(resp.data.decode("utf-8"))
+
+ # Access with token
+ resp = self.client.get(
+ "/api/projects/raclette/token",
+ headers={"Authorization": "Basic %s" % decoded_resp["token"]},
+ )
+
+ self.assertEqual(200, resp.status_code)
+
+ def test_token_login(self):
+ resp = self.api_create("raclette")
+ # Get token
+ resp = self.client.get(
+ "/api/projects/raclette/token", headers=self.get_auth("raclette")
+ )
+ decoded_resp = json.loads(resp.data.decode("utf-8"))
+ resp = self.client.get("/authenticate?token={}".format(decoded_resp["token"]))
+ # Test that we are redirected.
+ self.assertEqual(302, resp.status_code)
+
def test_member(self):
# create a project
self.api_create("raclette")