указать кнопку отправки при тестировании вида в Django - PullRequest
1 голос
/ 30 апреля 2020

Я пытаюсь проверить представление формы django:

tests.py

form_data = {
    'comment_text': "test comment"
}
response = self.client.post(reverse('announcements:comment', args=[self.test_announcement.id]), form_data)
self.assertEqual(response.status_code, 404)  # invalid submit button

Но мое представление проверяет, какая кнопка была использована отправить форму с:

views.py

def my_view(request, announcement_id):
  # ...

  if request.method == "POST":
    form = CommentForm(request.POST)
    if form.is_valid():
       # ...
       if 'comment_button' in request.POST:  
           # how do I get inside this branch from a test?
           # process form
       else:
           raise Http404

Как я могу имитировать c кнопку «comment_button», используемую для отправки формы в моем тесте

1 Ответ

3 голосов
/ 03 мая 2020

Добавьте поле comment_button к form_data

form_data = {
    'comment_text': "test comment",  
    'comment_button': True
}
...