This commit is contained in:
Rachid Mrad 2024-05-30 16:25:37 -04:00
parent 565cf0036b
commit 996a6944a3
No known key found for this signature in database
4 changed files with 21 additions and 23 deletions

View file

@ -31,7 +31,7 @@ class GetDomainsJsonTest(TestWithUser, WebTest):
response = self.client.get(reverse("get_domains_json"))
self.assertEqual(response.status_code, 302)
def test_get_domains_json_authenticated(self):
"""Test that an authenticated user gets the list of 3 domains."""
response = self.app.get(reverse("get_domains_json"))
@ -65,16 +65,16 @@ class GetDomainsJsonTest(TestWithUser, WebTest):
self.assertEqual(expected_domain.name, names[i])
self.assertEqual(expected_domain.expiration_date, expiration_dates[i])
self.assertEqual(expected_domain.state, states[i])
# Parsing the expiration date from string to date
parsed_expiration_date = parse_date(expiration_dates[i])
expected_domain.expiration_date = parsed_expiration_date
# Check state_display and get_state_help_text
self.assertEqual(expected_domain.state_display(), state_displays[i])
self.assertEqual(expected_domain.get_state_help_text(), get_state_help_texts[i])
self.assertEqual(f'/domain/{expected_domain.id}', action_urls[i])
self.assertEqual(f"/domain/{expected_domain.id}", action_urls[i])
def test_pagination(self):
"""Test that pagination is correct in the response"""

View file

@ -2,7 +2,6 @@ from registrar.models import DomainRequest
from django.urls import reverse
from .test_views import TestWithUser
from django_webtest import WebTest # type: ignore
from datetime import datetime
from django.utils.dateparse import parse_datetime
@ -136,20 +135,24 @@ class DomainRequestViewTest(TestWithUser, WebTest):
# Check fields for each domain request
for i in range(10):
self.assertNotEqual(data["domain_requests"][i]["status"], "Approved")
self.assertEqual(self.domain_requests[i].requested_domain.name if self.domain_requests[i].requested_domain else None, requested_domains[i])
self.assertEqual(
self.domain_requests[i].requested_domain.name if self.domain_requests[i].requested_domain else None,
requested_domains[i],
)
self.assertEqual(self.domain_requests[i].submission_date, submission_dates[i])
self.assertEqual(self.domain_requests[i].get_status_display(), statuses[i])
self.assertEqual(parse_datetime(self.domain_requests[i].created_at.isoformat()), parse_datetime(created_ats[i]))
self.assertEqual(
parse_datetime(self.domain_requests[i].created_at.isoformat()), parse_datetime(created_ats[i])
)
self.assertEqual(self.domain_requests[i].id, ids[i])
# Check is_deletable
is_deletable_expected = self.domain_requests[i].status in [
DomainRequest.DomainRequestStatus.STARTED,
DomainRequest.DomainRequestStatus.WITHDRAWN
DomainRequest.DomainRequestStatus.WITHDRAWN,
]
self.assertEqual(is_deletable_expected, is_deletables[i])
def test_pagination(self):
"""Test that pagination works properly. There are 11 total non-approved requests and
a page size of 10"""

View file

@ -2,7 +2,6 @@ from django.http import JsonResponse
from django.core.paginator import Paginator
from registrar.models import DomainRequest
from django.utils.dateformat import format
from django.utils.dateparse import parse_datetime
def get_domain_requests_json(request):
@ -30,24 +29,20 @@ def get_domain_requests_json(request):
"requested_domain": domain_request.requested_domain.name if domain_request.requested_domain else None,
"submission_date": domain_request.submission_date,
"status": domain_request.get_status_display(),
"created_at": format(domain_request.created_at, 'c'), # Serialize to ISO 8601
"created_at": format(domain_request.created_at, "c"), # Serialize to ISO 8601
"id": domain_request.id,
"is_deletable": domain_request.status
in [DomainRequest.DomainRequestStatus.STARTED, DomainRequest.DomainRequestStatus.WITHDRAWN],
"action_url": (
f"/domain-request/{domain_request.id}/edit"
if domain_request.status in [
DomainRequest.DomainRequestStatus.STARTED,
DomainRequest.DomainRequestStatus.WITHDRAWN
]
f"/domain-request/{domain_request.id}/edit"
if domain_request.status
in [DomainRequest.DomainRequestStatus.STARTED, DomainRequest.DomainRequestStatus.WITHDRAWN]
else f"/domain-request/{domain_request.id}"
),
"action_label": (
"Edit"
if domain_request.status in [
DomainRequest.DomainRequestStatus.STARTED,
DomainRequest.DomainRequestStatus.WITHDRAWN
]
"Edit"
if domain_request.status
in [DomainRequest.DomainRequestStatus.STARTED, DomainRequest.DomainRequestStatus.WITHDRAWN]
else "Manage"
),
}

View file

@ -41,7 +41,7 @@ def get_domains_json(request):
"state": domain.state,
"state_display": domain.state_display(),
"get_state_help_text": domain.get_state_help_text(),
"action_url": f"/domain/{domain.id}",
"action_url": f"/domain/{domain.id}",
}
for domain in page_obj.object_list
]