Files
hot_comment_radar/tests/unit/test_demo_seed.py
T

28 lines
1.0 KiB
Python

from sqlalchemy.orm import Session
from app.demo_seed import seed_demo_data
from app.models import Comment, ContentItem, Task
from tests.helpers import make_test_client
def test_seed_demo_data_is_idempotent_and_removes_sensitive_fields():
with make_test_client() as (_client, engine):
with Session(engine) as session:
task_id = seed_demo_data(session)
second_task_id = seed_demo_data(session)
task = session.get(Task, task_id)
comments = session.query(Comment).all()
items = session.query(ContentItem).all()
assert second_task_id == task_id
assert task is not None
assert task.id.startswith("demo-")
assert task.status == "success"
assert comments
assert all(comment.author is None for comment in comments)
assert all(comment.source_comment_id is None for comment in comments)
assert all(comment.raw_data == "{}" for comment in comments)
assert all(item.url is None for item in items)
assert all(item.raw_data == "{}" for item in items)