From 844a24bbb97af663ebf8dbeab4499acafe105943 Mon Sep 17 00:00:00 2001 From: Carl Meyer Date: Tue, 31 Jan 2012 20:36:11 +0000 Subject: Fixed #16921 -- Added assertHTMLEqual and assertHTMLNotEqual assertions, and converted Django tests to use them where appropriate. Thanks Greg Müllegger. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://code.djangoproject.com/svn/django/trunk@17414 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- tests/regressiontests/admin_inlines/tests.py | 6 +- tests/regressiontests/admin_views/tests.py | 51 ++- tests/regressiontests/admin_widgets/tests.py | 38 +- .../regressiontests/forms/tests/error_messages.py | 11 +- tests/regressiontests/forms/tests/extra.py | 35 +- tests/regressiontests/forms/tests/fields.py | 3 +- tests/regressiontests/forms/tests/forms.py | 357 +++++++++--------- tests/regressiontests/forms/tests/formsets.py | 38 +- tests/regressiontests/forms/tests/models.py | 4 +- tests/regressiontests/forms/tests/regressions.py | 28 +- tests/regressiontests/forms/tests/util.py | 27 +- tests/regressiontests/forms/tests/widgets.py | 404 ++++++++++----------- .../regressiontests/generic_inline_admin/tests.py | 16 +- tests/regressiontests/i18n/tests.py | 10 +- tests/regressiontests/localflavor/ar/tests.py | 2 +- tests/regressiontests/localflavor/at/tests.py | 2 +- tests/regressiontests/localflavor/au/tests.py | 2 +- tests/regressiontests/localflavor/be/tests.py | 4 +- tests/regressiontests/localflavor/br/tests.py | 2 +- tests/regressiontests/localflavor/ca/tests.py | 2 +- tests/regressiontests/localflavor/ch/tests.py | 2 +- tests/regressiontests/localflavor/cl/tests.py | 2 +- tests/regressiontests/localflavor/cn/tests.py | 2 +- tests/regressiontests/localflavor/co/tests.py | 2 +- tests/regressiontests/localflavor/cz/tests.py | 2 +- tests/regressiontests/localflavor/de/tests.py | 2 +- tests/regressiontests/localflavor/ec/tests.py | 2 +- tests/regressiontests/localflavor/es/tests.py | 4 +- tests/regressiontests/localflavor/fi/tests.py | 2 +- tests/regressiontests/localflavor/fr/tests.py | 2 +- tests/regressiontests/localflavor/hr/tests.py | 6 +- tests/regressiontests/localflavor/id/tests.py | 4 +- tests/regressiontests/localflavor/ie/tests.py | 2 +- tests/regressiontests/localflavor/in_/tests.py | 2 +- tests/regressiontests/localflavor/is_/tests.py | 2 +- tests/regressiontests/localflavor/it/tests.py | 2 +- tests/regressiontests/localflavor/jp/tests.py | 2 +- tests/regressiontests/localflavor/mk/tests.py | 4 +- tests/regressiontests/localflavor/mx/tests.py | 4 +- tests/regressiontests/localflavor/nl/tests.py | 2 +- tests/regressiontests/localflavor/pl/tests.py | 4 +- tests/regressiontests/localflavor/py/tests.py | 4 +- tests/regressiontests/localflavor/ro/tests.py | 2 +- tests/regressiontests/localflavor/ru/tests.py | 4 +- tests/regressiontests/localflavor/se/tests.py | 2 +- tests/regressiontests/localflavor/si/tests.py | 2 +- tests/regressiontests/localflavor/sk/tests.py | 4 +- tests/regressiontests/localflavor/us/tests.py | 6 +- tests/regressiontests/localflavor/uy/tests.py | 2 +- tests/regressiontests/model_forms_regress/tests.py | 2 +- tests/regressiontests/modeladmin/tests.py | 4 +- tests/regressiontests/test_utils/tests.py | 254 +++++++++++++ .../views/tests/generic/create_update.py | 2 +- 53 files changed, 823 insertions(+), 563 deletions(-) (limited to 'tests/regressiontests') diff --git a/tests/regressiontests/admin_inlines/tests.py b/tests/regressiontests/admin_inlines/tests.py index 3ea2ce476e..e00a56d364 100644 --- a/tests/regressiontests/admin_inlines/tests.py +++ b/tests/regressiontests/admin_inlines/tests.py @@ -34,7 +34,7 @@ class TestInline(TestCase): can_delete should be passed to inlineformset factory. """ response = self.client.get(self.change_url) - inner_formset = response.context[-1]['inline_admin_formsets'][0].formset + inner_formset = response.context['inline_admin_formsets'][0].formset expected = InnerInline.can_delete actual = inner_formset.can_delete self.assertEqual(expected, actual, 'can_delete must be equal') @@ -134,7 +134,7 @@ class TestInline(TestCase): 'id="id_-1-0-capo_famiglia" />') self.assertContains(response, '') + 'name="-1-0-name" maxlength="100" />', html=True) self.assertContains(response, '') @@ -143,7 +143,7 @@ class TestInline(TestCase): 'id="id_-2-0-capo_famiglia" />') self.assertContains(response, '') + 'name="-2-0-name" maxlength="100" />', html=True) class TestInlineMedia(TestCase): urls = "regressiontests.admin_inlines.urls" diff --git a/tests/regressiontests/admin_views/tests.py b/tests/regressiontests/admin_views/tests.py index 6037c2b187..b0120cef1d 100644 --- a/tests/regressiontests/admin_views/tests.py +++ b/tests/regressiontests/admin_views/tests.py @@ -1696,7 +1696,7 @@ class AdminViewListEditable(TestCase): "_save": "Save", } response = self.client.post('/test_admin/admin/admin_views/fooddelivery/', data) - self.assertContains(response, '', 1) + self.assertContains(response, '', 1, html=True) data = { "form-TOTAL_FORMS": "3", @@ -1723,7 +1723,7 @@ class AdminViewListEditable(TestCase): "_save": "Save", } response = self.client.post('/test_admin/admin/admin_views/fooddelivery/', data) - self.assertContains(response, '', 2) + self.assertContains(response, '', 2, html=True) def test_non_form_errors(self): # test if non-form errors are handled; ticket #12716 @@ -1880,7 +1880,7 @@ class AdminViewListEditable(TestCase): response = self.client.get('/test_admin/admin/admin_views/story/') self.assertContains(response, 'id="id_form-0-id"', 1) # Only one hidden field, in a separate place than the table. self.assertContains(response, 'id="id_form-1-id"', 1) - self.assertContains(response, '
\n\n
' % (story2.id, story1.id)) + self.assertContains(response, '
\n\n
' % (story2.id, story1.id), html=True) self.assertContains(response, '%d' % story1.id, 1) self.assertContains(response, '%d' % story2.id, 1) @@ -1894,7 +1894,7 @@ class AdminViewListEditable(TestCase): response = self.client.get('/test_admin/admin/admin_views/otherstory/') self.assertContains(response, 'id="id_form-0-id"', 1) # Only one hidden field, in a separate place than the table. self.assertContains(response, 'id="id_form-1-id"', 1) - self.assertContains(response, '
\n\n
' % (story2.id, story1.id)) + self.assertContains(response, '
\n\n
' % (story2.id, story1.id), html=True) self.assertContains(response, '%d' % (story1.id, story1.id), 1) self.assertContains(response, '%d' % (story2.id, story2.id), 1) @@ -1923,7 +1923,7 @@ class AdminSearchTest(TestCase): from django.contrib.admin.views.main import TO_FIELD_VAR response = self.client.get('/test_admin/admin/auth/user/?q=joe&%s=username' % TO_FIELD_VAR) self.assertContains(response, "\n1 user\n") - self.assertContains(response, '') + self.assertContains(response, '', html=True) def test_exact_matches(self): response = self.client.get('/test_admin/admin/admin_views/recommendation/?q=bar') @@ -2114,8 +2114,8 @@ class AdminActionsTest(TestCase): response = self.client.post("/test_admin/admin/admin_views/question/", action_data) self.assertContains(response, "would require deleting the following protected related objects") - self.assertContains(response, '
  • Answer: Because.
  • ' % a1.pk) - self.assertContains(response, '
  • Answer: Yes.
  • ' % a2.pk) + self.assertContains(response, '
  • Answer: Because.
  • ' % a1.pk, html=True) + self.assertContains(response, '
  • Answer: Yes.
  • ' % a2.pk, html=True) def test_custom_function_mail_action(self): "Tests a custom action defined in a function" @@ -2159,13 +2159,12 @@ class AdminActionsTest(TestCase): Refs #15964. """ response = self.client.get('/test_admin/admin/admin_views/externalsubscriber/') - self.assertTrue('''