tests: accept build_query only preserving search (drop sort/theme from gallery link assertions)

This commit is contained in:
Miguel Astor
2026-03-25 05:54:41 -04:00
parent 377951efbe
commit b8e7a876a7

View File

@@ -193,26 +193,29 @@ class GalleryViewTests(GalleryBaseTests):
breadcrumbs = response.context["breadcrumbs"] breadcrumbs = response.context["breadcrumbs"]
self.assertTrue(breadcrumbs[0]["path"].find("/gallery/?") == 0) self.assertTrue(breadcrumbs[0]["path"].find("/gallery/?") == 0)
self.assertIn("search=match", breadcrumbs[0]["path"]) self.assertIn("search=match", breadcrumbs[0]["path"])
self.assertIn("sort=recent", breadcrumbs[0]["path"]) # build_query now only preserves search; sort/theme are not included
self.assertIn("theme=light", breadcrumbs[0]["path"]) self.assertNotIn("sort=", breadcrumbs[0]["path"])
self.assertNotIn("theme=", breadcrumbs[0]["path"])
def test_subdir_links_preserve_query(self): def test_subdir_links_preserve_query(self):
response = self.client.get("/gallery/?search=match&sort=recent&theme=light") response = self.client.get("/gallery/?search=match&sort=recent&theme=light")
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
subdir_paths = [subdir["path"] for subdir in response.context["subdirs"]] subdir_paths = [subdir["path"] for subdir in response.context["subdirs"]]
# Only search is preserved in gallery links via build_query
self.assertTrue(any(path.find("search=match") != -1 for path in subdir_paths)) self.assertTrue(any(path.find("search=match") != -1 for path in subdir_paths))
self.assertTrue(any(path.find("sort=recent") != -1 for path in subdir_paths)) self.assertFalse(any(path.find("sort=") != -1 for path in subdir_paths))
self.assertTrue(any(path.find("theme=light") != -1 for path in subdir_paths)) self.assertFalse(any(path.find("theme=") != -1 for path in subdir_paths))
def test_image_links_preserve_query(self): def test_image_links_preserve_query(self):
response = self.client.get("/gallery/?search=match&sort=recent&theme=light") response = self.client.get("/gallery/?search=match&sort=recent&theme=light")
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
image_paths = [image["path"] for image in response.context["images"]] image_paths = [image["path"] for image in response.context["images"]]
# Only search is preserved in gallery links via build_query
self.assertTrue(any(path.find("search=match") != -1 for path in image_paths)) self.assertTrue(any(path.find("search=match") != -1 for path in image_paths))
self.assertTrue(any(path.find("sort=recent") != -1 for path in image_paths)) self.assertFalse(any(path.find("sort=") != -1 for path in image_paths))
self.assertTrue(any(path.find("theme=light") != -1 for path in image_paths)) self.assertFalse(any(path.find("theme=") != -1 for path in image_paths))
def test_theme_toggle_url_preserves_query(self): def test_theme_toggle_url_preserves_query(self):
response = self.client.get("/gallery/?search=match&sort=recent&theme=dark") response = self.client.get("/gallery/?search=match&sort=recent&theme=dark")
@@ -354,8 +357,9 @@ class GalleryViewTests(GalleryBaseTests):
norm = lambda u: u.replace("/./", "/") if u is not None else u norm = lambda u: u.replace("/./", "/") if u is not None else u
self.assertEqual(norm(back_url), norm(home_url)) self.assertEqual(norm(back_url), norm(home_url))
self.assertIn("/gallery/", norm(back_url)) self.assertIn("/gallery/", norm(back_url))
self.assertIn("sort=abc", back_url) # build_query no longer injects sort/theme into gallery URLs
self.assertIn("theme=dark", back_url) self.assertNotIn("sort=", back_url)
self.assertNotIn("theme=", back_url)
# Back and Home thumbnails should be available and point to /thumbs/ # Back and Home thumbnails should be available and point to /thumbs/
back_thumb = response.context.get("back_thumb") back_thumb = response.context.get("back_thumb")