summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Smith <smithdc@gmail.com>2022-03-30 09:10:24 +0100
committerCarlton Gibson <carlton@noumenal.es>2022-04-06 12:42:43 +0200
commit6991880109e35c879b71b7d9d9c154baeec12b89 (patch)
treed72cd6cb99624d105652ed16343c7eaa426d3c5d /tests
parent50e1e7ef8ef63271717f8bcab76d7151ccf4bb18 (diff)
Refs #31617 -- Added an id for helptext in admin forms.
Diffstat (limited to 'tests')
-rw-r--r--tests/admin_changelist/tests.py11
-rw-r--r--tests/admin_inlines/tests.py4
-rw-r--r--tests/admin_views/tests.py64
3 files changed, 67 insertions, 12 deletions
diff --git a/tests/admin_changelist/tests.py b/tests/admin_changelist/tests.py
index 6ffcdc6497..e24654dfcb 100644
--- a/tests/admin_changelist/tests.py
+++ b/tests/admin_changelist/tests.py
@@ -1523,7 +1523,7 @@ class ChangeListTests(TestCase):
request = self._mocked_authenticated_request("/band/", superuser)
response = m.changelist_view(request)
self.assertIsNone(response.context_data["cl"].search_help_text)
- self.assertNotContains(response, '<div class="help">')
+ self.assertNotContains(response, '<div class="help id="searchbar_helptext">')
# search_fields with search_help_text.
m.search_help_text = "Search help text"
request = self._mocked_authenticated_request("/band/", superuser)
@@ -1531,7 +1531,14 @@ class ChangeListTests(TestCase):
self.assertEqual(
response.context_data["cl"].search_help_text, "Search help text"
)
- self.assertContains(response, '<div class="help">Search help text</div>')
+ self.assertContains(
+ response, '<div class="help" id="searchbar_helptext">Search help text</div>'
+ )
+ self.assertContains(
+ response,
+ '<input type="text" size="40" name="q" value="" id="searchbar" '
+ 'autofocus aria-describedby="searchbar_helptext">',
+ )
class GetAdminLogTests(TestCase):
diff --git a/tests/admin_inlines/tests.py b/tests/admin_inlines/tests.py
index 9002af9933..aab20dfd55 100644
--- a/tests/admin_inlines/tests.py
+++ b/tests/admin_inlines/tests.py
@@ -263,9 +263,7 @@ class TestInline(TestDataMixin, TestCase):
stacked and tabular layouts.
"""
response = self.client.get(reverse("admin:admin_inlines_holder4_add"))
- self.assertContains(
- response, '<div class="help">Awesome stacked help text is awesome.</div>', 4
- )
+ self.assertContains(response, "Awesome stacked help text is awesome.", 4)
self.assertContains(
response,
'<img src="/static/admin/img/icon-unknown.svg" '
diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py
index 94d9d80289..6fb917bd34 100644
--- a/tests/admin_views/tests.py
+++ b/tests/admin_views/tests.py
@@ -1449,8 +1449,43 @@ class AdminViewBasicTest(AdminViewBasicTestCase):
with self.assertNoLogs("django.template", "DEBUG"):
self.client.post(reverse("admin:admin_views_article_changelist"), post_data)
+ @override_settings(
+ AUTH_PASSWORD_VALIDATORS=[
+ {
+ "NAME": (
+ "django.contrib.auth.password_validation."
+ "UserAttributeSimilarityValidator"
+ )
+ },
+ {
+ "NAME": (
+ "django.contrib.auth.password_validation."
+ "NumericPasswordValidator"
+ )
+ },
+ ]
+ )
+ def test_password_change_helptext(self):
+ response = self.client.get(reverse("admin:password_change"))
+ self.assertContains(
+ response, '<div class="help" id="id_new_password1_helptext">'
+ )
+
@override_settings(
+ AUTH_PASSWORD_VALIDATORS=[
+ {
+ "NAME": (
+ "django.contrib.auth.password_validation."
+ "UserAttributeSimilarityValidator"
+ )
+ },
+ {
+ "NAME": (
+ "django.contrib.auth.password_validation." "NumericPasswordValidator"
+ )
+ },
+ ],
TEMPLATES=[
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
@@ -1470,7 +1505,7 @@ class AdminViewBasicTest(AdminViewBasicTestCase):
],
},
}
- ]
+ ],
)
class AdminCustomTemplateTests(AdminViewBasicTestCase):
def test_custom_model_admin_templates(self):
@@ -1563,6 +1598,19 @@ class AdminCustomTemplateTests(AdminViewBasicTestCase):
response, '<input type="text" name="username" value="super" class="hidden">'
)
+ # help text for passwords has an id.
+ self.assertContains(
+ response,
+ '<div class="help" id="id_password1_helptext"><ul><li>'
+ "Your password can’t be too similar to your other personal information."
+ "</li><li>Your password can’t be entirely numeric.</li></ul></div>",
+ )
+ self.assertContains(
+ response,
+ '<div class="help" id="id_password2_helptext">'
+ "Enter the same password as before, for verification.</div>",
+ )
+
def test_extended_bodyclass_template_index(self):
"""
The admin/index.html template uses block.super in the bodyclass block.
@@ -6271,17 +6319,17 @@ class ReadonlyTest(AdminFieldExtractionMixin, TestCase):
self.assertContains(response, '<div class="form-row field-posted">')
self.assertContains(response, '<div class="form-row field-value">')
self.assertContains(response, '<div class="form-row">')
- self.assertContains(response, '<div class="help">', 3)
+ self.assertContains(response, '<div class="help"', 3)
self.assertContains(
response,
- '<div class="help">Some help text for the title (with Unicode ŠĐĆŽćžšđ)'
- "</div>",
+ '<div class="help" id="id_title_helptext">Some help text for the title '
+ "(with Unicode ŠĐĆŽćžšđ)</div>",
html=True,
)
self.assertContains(
response,
- '<div class="help">Some help text for the content (with Unicode ŠĐĆŽćžšđ)'
- "</div>",
+ '<div class="help" id="id_content_helptext">Some help text for the content '
+ "(with Unicode ŠĐĆŽćžšđ)</div>",
html=True,
)
self.assertContains(
@@ -6468,7 +6516,9 @@ class ReadonlyTest(AdminFieldExtractionMixin, TestCase):
reverse("admin:admin_views_fieldoverridepost_change", args=(p.pk,))
)
self.assertContains(
- response, '<div class="help">Overridden help text for the date</div>'
+ response,
+ '<div class="help">Overridden help text for the date</div>',
+ html=True,
)
self.assertContains(
response,