From 21fee19b428d7883042d0802996848cc77370081 Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Tue, 28 Sep 2021 15:51:49 -0700 Subject: [PATCH 1/2] Use recently active as the default sort order --- bookwyrm/templates/directory/community_filter.html | 2 +- bookwyrm/templates/directory/sort_filter.html | 4 ++-- bookwyrm/views/directory.py | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bookwyrm/templates/directory/community_filter.html b/bookwyrm/templates/directory/community_filter.html index bd0ba7785..91783fd36 100644 --- a/bookwyrm/templates/directory/community_filter.html +++ b/bookwyrm/templates/directory/community_filter.html @@ -8,7 +8,7 @@ {% trans "Local users" %} {% endblock %} diff --git a/bookwyrm/templates/directory/sort_filter.html b/bookwyrm/templates/directory/sort_filter.html index 82b561fb7..c7c19f6fe 100644 --- a/bookwyrm/templates/directory/sort_filter.html +++ b/bookwyrm/templates/directory/sort_filter.html @@ -5,8 +5,8 @@
{% endblock %} diff --git a/bookwyrm/views/directory.py b/bookwyrm/views/directory.py index 8d893047a..81898af26 100644 --- a/bookwyrm/views/directory.py +++ b/bookwyrm/views/directory.py @@ -25,10 +25,10 @@ class Directory(View): users = suggested_users.get_annotated_users(request.user, **filters) sort = request.GET.get("sort") - if sort == "recent": - users = users.order_by("-last_active_date") - else: + if sort == "suggested": users = users.order_by("-mutuals", "-last_active_date") + else: + users = users.order_by("-last_active_date") paginated = Paginator(users, 12) From 4402fc6c14e773dc116a1a8c21398f1a2a2bb3f2 Mon Sep 17 00:00:00 2001 From: Mouse Reeve Date: Tue, 28 Sep 2021 15:55:35 -0700 Subject: [PATCH 2/2] HTML validation in tests --- bookwyrm/tests/views/admin/test_email_blocks.py | 12 ++++++++++-- bookwyrm/tests/views/test_directory.py | 17 +++++++++++++++-- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/bookwyrm/tests/views/admin/test_email_blocks.py b/bookwyrm/tests/views/admin/test_email_blocks.py index be3d9d702..24cdf8a49 100644 --- a/bookwyrm/tests/views/admin/test_email_blocks.py +++ b/bookwyrm/tests/views/admin/test_email_blocks.py @@ -1,5 +1,7 @@ """ test for app action functionality """ from unittest.mock import patch +from tidylib import tidy_document + from django.template.response import TemplateResponse from django.test import TestCase from django.test.client import RequestFactory @@ -36,7 +38,10 @@ class EmailBlocklistViews(TestCase): result = view(request) self.assertIsInstance(result, TemplateResponse) - result.render() + html = result.render() + _, errors = tidy_document(html.content, options={"drop-empty-elements": False}) + if errors: + raise Exception(errors) self.assertEqual(result.status_code, 200) def test_blocklist_page_post(self): @@ -49,7 +54,10 @@ class EmailBlocklistViews(TestCase): result = view(request) self.assertIsInstance(result, TemplateResponse) - result.render() + html = result.render() + _, errors = tidy_document(html.content, options={"drop-empty-elements": False}) + if errors: + raise Exception(errors) self.assertEqual(result.status_code, 200) self.assertTrue( diff --git a/bookwyrm/tests/views/test_directory.py b/bookwyrm/tests/views/test_directory.py index 90638b0a6..0193d19d2 100644 --- a/bookwyrm/tests/views/test_directory.py +++ b/bookwyrm/tests/views/test_directory.py @@ -1,5 +1,6 @@ """ test for app action functionality """ from unittest.mock import patch +from tidylib import tidy_document from django.contrib.auth.models import AnonymousUser from django.template.response import TemplateResponse @@ -51,7 +52,16 @@ class DirectoryViews(TestCase): result = view(request) self.assertIsInstance(result, TemplateResponse) - result.render() + html = result.render() + _, errors = tidy_document( + html.content, + options={ + "drop-empty-elements": False, + "warn-proprietary-attributes": False, + }, + ) + if errors: + raise Exception(errors) self.assertEqual(result.status_code, 200) def test_directory_page_empty(self): @@ -62,7 +72,10 @@ class DirectoryViews(TestCase): result = view(request) self.assertIsInstance(result, TemplateResponse) - result.render() + html = result.render() + _, errors = tidy_document(html.content, options={"drop-empty-elements": False}) + if errors: + raise Exception(errors) self.assertEqual(result.status_code, 200) def test_directory_page_logged_out(self):