mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-07-24 03:30:50 +02:00
Unit tests for page load, correct form info
This commit is contained in:
parent
e277c3a64c
commit
18fa93a330
1 changed files with 48 additions and 38 deletions
|
@ -13,6 +13,7 @@ import boto3_mocking # type: ignore
|
||||||
from registrar.models import (
|
from registrar.models import (
|
||||||
DomainApplication,
|
DomainApplication,
|
||||||
Domain,
|
Domain,
|
||||||
|
DomainInformation,
|
||||||
DomainInvitation,
|
DomainInvitation,
|
||||||
Contact,
|
Contact,
|
||||||
Website,
|
Website,
|
||||||
|
@ -1029,12 +1030,16 @@ class TestWithDomainPermissions(TestWithUser):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
self.domain, _ = Domain.objects.get_or_create(name="igorville.gov")
|
self.domain, _ = Domain.objects.get_or_create(name="igorville.gov")
|
||||||
|
self.domain_information, _ = DomainInformation.objects.get_or_create(
|
||||||
|
creator=self.user, domain=self.domain
|
||||||
|
)
|
||||||
self.role, _ = UserDomainRole.objects.get_or_create(
|
self.role, _ = UserDomainRole.objects.get_or_create(
|
||||||
user=self.user, domain=self.domain, role=UserDomainRole.Roles.ADMIN
|
user=self.user, domain=self.domain, role=UserDomainRole.Roles.ADMIN
|
||||||
)
|
)
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
try:
|
try:
|
||||||
|
self.domain_information.delete()
|
||||||
self.domain.delete()
|
self.domain.delete()
|
||||||
self.role.delete()
|
self.role.delete()
|
||||||
except ValueError: # pass if already deleted
|
except ValueError: # pass if already deleted
|
||||||
|
@ -1045,50 +1050,37 @@ class TestWithDomainPermissions(TestWithUser):
|
||||||
class TestDomainPermissions(TestWithDomainPermissions):
|
class TestDomainPermissions(TestWithDomainPermissions):
|
||||||
def test_not_logged_in(self):
|
def test_not_logged_in(self):
|
||||||
"""Not logged in gets a redirect to Login."""
|
"""Not logged in gets a redirect to Login."""
|
||||||
response = self.client.get(reverse("domain", kwargs={"pk": self.domain.id}))
|
for view_name in [
|
||||||
self.assertEqual(response.status_code, 302)
|
"domain",
|
||||||
|
"domain-users",
|
||||||
response = self.client.get(
|
"domain-users-add",
|
||||||
reverse("domain-users", kwargs={"pk": self.domain.id})
|
"domain-nameservers",
|
||||||
)
|
"domain-authorizing-official",
|
||||||
self.assertEqual(response.status_code, 302)
|
]:
|
||||||
|
with self.subTest(view_name=view_name):
|
||||||
response = self.client.get(
|
response = self.client.get(
|
||||||
reverse("domain-users-add", kwargs={"pk": self.domain.id})
|
reverse(view_name, kwargs={"pk": self.domain.id})
|
||||||
)
|
)
|
||||||
self.assertEqual(response.status_code, 302)
|
self.assertEqual(response.status_code, 302)
|
||||||
|
|
||||||
response = self.client.get(
|
|
||||||
reverse("domain-nameservers", kwargs={"pk": self.domain.id})
|
|
||||||
)
|
|
||||||
self.assertEqual(response.status_code, 302)
|
|
||||||
|
|
||||||
def test_no_domain_role(self):
|
def test_no_domain_role(self):
|
||||||
"""Logged in but no role gets 403 Forbidden."""
|
"""Logged in but no role gets 403 Forbidden."""
|
||||||
self.client.force_login(self.user)
|
self.client.force_login(self.user)
|
||||||
self.role.delete() # user no longer has a role on this domain
|
self.role.delete() # user no longer has a role on this domain
|
||||||
|
|
||||||
with less_console_noise():
|
for view_name in [
|
||||||
response = self.client.get(reverse("domain", kwargs={"pk": self.domain.id}))
|
"domain",
|
||||||
self.assertEqual(response.status_code, 403)
|
"domain-users",
|
||||||
|
"domain-users-add",
|
||||||
with less_console_noise():
|
"domain-nameservers",
|
||||||
response = self.client.get(
|
"domain-authorizing-official",
|
||||||
reverse("domain-users", kwargs={"pk": self.domain.id})
|
]:
|
||||||
)
|
with self.subTest(view_name=view_name):
|
||||||
self.assertEqual(response.status_code, 403)
|
with less_console_noise():
|
||||||
|
response = self.client.get(
|
||||||
with less_console_noise():
|
reverse(view_name, kwargs={"pk": self.domain.id})
|
||||||
response = self.client.get(
|
)
|
||||||
reverse("domain-users-add", kwargs={"pk": self.domain.id})
|
self.assertEqual(response.status_code, 403)
|
||||||
)
|
|
||||||
self.assertEqual(response.status_code, 403)
|
|
||||||
|
|
||||||
with less_console_noise():
|
|
||||||
response = self.client.get(
|
|
||||||
reverse("domain-nameservers", kwargs={"pk": self.domain.id})
|
|
||||||
)
|
|
||||||
self.assertEqual(response.status_code, 403)
|
|
||||||
|
|
||||||
|
|
||||||
class TestDomainDetail(TestWithDomainPermissions, WebTest):
|
class TestDomainDetail(TestWithDomainPermissions, WebTest):
|
||||||
|
@ -1282,6 +1274,24 @@ class TestDomainDetail(TestWithDomainPermissions, WebTest):
|
||||||
# the field.
|
# the field.
|
||||||
self.assertContains(result, "This field is required", count=2, status_code=200)
|
self.assertContains(result, "This field is required", count=2, status_code=200)
|
||||||
|
|
||||||
|
def test_domain_authorizing_official(self):
|
||||||
|
"""Can load domain's authorizing official page."""
|
||||||
|
page = self.client.get(
|
||||||
|
reverse("domain-authorizing-official", kwargs={"pk": self.domain.id})
|
||||||
|
)
|
||||||
|
# once on the sidebar, once in the title
|
||||||
|
self.assertContains(page, "Authorizing official", count=2)
|
||||||
|
|
||||||
|
def test_domain_authorizing_official_content(self):
|
||||||
|
"""Authorizing official information appears on the page."""
|
||||||
|
self.domain_information.authorizing_official = Contact(first_name="Testy")
|
||||||
|
self.domain_information.authorizing_official.save()
|
||||||
|
self.domain_information.save()
|
||||||
|
page = self.app.get(
|
||||||
|
reverse("domain-authorizing-official", kwargs={"pk": self.domain.id})
|
||||||
|
)
|
||||||
|
self.assertContains(page, "Testy")
|
||||||
|
|
||||||
|
|
||||||
class TestApplicationStatus(TestWithUser, WebTest):
|
class TestApplicationStatus(TestWithUser, WebTest):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue