У меня есть представление, которое перенаправляет, и я хочу проверить сообщения.
Я нашел другие подобные вопросы, и я прочитал, что я должен использовать follow=True
.
Яначинающий, так что, может быть, я что-то упускаю, но я не тестирую с помощью клиента, поэтому я не могу использовать follow (или вообще не знаю, где его использовать).
Так что у меня есть сомнения, если яделать все правильно, и если да, то как я могу проверить сообщения.
Вот мой код для проверки
# my view
def ImportName(request):
if request.method == 'POST':
# code
else:
messages.add_message(request, messages.ERROR,
_('Form non valida.'), extra_tags='import_name')
return redirect('lists:addname')
# my test
def test_importname(self):
self.request = RequestFactory(spec=NameForm)
# test a not POST call
self.request.method = 'GET'
self.request._messages = Mock()
resposte = ImportName(self.request)
resposte.client = Client()
self.assertEqual(resposte.status_code, 302)
self.assertRedirects(resposte, reverse('lists:addname'))
Как вы видите, мне нужно , чтобыОпределите атрибуты _messages
и .client
, так что, вероятно, есть лучшие способы сделать это, но я проверил все мои представления, как это (с RequestFactory()
), и пока я не встретил сообщение, он работал нормально.
Ответне имеет контекста, поэтому я не знаю, где проверить сообщения.
Советы, мнения, решения? Спасибо