add http method validation on each route + add pubkey tests

This commit is contained in:
2022-11-19 15:53:31 +00:00
parent 1d2924b7ef
commit 8d3651d6fc
5 changed files with 63 additions and 8 deletions
+21
View File
@@ -1,3 +1,4 @@
import base64
import jwt
import os
import requests
@@ -113,3 +114,23 @@ class TestResponse(TestCase):
"the url requested does not exist",
"invalid error message returned",
)
def test_get_pubkey(self):
resp = requests.get(URL + "/pubkey/")
self.assertEqual(resp.status_code, 200, "bad status code returned")
self.assertIsNotNone(resp.json(), "response data must not be empty")
self.assertIsNotNone(resp.json()["pubkey"], "invalid error message returned")
b64_pubkey = base64.b64decode(resp.json()["pubkey"])
self.assertIsNotNone(b64_pubkey, "public key b64 decoded can't be empty")
self.assertIn("-BEGIN PUBLIC KEY-", b64_pubkey.decode())
def test_get_pubkey_bad_method(self):
resp = requests.post(URL + "/pubkey/", json={"tutu": "toto"})
self.assertEqual(resp.status_code, 400, "bad status code returned")
self.assertIsNotNone(resp.json(), "response data must not be empty")
self.assertEqual(
resp.json()["error"],
"the incoming request is not valid",
"invalid error message returned",
)