Тест-кейс возвращает 401 даже при использовании force_autenthicate()

Я пытаюсь протестировать представление моего проекта со следующим TestCase:

    def test_jump_story(self):
    c = APIClient()
    user = User.objects.get(username='test1')
    c.login(username=user.username, password='123')
    room_id = PokerRoom.objects.get(name='planning').id
    room_index = PokerRoom.objects.get(name='planning').index
    request = c.post(reverse('jumpstory', kwargs={'pk': room_id, 'index': room_index}))
    c.force_authenticate(user=user)
    self.assertEqual(200,request.status_code)

но он возвращает это <Response status_code=401, "application/json"> даже при использовании force_authenticate.

Представление, которое я тестирую:

class jumpStory(APIView):
permission_classes = [IsAuthenticated]
def post(self, request, pk, index):
    data= self.request.data
    index = self.kwargs['index']
    pk = self.kwargs['pk']
    if PokerRoom.objects.filter(id=pk).exists():
        body = {'index':index}
        message_socket("JUMP_STORY", pk, body)
        return Response({'success':"JUMP_STORY"}, status=200)
    else:
        return Response({'error':'message not sended'}, status=400)

Что не так с моим тестом?

Используйте APITestCase вместо django TestCase. from rest_framework.test import APITestCase.

from rest_framework.test import APITestCase
class MyTests(APITestCase)
    def setUp(self):
        user = User.objects.create(username=john)
        user.set_password("1234")
        user.save()
        self.client.force_authenticate(user=user)


    def test_jump_story(self):
         # do your test
Вернуться на верх