diff --git a/backend/secfit/workouts/tests.py b/backend/secfit/workouts/tests.py index fe04635b81a220acfd6765202b3e88c1e5c83608..b3fb7c1ffeb6c4b7a4b50117870db06a19935f86 100644 --- a/backend/secfit/workouts/tests.py +++ b/backend/secfit/workouts/tests.py @@ -17,13 +17,13 @@ import workouts.permissions as Perms # Create your tests here. -class PermissionsTestCase(TestCase): +class IsOwnerTestCase(TestCase): def setUp(self): #User setup self.user_one = User.objects.create(username = "jorsi", phone_number="12345678", country="Norway", city="Trondheim", street_address="street 3", favourite_exercise="Biceps", main_gym="SIT") - self.user_one.save() + #Workout setup self.workout_one = Workout.objects.create(name="Curl", date="2022-03-03", notes="nice", owner=self.user_one, visibility="PU") @@ -41,12 +41,35 @@ class PermissionsTestCase(TestCase): self.assertEqual(user_count, 1) def test_is_owner(self): - #Perms.IsOwner.has_object_permission(self, self.user_one,"", self.workout_one) - #print(Perms.IsOwner.has_object_permission(self.user_one, self.workout_one)) - - test_request = self.factory.get('/') + test_request = self.factory.get("/") test_request.user = self.user_one is_owner = Perms.IsOwner.has_object_permission(self, test_request, None, self.workout_one) self.assertTrue(is_owner) - +class IsOwnerOfWorkoutTestCase(TestCase): + def setUp(self): + #Initiate User, Workout and RequestFactory + self.user_one = User.objects.create(username = "jorsi", phone_number="12345678", country="Norway", + city="Trondheim", street_address="street 3", favourite_exercise="Biceps", main_gym="SIT") + self.user_one.save() + self.workout_one = Workout.objects.create(name="Curl", date="2022-03-03", notes="nice", + owner=self.user_one, visibility="PU") + self.workout_one.save() + self.factory= RequestFactory() + + def test_has_permission_get(self): + #takes self, request, view. + test_request = self.factory.get("/") + test_request.user = self.user_one + req_data = { "workout" : "api/workouts/1"} # views.WorkoutDetail.as_view() + test_request.data = req_data + #has_perm = Perms.IsOwnerOfWorkout.has_permission(self, test_request, None) + #self.assertTrue(has_perm) + + def test_has_object_permission(self): + #takes self, request, view obj. + test_request = self.factory.get("/") + test_request.user = self.user_one + req_data = { "workout" : "api/workouts/1"} # views.WorkoutDetail.as_view() + test_request.data = req_data + #has_obj_perm = Perms.IsOwnerOfWorkout.has_object_permission(self, test_request, None, )