diff --git a/apps/dashboard/tests.py b/apps/dashboard/tests.py index 117ba5c..aa3ea94 100644 --- a/apps/dashboard/tests.py +++ b/apps/dashboard/tests.py @@ -1,5 +1,6 @@ from django.test import TestCase from .models import Item, List +import lxml.html class HomePageTest(TestCase): def test_uses_home_template(self): @@ -8,12 +9,11 @@ class HomePageTest(TestCase): def test_renders_input_form(self): response = self.client.get('/') - self.assertContains(response, '
') - self.assertContains( - response, - '', - html=True, - ) + parsed = lxml.html.fromstring(response.content) + [form] = parsed.cssselect('form[method=POST]') + self.assertEqual(form.get('action'), '/apps/dashboard/newlist') + inputs = form.cssselect('input') + self.assertIn('item_text', [input.get('name') for input in inputs]) class ListAndItemModelsTest(TestCase): def test_saving_and_retrieving_items(self): @@ -52,15 +52,11 @@ class DashViewTest(TestCase): def test_renders_input_form(self): mylist = List.objects.create() response = self.client.get(f'/apps/dashboard/{mylist.id}/') - self.assertContains( - response, - f'', - ) - self.assertContains( - response, - '', - html=True, - ) + parsed = lxml.html.fromstring(response.content) + [form] = parsed.cssselect('form[method=POST]') + self.assertEqual(form.get('action'), f"/apps/dashboard/{mylist.id}/add-item") + inputs = form.cssselect('input') + self.assertIn('item_text', [input.get('name') for input in inputs]) def test_displays_only_items_for_that_list(self): # Given/Arrange diff --git a/requirements.txt b/requirements.txt index 722d779..97e844d 100644 Binary files a/requirements.txt and b/requirements.txt differ