Maintenance will be performed on git.ligo.org, chat.ligo.org, containers.ligo.org, and docs.ligo.org on Tuesday 26 May 2020 starting at approximately 10am CDT. It is expected to take around 30 minutes and will involve a short period of downtime, around 5 minutes, towards the end of the maintenance period. Please address any questions, comments, or concerns to uwm-help@cgca.uwm.edu.

Commit ac36ea55 authored by Tanner Prestegard's avatar Tanner Prestegard Committed by GraceDB

Add unit tests for alerts

parent cb51596d
import mock
from django.conf import settings
from django.contrib.auth.models import Group as AuthGroup
from django.urls import reverse
from core.tests.utils import GraceDbTestBase
from alerts.models import Contact, Notification
class TestUpdateContactView(GraceDbTestBase):
@classmethod
def setUpTestData(cls):
super(TestUpdateContactView, cls).setUpTestData()
# Create email and phone contacts
cls.email_contact = Contact.objects.create(user=cls.internal_user,
description='test email', email='test@test.com')
cls.phone_contact = Contact.objects.create(user=cls.internal_user,
description='test phone', phone='12345678901',
phone_method=Contact.CONTACT_PHONE_BOTH)
def test_edit_email(self):
"""Users should not be able to update contact email"""
# (because it sidesteps the verification process)
data = {
'key_field': 'email',
'description': 'new description',
'email': 'new@new.com',
}
original_email = self.email_contact.email
url = reverse('alerts:edit-contact', args=[self.email_contact.pk])
response = self.request_as_user(url, "POST", self.internal_user,
data=data)
# Refresh from database
self.email_contact.refresh_from_db()
# Check values - description should be updated, but email should not be
self.assertEqual(self.email_contact.description, data['description'])
self.assertNotEqual(self.email_contact.email, data['email'])
self.assertEqual(self.email_contact.email, original_email)
def test_edit_phone(self):
"""Users should not be able to update contact phone"""
# (because it sidesteps the verification process)
data = {
'key_field': 'phone',
'description': 'new description',
'phone': '23456789012',
}
original_phone = self.phone_contact.phone
url = reverse('alerts:edit-contact', args=[self.phone_contact.pk])
response = self.request_as_user(url, "POST", self.internal_user,
data=data)
# Refresh from database
self.phone_contact.refresh_from_db()
# Check values - description should be updated, but phone should not be
self.assertEqual(self.phone_contact.description, data['description'])
self.assertNotEqual(self.phone_contact.phone, data['phone'])
self.assertEqual(self.phone_contact.phone, original_phone)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment