|
1 |
| -from django.test import TestCase |
| 1 | +import pytest |
2 | 2 | from lists.forms import ItemForm, EMPTY_ITEM_ERROR, DUPLICATE_ITEM_ERROR, ExistingListItemForm
|
3 | 3 | from lists.models import Item, List
|
4 | 4 |
|
| 5 | +pytestmark = pytest.mark.django_db |
5 | 6 |
|
6 |
| -class ItemFormTest(TestCase): |
| 7 | + |
| 8 | +class TestItemForm: |
7 | 9 | def test_form_renders_item_text_input(self):
|
8 | 10 | form = ItemForm()
|
9 |
| - self.assertIn('placeholder="Enter a to-do item"', form.as_p()) |
10 |
| - self.assertIn('class="form-control input-lg"', form.as_p()) |
| 11 | + assert 'placeholder="Enter a to-do item"' in form.as_p() |
| 12 | + assert 'class="form-control input-lg"' in form.as_p() |
11 | 13 |
|
12 | 14 | def test_form_validation_for_blank_items(self):
|
13 | 15 | form = ItemForm(data={'text': ''})
|
14 |
| - self.assertFalse(form.is_valid()) |
15 |
| - self.assertEqual(form.errors['text'], [EMPTY_ITEM_ERROR]) |
| 16 | + assert not form.is_valid() |
| 17 | + assert form.errors['text'] == [EMPTY_ITEM_ERROR] |
16 | 18 |
|
17 | 19 | def test_form_save_handles_saving_to_a_list(self):
|
18 | 20 | list_ = List.objects.create()
|
19 | 21 | form = ItemForm(data={'text': 'do me'})
|
20 | 22 | new_item = form.save(for_list=list_)
|
21 |
| - self.assertEqual(new_item, Item.objects.first()) |
22 |
| - self.assertEqual(new_item.text, 'do me') |
23 |
| - self.assertEqual(new_item.list, list_) |
| 23 | + assert new_item == Item.objects.first() |
| 24 | + assert new_item.text == 'do me' |
| 25 | + assert new_item.list == list_ |
24 | 26 |
|
25 | 27 |
|
26 |
| -class ExistingListItemFormTest(TestCase): |
| 28 | +class TestExistingListItemForm: |
27 | 29 | def test_form_renders_item_text_input(self):
|
28 | 30 | list_ = List.objects.create()
|
29 | 31 | form = ExistingListItemForm(for_list=list_)
|
30 |
| - self.assertIn('placeholder="Enter a to-do item"', form.as_p()) |
| 32 | + assert 'placeholder="Enter a to-do item"' in form.as_p() |
31 | 33 |
|
32 | 34 | def test_form_validation_for_blank_items(self):
|
33 | 35 | list_ = List.objects.create()
|
34 | 36 | form = ExistingListItemForm(for_list=list_, data={'text': ''})
|
35 |
| - self.assertFalse(form.is_valid()) |
36 |
| - self.assertEqual(form.errors['text'], [EMPTY_ITEM_ERROR]) |
| 37 | + assert not form.is_valid() |
| 38 | + assert form.errors['text'] == [EMPTY_ITEM_ERROR] |
37 | 39 |
|
38 | 40 | def test_form_validation_for_duplicate_items(self):
|
39 | 41 | list_ = List.objects.create()
|
40 | 42 | Item.objects.create(list=list_, text='no twins!')
|
41 | 43 | form = ExistingListItemForm(for_list=list_, data={'text': 'no twins!'})
|
42 |
| - self.assertFalse(form.is_valid()) |
43 |
| - self.assertEqual(form.errors['text'], [DUPLICATE_ITEM_ERROR]) |
| 44 | + assert not form.is_valid() |
| 45 | + assert form.errors['text'] == [DUPLICATE_ITEM_ERROR] |
44 | 46 |
|
45 |
| - def test_firm_save(self): |
| 47 | + def test_form_save(self): |
46 | 48 | list_ = List.objects.create()
|
47 | 49 | form = ExistingListItemForm(for_list=list_, data={'text': 'hi'})
|
48 | 50 | new_item = form.save()
|
49 |
| - self.assertEqual(new_item, Item.objects.all()[0]) |
| 51 | + assert new_item == Item.objects.all()[0] |
0 commit comments