Как я могу протестировать логику проверки формы в драйвере модульного теста в Django?

Я хочу протестировать is_valid часть логики проверки формы. В моем тест-драйвере я имею:

  test_animal = Animal(name="cat", number_paws="4")
  test_animal_form = AnimalForm(instance=test_animal)
  assertEqual(test_animal_form.is_valid(), True)

Сбои утверждения, но от того, что я вижу, не должны быть никакими ошибками в форме. Я не вижу ошибок проверки в форме. Это должно работать тестовым сценарием, если test_animal экземпляр при загрузке в форму должен проверить?

7
задан MikeN 4 February 2010 в 17:41
поделиться

1 ответ

Причина, по которой вы видите ошибки проверки, заключается в том, что Данные экземпляра не используются при проверке, вы должны указать данные, отправляемые в форму.

test_animal = Animal(name="cat", number_paws="4")
test_animal_form = AnimalForm(instance=test_animal)
assertEqual(test_animal_form.is_valid(), False) # No data has been supplied yet.
test_animal_form = AnimalForm({'name': "cat", 'number_paws': 4, }, instance=test_animal)
assertEqual(test_animal_form.is_valid(), True) # Now that you have given it data, it can validate.
16
ответ дан 6 December 2019 в 12:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: