diff --git a/bookmarks/tests/test_bookmark_archived_view.py b/bookmarks/tests/test_bookmark_archived_view.py
index ca7a6f3..0b0f4c4 100644
--- a/bookmarks/tests/test_bookmark_archived_view.py
+++ b/bookmarks/tests/test_bookmark_archived_view.py
@@ -327,3 +327,13 @@ class BookmarkArchivedViewTestCase(TestCase, BookmarkFactoryMixin, HtmlTestMixin
''', html)
+
+ def test_url_encode_bookmark_actions_url(self):
+ url = reverse('bookmarks:archived') + '?q=%23foo'
+ response = self.client.get(url)
+ html = response.content.decode()
+ soup = self.make_soup(html)
+ actions_form = soup.select('form.bookmark-actions')[0]
+
+ self.assertEqual(actions_form.attrs['action'],
+ '/bookmarks/archived/action?q=%23foo&return_url=%2Fbookmarks%2Farchived%3Fq%3D%2523foo')
diff --git a/bookmarks/tests/test_bookmark_index_view.py b/bookmarks/tests/test_bookmark_index_view.py
index 8810669..86e6c91 100644
--- a/bookmarks/tests/test_bookmark_index_view.py
+++ b/bookmarks/tests/test_bookmark_index_view.py
@@ -327,3 +327,13 @@ class BookmarkIndexViewTestCase(TestCase, BookmarkFactoryMixin, HtmlTestMixin):
''', html)
+
+ def test_url_encode_bookmark_actions_url(self):
+ url = reverse('bookmarks:index') + '?q=%23foo'
+ response = self.client.get(url)
+ html = response.content.decode()
+ soup = self.make_soup(html)
+ actions_form = soup.select('form.bookmark-actions')[0]
+
+ self.assertEqual(actions_form.attrs['action'],
+ '/bookmarks/action?q=%23foo&return_url=%2Fbookmarks%3Fq%3D%2523foo')
diff --git a/bookmarks/tests/test_bookmark_shared_view.py b/bookmarks/tests/test_bookmark_shared_view.py
index 955bbb8..ecf01e6 100644
--- a/bookmarks/tests/test_bookmark_shared_view.py
+++ b/bookmarks/tests/test_bookmark_shared_view.py
@@ -6,10 +6,10 @@ from django.test import TestCase
from django.urls import reverse
from bookmarks.models import Bookmark, Tag, UserProfile
-from bookmarks.tests.helpers import BookmarkFactoryMixin, collapse_whitespace
+from bookmarks.tests.helpers import BookmarkFactoryMixin, collapse_whitespace, HtmlTestMixin
-class BookmarkSharedViewTestCase(TestCase, BookmarkFactoryMixin):
+class BookmarkSharedViewTestCase(TestCase, BookmarkFactoryMixin, HtmlTestMixin):
def authenticate(self) -> None:
user = self.get_or_create_test_user()
@@ -369,3 +369,13 @@ class BookmarkSharedViewTestCase(TestCase, BookmarkFactoryMixin):
response = self.client.get(base_url + url_params)
self.assertEditLink(response, url)
+
+ def test_url_encode_bookmark_actions_url(self):
+ url = reverse('bookmarks:shared') + '?q=%23foo'
+ response = self.client.get(url)
+ html = response.content.decode()
+ soup = self.make_soup(html)
+ actions_form = soup.select('form.bookmark-actions')[0]
+
+ self.assertEqual(actions_form.attrs['action'],
+ '/bookmarks/shared/action?q=%23foo&return_url=%2Fbookmarks%2Fshared%3Fq%3D%2523foo')