"""Factories for testing models.""" import factory from abacus_common_logic.test_utils.factories import BaseModelFactoryWithTimestamps from abacus_schedule.constants import constants from abacus_schedule.models.schedule import Schedule from abacus_schedule.models.schedule_attachment import ScheduleAttachment class ScheduleFactory(BaseModelFactoryWithTimestamps): """Factory to create account schedules for testing.""" class Meta: """Meta definition for the factory.""" model = Schedule schedule_name = factory.Sequence(lambda n: f'Schedule {n + 1}') schedule_id = factory.Sequence(lambda n: n + 1) target_type = constants.SCHEDULE_TARGET_TYPE.CONTRIBUTOR target_id = 'contributor-id' conditions = {} created_by = 'user-id' class ScheduleAttachmentFactory(BaseModelFactoryWithTimestamps): """Factory to create schedule_attachment models for testing.""" class Meta: """Meta definition for the factory.""" model = ScheduleAttachment schedule = factory.SubFactory(ScheduleFactory) target_type = constants.SCHEDULE_ATTACHMENT_TARGET_TYPE.CONTRIBUTION target_id = '1bcab378-77b2-4747-9d72-2c4ec90e7753'