mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-05-28 16:29:54 +02:00
Fix up unit test
This commit is contained in:
parent
23988ad6b3
commit
c2dd91215a
3 changed files with 52 additions and 12 deletions
|
@ -119,11 +119,21 @@ class Contact(TimeStampedModel):
|
|||
self.user.last_name = self.last_name
|
||||
updated = True
|
||||
|
||||
# Update middle_name if necessary
|
||||
if not self.user.middle_name:
|
||||
self.user.middle_name = self.middle_name
|
||||
updated = True
|
||||
|
||||
# Update phone if necessary
|
||||
if not self.user.phone:
|
||||
self.user.phone = self.phone
|
||||
updated = True
|
||||
|
||||
# Update title if necessary
|
||||
if not self.user.title:
|
||||
self.user.title = self.title
|
||||
updated = True
|
||||
|
||||
# Save user if any updates were made
|
||||
if updated:
|
||||
self.user.save()
|
||||
|
|
|
@ -24,9 +24,11 @@ def handle_profile(sender, instance, **kwargs):
|
|||
"""
|
||||
|
||||
first_name = getattr(instance, "first_name", "")
|
||||
middle_name = getattr(instance, "middle_name", "")
|
||||
last_name = getattr(instance, "last_name", "")
|
||||
email = getattr(instance, "email", "")
|
||||
phone = getattr(instance, "phone", "")
|
||||
title = getattr(instance, "title", "")
|
||||
|
||||
is_new_user = kwargs.get("created", False)
|
||||
|
||||
|
@ -39,9 +41,11 @@ def handle_profile(sender, instance, **kwargs):
|
|||
Contact.objects.create(
|
||||
user=instance,
|
||||
first_name=first_name,
|
||||
middle_name=middle_name,
|
||||
last_name=last_name,
|
||||
email=email,
|
||||
phone=phone,
|
||||
title=title,
|
||||
)
|
||||
|
||||
if len(contacts) >= 1 and is_new_user: # a matching contact
|
||||
|
|
|
@ -23,15 +23,32 @@ class TestDataUpdates(TestCase):
|
|||
self.bs_user = User.objects.create()
|
||||
|
||||
self.contact1 = Contact.objects.create(
|
||||
user=self.user1, email="email1@igorville.gov", first_name="first1", last_name="last1"
|
||||
user=self.user1,
|
||||
email="email1@igorville.gov",
|
||||
first_name="first1",
|
||||
last_name="last1",
|
||||
middle_name="middle1",
|
||||
title="title1",
|
||||
)
|
||||
self.contact2 = Contact.objects.create(
|
||||
user=self.user2, email="email2@igorville.gov", first_name="first2", last_name="last2"
|
||||
user=self.user2,
|
||||
email="email2@igorville.gov",
|
||||
first_name="first2",
|
||||
last_name="last2",
|
||||
middle_name="middle2",
|
||||
title="title2",
|
||||
)
|
||||
self.contact3 = Contact.objects.create(
|
||||
user=self.user3, email="email3@igorville.gov", first_name="first3", last_name="last3"
|
||||
user=self.user3,
|
||||
email="email3@igorville.gov",
|
||||
first_name="first3",
|
||||
last_name="last3",
|
||||
middle_name="middle3",
|
||||
title="title3",
|
||||
)
|
||||
self.contact4 = Contact.objects.create(
|
||||
email="email4@igorville.gov", first_name="first4", last_name="last4", middle_name="middle4", title="title4"
|
||||
)
|
||||
self.contact4 = Contact.objects.create(email="email4@igorville.gov", first_name="first4", last_name="last4")
|
||||
|
||||
self.command = Command()
|
||||
|
||||
|
@ -42,14 +59,15 @@ class TestDataUpdates(TestCase):
|
|||
Contact.objects.all().delete()
|
||||
|
||||
def test_script_updates_linked_users(self):
|
||||
"""Test the script that copies contacts' first and last names into associated users that
|
||||
are eligible (first or last are blank or undefined)"""
|
||||
"""Test the script that copies contact information to the user object"""
|
||||
|
||||
# Set up the users' first and last names here so
|
||||
# they that they don't get overwritten by Contact's save()
|
||||
# User with no first or last names
|
||||
self.user1.first_name = ""
|
||||
self.user1.last_name = ""
|
||||
self.user1.title = "dummytitle"
|
||||
self.user1.middle_name = "dummymiddle"
|
||||
self.user1.save()
|
||||
|
||||
# User with a first name but no last name
|
||||
|
@ -87,12 +105,20 @@ class TestDataUpdates(TestCase):
|
|||
# The user that has no first and last names will get them from the contact
|
||||
self.assertEqual(self.user1.first_name, "first1")
|
||||
self.assertEqual(self.user1.last_name, "last1")
|
||||
# The user that has a first but no last will be left alone
|
||||
self.assertEqual(self.user2.first_name, "First name but no last name")
|
||||
self.assertEqual(self.user2.last_name, "")
|
||||
# The user that has a first and a last will be left alone
|
||||
self.assertEqual(self.user3.first_name, "An existing first name")
|
||||
self.assertEqual(self.user3.last_name, "An existing last name")
|
||||
self.assertEqual(self.user1.middle_name, "middle1")
|
||||
self.assertEqual(self.user1.title, "title1")
|
||||
# The user that has a first but no last will be updated
|
||||
self.assertEqual(self.user2.first_name, "first2")
|
||||
self.assertEqual(self.user2.last_name, "last2")
|
||||
self.assertEqual(self.user2.middle_name, "middle2")
|
||||
self.assertEqual(self.user2.title, "title2")
|
||||
# The user that has a first and a last will be updated
|
||||
self.assertEqual(self.user3.first_name, "first3")
|
||||
self.assertEqual(self.user3.last_name, "last3")
|
||||
self.assertEqual(self.user3.middle_name, "middle3")
|
||||
self.assertEqual(self.user3.title, "title3")
|
||||
# The unlinked user will be left alone
|
||||
self.assertEqual(self.user4.first_name, "")
|
||||
self.assertEqual(self.user4.last_name, "")
|
||||
self.assertEqual(self.user4.middle_name, None)
|
||||
self.assertEqual(self.user4.title, None)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue