didier/tests/test_database/test_utils/test_caches.py

28 lines
970 B
Python

from sqlalchemy.ext.asyncio import AsyncSession
from database.schemas import UforaCourse
from database.utils.caches import UforaCourseCache
async def test_ufora_course_cache_refresh_empty(postgres: AsyncSession, ufora_course_with_alias: UforaCourse):
"""Test loading the data for the Ufora Course cache when it's empty"""
cache = UforaCourseCache()
await cache.invalidate(postgres)
assert len(cache.data) == 1
assert cache.data == ["test"]
assert cache.aliases == {"alias": "test"}
async def test_ufora_course_cache_refresh_not_empty(postgres: AsyncSession, ufora_course_with_alias: UforaCourse):
"""Test loading the data for the Ufora Course cache when it's not empty anymore"""
cache = UforaCourseCache()
cache.data = ["Something"]
cache.data_transformed = ["something"]
await cache.invalidate(postgres)
assert len(cache.data) == 1
assert cache.data == ["test"]
assert cache.aliases == {"alias": "test"}