1
0
mirror of https://github.com/django/django.git synced 2025-10-23 21:59:11 +00:00

Fixed #34909 -- Associated links in admin navigation sidebar with row descriptions.

This adds aria-describedby attribute to the models' links in the admin
navigation sidebar.

Thanks Thibaud Colas for the review.

Co-authored-by: Dara Silvera <dsilvera@octobot.io>
This commit is contained in:
Eliana Rosselli
2023-10-20 09:42:30 -04:00
committed by Mariusz Felisiak
parent 5b885106a7
commit c83c639ba0
3 changed files with 29 additions and 5 deletions

View File

@@ -1605,6 +1605,29 @@ class AdminViewBasicTest(AdminViewBasicTestCase):
'<main id="content-start" class="content" tabindex="-1">',
)
def test_aria_describedby_for_add_and_change_links(self):
response = self.client.get(reverse("admin:index"))
tests = [
("admin_views", "actor"),
("admin_views", "worker"),
("auth", "group"),
("auth", "user"),
]
for app_label, model_name in tests:
with self.subTest(app_label=app_label, model_name=model_name):
row_id = f"{app_label}-{model_name}"
self.assertContains(response, f'<th scope="row" id="{row_id}">')
self.assertContains(
response,
f'<a href="/test_admin/admin/{app_label}/{model_name}/" '
f'class="changelink" aria-describedby="{row_id}">Change</a>',
)
self.assertContains(
response,
f'<a href="/test_admin/admin/{app_label}/{model_name}/add/" '
f'class="addlink" aria-describedby="{row_id}">Add</a>',
)
@override_settings(
AUTH_PASSWORD_VALIDATORS=[