Как получить доступ к request.user в self.client.post Тестирование

У меня есть модель под названием Quote, которая имеет ForeignKey, указывающий на User. Я хочу сделать post запрос для создания Quote, но я не знаю, какие данные я должен передать в self.client.post, вот что у меня получилось на данный момент, я говорю о test_can_save_a_POST_request:

from django.contrib.auth import get_user_model
from django.test import TestCase

from quotes.models import Quote
from quotes.views import home_page

User = get_user_model()

class HomePageTest(TestCase):

def test_uses_home_template(self):
    response = self.client.get('/')
    self.assertTemplateUsed(response, 'home.html')

def test_display_all_quotes(self):
    user1 = User.objects.create(email="rafik@test.com", password="foo")
    Quote.objects.create(text='quote 1', user=user1)
    Quote.objects.create(text='quote 2', user=user1)

    response = self.client.get('/')

    self.assertIn('quote 1', response.content.decode())
    self.assertIn('quote 2', response.content.decode())

def test_can_save_a_POST_request(self):
    user1 = User.objects.create(email="rafik@test.com", password="foo")
    self.client.post('/', data={
            'quote_text': 'The first ever quote'
        }
    )

Просто отправляем идентификатор пользователя:

def test_can_save_a_POST_request(self):
    user1 = User.objects.create(email="rafik@test.com", password="foo")
    self.client.post('/', data={
            'quote_text': 'The first ever quote',
            'user': user1.id,
        }
    )
Вернуться на верх