Skip to content

Commit ec09890

Browse files
SilviaAmAmsvenvandescheur
authored andcommitted
✅ Test whoami endpoint
1 parent 5f52fe8 commit ec09890

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
from rest_framework import status
2+
from rest_framework.reverse import reverse
3+
from rest_framework.test import APITestCase
4+
5+
from .factories import UserFactory
6+
7+
8+
class WhoAmIViewTest(APITestCase):
9+
def test_not_authenticated(self):
10+
endpoint = reverse("api:whoami")
11+
12+
response = self.client.get(endpoint)
13+
14+
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
15+
16+
def test_authenticated(self):
17+
user = UserFactory.create()
18+
19+
self.client.force_authenticate(user=user)
20+
endpoint = reverse("api:whoami")
21+
22+
response = self.client.get(endpoint)
23+
data = response.json()
24+
25+
self.assertEqual(response.status_code, status.HTTP_200_OK)
26+
27+
self.assertEqual(data["pk"], user.pk)
28+
self.assertEqual(data["username"], user.username)
29+
self.assertEqual(data["firstName"], user.first_name)
30+
self.assertEqual(data["lastName"], user.last_name)
31+
self.assertEqual(data["email"], user.email)
32+
33+
def test_post(self):
34+
user = UserFactory.create()
35+
36+
self.client.force_authenticate(user=user)
37+
endpoint = reverse("api:whoami")
38+
39+
response = self.client.post(endpoint)
40+
41+
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)

0 commit comments

Comments
 (0)