diff --git a/src/registrar/forms/domain_request_wizard.py b/src/registrar/forms/domain_request_wizard.py index 8d74f6f35..46d7b35c4 100644 --- a/src/registrar/forms/domain_request_wizard.py +++ b/src/registrar/forms/domain_request_wizard.py @@ -13,7 +13,7 @@ from registrar.forms.utility.wizard_form_helper import ( BaseYesNoForm, BaseDeletableRegistrarForm, ) -from registrar.models import Contact, DomainRequest, DraftDomain, Domain +from registrar.models import Contact, DomainRequest, DraftDomain, Domain, FederalAgency from registrar.templatetags.url_helpers import public_site_url from registrar.utility.enums import ValidationReturnType @@ -97,13 +97,16 @@ class OrganizationElectionForm(RegistrarForm): class OrganizationContactForm(RegistrarForm): # for federal agencies we also want to know the top-level agency. - federal_agency = forms.ChoiceField( + federal_agency = forms.ModelChoiceField( label="Federal agency", # not required because this field won't be filled out unless # it is a federal agency. Use clean to check programatically # if it has been filled in when required. - required=False, - choices=[("", "--Select--")] + DomainRequest.AGENCY_CHOICES, + # uncomment to see if modelChoiceField can be an arg later + # required=False, + queryset=FederalAgency.objects.all(), + empty_label="--Select--", + # choices=[("", "--Select--")] + DomainRequest.AGENCY_CHOICES, ) organization_name = forms.CharField( label="Organization name", diff --git a/src/registrar/models/domain_information.py b/src/registrar/models/domain_information.py index 00039c036..264e322b8 100644 --- a/src/registrar/models/domain_information.py +++ b/src/registrar/models/domain_information.py @@ -29,9 +29,6 @@ class DomainInformation(TimeStampedModel): BranchChoices = DomainRequest.BranchChoices - # TODO for #1975: Delete this after we run the new migration - AGENCY_CHOICES = DomainRequest.AGENCY_CHOICES - federal_agency = models.ForeignKey( "registrar.FederalAgency", on_delete=models.PROTECT, diff --git a/src/registrar/tests/common.py b/src/registrar/tests/common.py index fac59068c..d6ad51603 100644 --- a/src/registrar/tests/common.py +++ b/src/registrar/tests/common.py @@ -26,6 +26,7 @@ from registrar.models import ( DomainInformation, PublicContact, Domain, + FederalAgency ) from epplibwrapper import ( commands, @@ -539,6 +540,9 @@ class MockDb(TestCase): self.end_date = current_date + timedelta(days=2) self.start_date = current_date - timedelta(days=2) + self.federal_agency_1, _ = FederalAgency.get_or_create(name="World War I Centennial Commission") + self.federal_agency_2, _ = FederalAgency.get_or_create(name="Armed Forces Retirement Home") + self.domain_1, _ = Domain.objects.get_or_create( name="cdomain1.gov", state=Domain.State.READY, first_ready=timezone.now() ) @@ -582,7 +586,7 @@ class MockDb(TestCase): creator=self.user, domain=self.domain_1, generic_org_type="federal", - federal_agency="World War I Centennial Commission", + federal_agency=federal_agency_1, federal_type="executive", is_election_board=False, ) @@ -593,63 +597,63 @@ class MockDb(TestCase): creator=self.user, domain=self.domain_3, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_4, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_4, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_5, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_5, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_6, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_6, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_7, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_7, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_8, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_8, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_9, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_9, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_10, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_10, generic_org_type="federal", - federal_agency="Armed Forces Retirement Home", + federal_agency=federal_agency_2, is_election_board=False, ) self.domain_information_11, _ = DomainInformation.objects.get_or_create( creator=self.user, domain=self.domain_11, generic_org_type="federal", - federal_agency="World War I Centennial Commission", + federal_agency=federal_agency_1, federal_type="executive", is_election_board=False, ) diff --git a/src/registrar/tests/test_admin.py b/src/registrar/tests/test_admin.py index b42667e01..a46321e8b 100644 --- a/src/registrar/tests/test_admin.py +++ b/src/registrar/tests/test_admin.py @@ -1989,8 +1989,6 @@ class TestDomainRequestAdmin(MockEppLib): "updated_at", "status", "rejection_reason", - "updated_federal_agency", - # TODO: once approved, we'll have to remove above from test "creator", "investigator", "generic_org_type",