mirror of
https://github.com/calibrain/shelfmark.git
synced 2026-04-19 21:39:17 -04:00
- Updated frontend CSS to Tailwind v4 - Reverted socket IO origin restriction - Fixed search queries not persisting after auth redirect - Move advanced search options to left UI selector - Unlock IRC source to be used for audiobook content_type - Tweaked security settings env var syncing to be prioritised - Fix AA "all languages" query generation - Added language-free AA query as second fallback in case of no results - Testing moving SeleniumBase scratch files to /tmp via symlink - Added enhanced logging for activity dismissals and other events - Removed iFrame restrictions
22 lines
1.1 KiB
Python
22 lines
1.1 KiB
Python
from shelfmark.release_sources import Release
|
|
from shelfmark.release_sources.irc import cache
|
|
|
|
|
|
def test_cache_results_isolated_by_content_type(monkeypatch):
|
|
state = {"entries": {}, "version": 1}
|
|
|
|
monkeypatch.setattr(cache, "_load_cache", lambda: state)
|
|
monkeypatch.setattr(cache, "_save_cache", lambda _cache: None)
|
|
|
|
ebook_release = Release(source="irc", source_id="ebook", title="Shared Title", format="epub")
|
|
audiobook_release = Release(source="irc", source_id="audio", title="Shared Title", format="zip")
|
|
|
|
cache.cache_results("hardcover", "123", "Shared Title", [ebook_release], content_type="ebook")
|
|
cache.cache_results("hardcover", "123", "Shared Title", [audiobook_release], content_type="audiobook")
|
|
|
|
ebook_cached = cache.get_cached_results("hardcover", "123", content_type="ebook", ttl_seconds=60)
|
|
audiobook_cached = cache.get_cached_results("hardcover", "123", content_type="audiobook", ttl_seconds=60)
|
|
|
|
assert [release.source_id for release in ebook_cached["releases"]] == ["ebook"]
|
|
assert [release.source_id for release in audiobook_cached["releases"]] == ["audio"]
|