from typing import Any from fansifter_common.testing.factories import FactoryService from app.adapters.postgres import PgModel, postgres_db from app.adapters.snowflake import Model, snowflake_db _factory = FactoryService() _factory.scan("tests.unit.factories") def build_model[T](model: type[T], **kwargs: Any) -> T: return _factory.build(model, **kwargs) def create_model[T: Model](model: type[T], **kwargs: Any) -> T: return _factory.create(snowflake_db.session, model, **kwargs) def create_pg_model[T: PgModel](model: type[T], **kwargs: Any) -> T: return _factory.create(postgres_db.session, model, **kwargs)