# test_list_item_validation.pydeftest_cannot_add_duplicate_items(self):# Y 访问首页,新建一个清单self.browser.get(self.server_url)self.get_item_input_box().send_keys("Buy wellies\n")self.check_for_row_in_list_table("1: Buy wellies")# 她不小心输入了一个重复的待办事项self.get_item_input_box().send_keys("Buy wellies\n")# 她看到一条有帮助的错误消息self.check_for_row_in_list_table("1: Buy wellies") error =self.browser.find_element_by_css_selector(".has-error")self.assertEqual(error.text,"You've already got this in your list")
接下来运行测试:
python3 manage.py test functional_tests.test_list_item_validation
# models.py
class Item(models.Mode):
text = models.TextField(default="", unique=True)
list = models.ForeignKey(List, default=None)
# models.py
class Item(models.Model):
text = models.TextField(default="")
list = modesl.ForeignKey(List, default=None)
class Meta:
unique_together = ("list", "text")
first_saved_item = saved_items[0]
print(first_saved_item.text)
second_saved_item = saved_items[1]
print(second_saved_item.text)
self.assertEqual(first_saved_item.text, "The first (ever) list item")