from fansifter_common.testing.factories import SQLAlchemyFactory from polyfactory.factories.dataclass_factory import DataclassFactory from app.models import AutomatedEmail, AutomatedEmailSendBatch from app.types import CsvRow class AutomatedEmailFactory(SQLAlchemyFactory[AutomatedEmail]): domain_id = None sender_name = "Test Sender" email_username = "noreply" subject = "Test Subject" html_content = "Test" css_content = "p { color: red; }" compressed_content = None preview_text = None class AutomatedEmailSendBatchFactory(SQLAlchemyFactory[AutomatedEmailSendBatch]): last_sent_row_id = 0 completed_at = None class CsvRowFactory(DataclassFactory[CsvRow]): __model__ = CsvRow automated_email_trigger_id = "trigger_001" timestamp = "2026-03-04T10:30:00Z" is_doi_send = False confirmation_id = None fan_first_name = "Jane" fan_last_name = "Doe" fan_country_code = "US"