mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-07-06 19:23:23 +02:00
Add some logging
This commit is contained in:
parent
338df10b03
commit
0aa3b8f899
2 changed files with 28 additions and 22 deletions
|
@ -1,7 +1,7 @@
|
||||||
import io
|
import io
|
||||||
from django.test import Client, RequestFactory
|
from django.test import Client, RequestFactory, TestCase
|
||||||
from io import StringIO
|
from io import StringIO
|
||||||
from registrar.models import DomainRequest, Domain, DomainInformation, UserDomainRole, User
|
from registrar.models import DomainRequest, Domain, DomainInformation, UserDomainRole, User, PublicContact, DomainInvitation, FederalAgency
|
||||||
from registrar.utility.csv_export import (
|
from registrar.utility.csv_export import (
|
||||||
DomainDataFull,
|
DomainDataFull,
|
||||||
DomainDataType,
|
DomainDataType,
|
||||||
|
@ -200,22 +200,28 @@ class CsvReportsTest(MockDb):
|
||||||
|
|
||||||
# There seems to be a data interference issue with MockDb that affects only
|
# There seems to be a data interference issue with MockDb that affects only
|
||||||
# the entire test suite. For this test, we forgo that for now.
|
# the entire test suite. For this test, we forgo that for now.
|
||||||
class ExportDataTestUserFacing(MockEppLib):
|
class ExportDataTestUserFacing(TestCase):
|
||||||
"""Tests our data exports for users"""
|
"""Tests our data exports for users"""
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
|
||||||
self.factory = RequestFactory()
|
self.factory = RequestFactory()
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
super().tearDown()
|
PublicContact.objects.all().delete()
|
||||||
|
Domain.objects.all().delete()
|
||||||
|
DomainInformation.objects.all().delete()
|
||||||
|
DomainRequest.objects.all().delete()
|
||||||
|
User.objects.all().delete()
|
||||||
|
UserDomainRole.objects.all().delete()
|
||||||
|
DomainInvitation.objects.all().delete()
|
||||||
|
FederalAgency.objects.all().delete()
|
||||||
|
|
||||||
@less_console_noise_decorator
|
#@less_console_noise_decorator
|
||||||
def test_domain_data_type_user(self):
|
def test_domain_data_type_user(self):
|
||||||
"""Shows security contacts, domain managers, so for the current user"""
|
"""Shows security contacts, domain managers, so for the current user"""
|
||||||
|
|
||||||
p = "userpass"
|
p = "userpass"
|
||||||
unrelated_user = User.objects.create_user(
|
unrelated_user = User.objects.create(
|
||||||
username="unrelatedUser",
|
username="unrelatedUser",
|
||||||
email="unrelatedUser@example.com",
|
email="unrelatedUser@example.com",
|
||||||
first_name="firstName",
|
first_name="firstName",
|
||||||
|
@ -224,30 +230,26 @@ class ExportDataTestUserFacing(MockEppLib):
|
||||||
)
|
)
|
||||||
|
|
||||||
# We add these here due to a data interference issue with MockDB
|
# We add these here due to a data interference issue with MockDB
|
||||||
new_domain_1, _ = Domain.objects.get_or_create(name="interfere.gov", state=Domain.State.READY)
|
new_domain_1 = Domain.objects.create(name="interfere.gov", state=Domain.State.READY)
|
||||||
new_domain_2, _ = Domain.objects.get_or_create(name="somedomain123.gov", state=Domain.State.DNS_NEEDED)
|
new_domain_2 = Domain.objects.create(name="somedomain1234.gov", state=Domain.State.DNS_NEEDED)
|
||||||
new_domain_3, _ = Domain.objects.get_or_create(name="noaccess.gov", state=Domain.State.ON_HOLD)
|
new_domain_3 = Domain.objects.create(name="noaccess.gov", state=Domain.State.ON_HOLD)
|
||||||
|
|
||||||
DomainInformation.objects.get_or_create(
|
DomainInformation.objects.create(
|
||||||
creator=unrelated_user,
|
creator=unrelated_user,
|
||||||
domain=new_domain_1,
|
domain=new_domain_1,
|
||||||
generic_org_type="federal",
|
generic_org_type="federal",
|
||||||
federal_type="executive",
|
federal_type="executive",
|
||||||
is_election_board=False,
|
is_election_board=False,
|
||||||
)
|
)
|
||||||
DomainInformation.objects.get_or_create(
|
DomainInformation.objects.create(
|
||||||
creator=unrelated_user, domain=new_domain_2, generic_org_type="interstate", is_election_board=True
|
creator=unrelated_user, domain=new_domain_2, generic_org_type="interstate", is_election_board=True
|
||||||
)
|
)
|
||||||
DomainInformation.objects.get_or_create(
|
DomainInformation.objects.create(
|
||||||
creator=unrelated_user,
|
creator=unrelated_user,
|
||||||
domain=new_domain_3,
|
domain=new_domain_3,
|
||||||
generic_org_type="federal",
|
generic_org_type="federal",
|
||||||
is_election_board=False,
|
is_election_board=False,
|
||||||
)
|
)
|
||||||
# Invoke setter
|
|
||||||
new_domain_1.security_contact
|
|
||||||
new_domain_2.security_contact
|
|
||||||
new_domain_3.security_contact
|
|
||||||
|
|
||||||
# Create a user and associate it with some domains
|
# Create a user and associate it with some domains
|
||||||
user = create_user()
|
user = create_user()
|
||||||
|
@ -258,6 +260,7 @@ class ExportDataTestUserFacing(MockEppLib):
|
||||||
request = self.factory.get("/")
|
request = self.factory.get("/")
|
||||||
request.user = user
|
request.user = user
|
||||||
|
|
||||||
|
print(f"what is the request? {request}")
|
||||||
# Create a CSV file in memory
|
# Create a CSV file in memory
|
||||||
csv_file = StringIO()
|
csv_file = StringIO()
|
||||||
# Call the export functions
|
# Call the export functions
|
||||||
|
@ -271,10 +274,10 @@ class ExportDataTestUserFacing(MockEppLib):
|
||||||
expected_content = (
|
expected_content = (
|
||||||
"Domain name,Status,First ready on,Expiration date,Domain type,Agency,Organization name,City,"
|
"Domain name,Status,First ready on,Expiration date,Domain type,Agency,Organization name,City,"
|
||||||
"State,SO,SO email,Security contact email,Domain managers,Invited domain managers\n"
|
"State,SO,SO email,Security contact email,Domain managers,Invited domain managers\n"
|
||||||
"interfere.gov,Ready,(blank),2023-05-25,Federal - Executive,,,"
|
"interfere.gov,Ready,(blank),(blank),Federal - Executive,,,"
|
||||||
", ,,security@mail.gov,staff@example.com,\n"
|
", ,,(blank),staff@example.com,\n"
|
||||||
"somedomain123.gov,Dns needed,(blank),2023-05-25,Interstate,,,,, ,,"
|
"somedomain123.gov,Dns needed,(blank),(blank),Interstate,,,,, ,,"
|
||||||
"security@mail.gov,staff@example.com,\n"
|
"(blank),staff@example.com,\n"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Normalize line endings and remove commas,
|
# Normalize line endings and remove commas,
|
||||||
|
|
|
@ -565,10 +565,13 @@ class DomainDataTypeUser(DomainDataType):
|
||||||
Get a Q object of filter conditions to filter when building queryset.
|
Get a Q object of filter conditions to filter when building queryset.
|
||||||
"""
|
"""
|
||||||
if request is None or not hasattr(request, "user") or not request.user:
|
if request is None or not hasattr(request, "user") or not request.user:
|
||||||
return Q()
|
# Return nothing
|
||||||
|
logger.info(f"returning nothing: {request}")
|
||||||
|
return Q(id__in=[])
|
||||||
|
|
||||||
user_domain_roles = UserDomainRole.objects.filter(user=request.user)
|
user_domain_roles = UserDomainRole.objects.filter(user=request.user)
|
||||||
domain_ids = user_domain_roles.values_list("domain_id", flat=True)
|
domain_ids = user_domain_roles.values_list("domain_id", flat=True)
|
||||||
|
logger.info(f"roles: {user_domain_roles} ids: {domain_ids}")
|
||||||
return Q(id__in=domain_ids)
|
return Q(id__in=domain_ids)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue