from datetime import date import pytest from engagements.models import Engagement, EngagementStrategy, EngagementType, Organisation, RegulatoryCycle from myuser.models import TeamUser @pytest.fixture def regulatory_cycles(): RegulatoryCycle.objects.create(start_date="2024-01-01", end_date="2024-12-31") RegulatoryCycle.objects.create(start_date="2023-01-01", end_date="2023-12-31") RegulatoryCycle.objects.create(start_date="2022-01-01", end_date="2022-12-31") @pytest.fixture def org(): return Organisation.objects.create(name="MOD", is_regulated_entity=False) @pytest.fixture def engagement_strategy(regulatory_cycles, org, user): es = EngagementStrategy.objects.create( description="ES1 description", start_year=RegulatoryCycle.objects.get(start_date="2022-01-01"), end_year=RegulatoryCycle.objects.get(start_date="2024-01-01"), organisation=org, owned_by=user, reviewed_by=user, management_sign_off="2022-02-10", inspector_sign_off="2022-01-10", status="DRAFT", ) @pytest.fixture def engagement(): data = { "proposed_start_date": "2022-10-01", "engagement_type": EngagementType.objects.create(name="ET1"), "external_party": Organisation.objects.create(name="O1"), } return Engagement.objects.create(**data) @pytest.fixture def user(): return TeamUser.objects.create_user(email="ming@ming.com") @pytest.fixture def engagement_type(): return EngagementType.objects.create(name="ET2") @pytest.fixture def external_party(): return Organisation.objects.create(name="O2") @pytest.fixture def user1(): return TeamUser.objects.create_user(email="user1@example.com") @pytest.fixture def user2(): return TeamUser.objects.create_user(email="user2@example.com")