Skip to content

Commit

Permalink
Move submitted_at as an optional factory attribute to set
Browse files Browse the repository at this point in the history
  • Loading branch information
kevincarrogan committed Aug 28, 2024
1 parent 5170991 commit bba298c
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 15 deletions.
7 changes: 3 additions & 4 deletions api/applications/tests/factories.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import datetime
import factory

from faker import Faker
Expand Down Expand Up @@ -61,11 +60,11 @@ class Meta:
@classmethod
def _create(cls, model_class, *args, **kwargs):
obj = model_class(*args, **kwargs)
obj.status = get_case_status_by_status(CaseStatusEnum.SUBMITTED)
if "status" in kwargs and isinstance(kwargs["status"], CaseStatus):
obj.status = kwargs["status"]
else:
obj.status = get_case_status_by_status(CaseStatusEnum.SUBMITTED)
obj.submitted_at = datetime.datetime.now()
if "submitted_at" in kwargs:
obj.submitted_at = kwargs["submitted_at"]
obj.save()
return obj

Expand Down
21 changes: 17 additions & 4 deletions api/data_workspace/v2/tests/bdd/test_licence_decisions.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import datetime
import pytest
import uuid

Expand Down Expand Up @@ -44,7 +45,10 @@ def withdrawn_time():

@given("a SIEL application that has been withdrawn by the exporter", target_fixture="application")
def withdrawn_siel_application(api_client, exporter_headers, organisation, withdrawn_time):
submitted_application = StandardApplicationFactory(organisation=organisation)
submitted_application = StandardApplicationFactory(
organisation=organisation,
submitted_at=datetime.datetime.now(),
)
change_status_url = reverse(
"exporter_applications:change_status",
kwargs={
Expand Down Expand Up @@ -83,7 +87,10 @@ def licence_decision_time(licence_decisions_data, withdrawn_time):

@given("a SIEL application that has a licence issued", target_fixture="application")
def application_with_licence_issued(organisation, api_client, gov_headers, gov_user, issued_time):
submitted_application = StandardApplicationFactory(organisation=organisation)
submitted_application = StandardApplicationFactory(
organisation=organisation,
submitted_at=datetime.datetime.now(),
)
finalise_application_url = reverse(
"applications:finalise",
kwargs={
Expand Down Expand Up @@ -161,7 +168,10 @@ def refused_time():

@given("a SIEL application that has a licence refused", target_fixture="application")
def application_with_licence_refused(organisation, api_client, gov_headers, gov_user, refused_time):
submitted_application = StandardApplicationFactory(organisation=organisation)
submitted_application = StandardApplicationFactory(
organisation=organisation,
submitted_at=datetime.datetime.now(),
)
finalise_application_url = reverse(
"applications:finalise",
kwargs={
Expand Down Expand Up @@ -230,7 +240,10 @@ def nlr_time():

@given("a SIEL application that is NLR", target_fixture="application")
def nlr_siel_application(gov_user, organisation, api_client, gov_headers, nlr_time):
submitted_application = StandardApplicationFactory(organisation=organisation)
submitted_application = StandardApplicationFactory(
organisation=organisation,
submitted_at=datetime.datetime.now(),
)
FinalAdviceFactory(user=gov_user, case=submitted_application, type=AdviceType.NO_LICENCE_REQUIRED)
letter_layout = LetterLayoutFactory(id=uuid.UUID(int=1))
template = LetterTemplateFactory(
Expand Down
30 changes: 23 additions & 7 deletions api/data_workspace/v2/tests/bdd/test_siel_applications.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import datetime
import pytest

from django.urls import reverse
Expand Down Expand Up @@ -34,7 +35,9 @@ def draft_application_not_presented(unpage_data, siel_applications_list_url):

@given("a submitted SIEL application without an amendment", target_fixture="siel_application")
def siel_application_without_an_amendment():
return StandardApplicationFactory()
return StandardApplicationFactory(
submitted_at=datetime.datetime.now(),
)


@then("it is presented as a single SIEL application", target_fixture="siel_application_data")
Expand All @@ -51,8 +54,13 @@ def siel_application_id_of_itself(siel_application, siel_application_data):

@given("a submitted SIEL application that has been amended", target_fixture="original_siel_application")
def siel_application_with_an_amendment():
original_siel_application = StandardApplicationFactory()
StandardApplicationFactory(amendment_of=original_siel_application)
original_siel_application = StandardApplicationFactory(
submitted_at=datetime.datetime.now(),
)
StandardApplicationFactory(
amendment_of=original_siel_application,
submitted_at=datetime.datetime.now(),
)
return original_siel_application


Expand All @@ -63,8 +71,16 @@ def siel_application_has_first_id_in_amendment_chain(original_siel_application,

@given("a submitted SIEL application with multiple amendments", target_fixture="original_siel_application")
def siel_application_with_multiple_amendments():
original_siel_application = StandardApplicationFactory()
next_siel_application = StandardApplicationFactory(amendment_of=original_siel_application)
another_siel_application = StandardApplicationFactory(amendment_of=next_siel_application)
StandardApplicationFactory(amendment_of=another_siel_application)
original_siel_application = StandardApplicationFactory(
submitted_at=datetime.datetime.now(),
)
next_siel_application = StandardApplicationFactory(
amendment_of=original_siel_application,
submitted_at=datetime.datetime.now(),
)
another_siel_application = StandardApplicationFactory(
amendment_of=next_siel_application,
submitted_at=datetime.datetime.now(),
)
StandardApplicationFactory(amendment_of=another_siel_application, submitted_at=datetime.datetime.now())
return original_siel_application

0 comments on commit bba298c

Please sign in to comment.