From b22059cf0bb071d28b63f650b6106f2cef2d5777 Mon Sep 17 00:00:00 2001 From: Erin Song <121973038+erinysong@users.noreply.github.com> Date: Thu, 27 Feb 2025 16:25:07 -0800 Subject: [PATCH 1/3] Update create domain requests fixtures --- src/registrar/fixtures/fixtures_requests.py | 41 ++++++++++++--------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/src/registrar/fixtures/fixtures_requests.py b/src/registrar/fixtures/fixtures_requests.py index 6eee6438f..77d7595ae 100644 --- a/src/registrar/fixtures/fixtures_requests.py +++ b/src/registrar/fixtures/fixtures_requests.py @@ -315,7 +315,7 @@ class DomainRequestFixture: cls._create_domain_requests(users) @classmethod - def _create_domain_requests(cls, users): # noqa: C901 + def _create_domain_requests(cls, users, total_requests=None): # noqa: C901 """Creates DomainRequests given a list of users.""" total_domain_requests_to_make = len(users) # 100000 @@ -323,26 +323,33 @@ class DomainRequestFixture: # number of entries. # (Prevents re-adding more entries to an already populated database, # which happens when restarting Docker src) - domain_requests_already_made = DomainRequest.objects.count() + total_existing_requests = DomainRequest.objects.count() domain_requests_to_create = [] - if domain_requests_already_made < total_domain_requests_to_make: - for user in users: - for request_data in cls.DOMAINREQUESTS: - # Prepare DomainRequest objects - try: - domain_request = DomainRequest( - creator=user, - organization_name=request_data["organization_name"], - ) - cls._set_non_foreign_key_fields(domain_request, request_data) - cls._set_foreign_key_fields(domain_request, request_data, user) - domain_requests_to_create.append(domain_request) - except Exception as e: - logger.warning(e) + if total_requests and total_requests <= total_existing_requests: + total_domain_requests_to_make = total_requests - total_existing_requests + if total_domain_requests_to_make >= 0: + total_domains_to_delete = total_domain_requests_to_make + DomainRequest.objects.filter(id__in=list(DomainRequest.objects.values_list('pk', flat=True)[:total_domains_to_delete])).delete() + if total_domain_requests_to_make == 0: + return + + for user in users: + for request_data in cls.DOMAINREQUESTS: + # Prepare DomainRequest objects + try: + domain_request = DomainRequest( + creator=user, + organization_name=request_data["organization_name"], + ) + cls._set_non_foreign_key_fields(domain_request, request_data) + cls._set_foreign_key_fields(domain_request, request_data, user) + domain_requests_to_create.append(domain_request) + except Exception as e: + logger.warning(e) num_additional_requests_to_make = ( - total_domain_requests_to_make - domain_requests_already_made - len(domain_requests_to_create) + total_domain_requests_to_make - len(domain_requests_to_create) ) if num_additional_requests_to_make > 0: for _ in range(num_additional_requests_to_make): From 099e7257ed9c1be4b2ed426f91276882213a601e Mon Sep 17 00:00:00 2001 From: Erin Song <121973038+erinysong@users.noreply.github.com> Date: Thu, 27 Feb 2025 16:25:36 -0800 Subject: [PATCH 2/3] Fix linting --- src/registrar/fixtures/fixtures_requests.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/registrar/fixtures/fixtures_requests.py b/src/registrar/fixtures/fixtures_requests.py index 77d7595ae..45989f989 100644 --- a/src/registrar/fixtures/fixtures_requests.py +++ b/src/registrar/fixtures/fixtures_requests.py @@ -328,9 +328,11 @@ class DomainRequestFixture: domain_requests_to_create = [] if total_requests and total_requests <= total_existing_requests: total_domain_requests_to_make = total_requests - total_existing_requests - if total_domain_requests_to_make >= 0: + if total_domain_requests_to_make >= 0: total_domains_to_delete = total_domain_requests_to_make - DomainRequest.objects.filter(id__in=list(DomainRequest.objects.values_list('pk', flat=True)[:total_domains_to_delete])).delete() + DomainRequest.objects.filter( + id__in=list(DomainRequest.objects.values_list("pk", flat=True)[:total_domains_to_delete]) + ).delete() if total_domain_requests_to_make == 0: return @@ -348,9 +350,7 @@ class DomainRequestFixture: except Exception as e: logger.warning(e) - num_additional_requests_to_make = ( - total_domain_requests_to_make - len(domain_requests_to_create) - ) + num_additional_requests_to_make = total_domain_requests_to_make - len(domain_requests_to_create) if num_additional_requests_to_make > 0: for _ in range(num_additional_requests_to_make): random_user = random.choice(users) # nosec From 73e80da06e20dee8faa8ec0cdcebdacd7ac0ad3d Mon Sep 17 00:00:00 2001 From: Erin Song <121973038+erinysong@users.noreply.github.com> Date: Tue, 4 Mar 2025 14:06:47 -0800 Subject: [PATCH 3/3] Remove extraneous variable --- src/registrar/fixtures/fixtures_requests.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/registrar/fixtures/fixtures_requests.py b/src/registrar/fixtures/fixtures_requests.py index 45989f989..038c2db37 100644 --- a/src/registrar/fixtures/fixtures_requests.py +++ b/src/registrar/fixtures/fixtures_requests.py @@ -329,9 +329,8 @@ class DomainRequestFixture: if total_requests and total_requests <= total_existing_requests: total_domain_requests_to_make = total_requests - total_existing_requests if total_domain_requests_to_make >= 0: - total_domains_to_delete = total_domain_requests_to_make DomainRequest.objects.filter( - id__in=list(DomainRequest.objects.values_list("pk", flat=True)[:total_domains_to_delete]) + id__in=list(DomainRequest.objects.values_list("pk", flat=True)[:total_domain_requests_to_make]) ).delete() if total_domain_requests_to_make == 0: return