mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-10 18:22:37 -04:00
Merge pull request #851 from GSA/notify-786
Remove notify from senders message flow
This commit is contained in:
@@ -210,6 +210,8 @@ def set_sender(service_id, template_id):
|
||||
|
||||
sender_details = get_sender_details(service_id, template["template_type"])
|
||||
|
||||
sender_details = remove_notify_from_sender_options(sender_details)
|
||||
|
||||
if len(sender_details) == 1:
|
||||
session["sender_id"] = sender_details[0]["id"]
|
||||
|
||||
@@ -262,6 +264,25 @@ def set_sender(service_id, template_id):
|
||||
)
|
||||
|
||||
|
||||
def remove_notify_from_sender_options(sender_details):
|
||||
# Remove US Notify/Notify.gov from users list of sender
|
||||
# options during message send flow
|
||||
sender_details = [
|
||||
sender for sender in sender_details if verify_sender_options(sender)
|
||||
]
|
||||
|
||||
return sender_details
|
||||
|
||||
|
||||
def verify_sender_options(sender):
|
||||
if sender.get("sms_sender") in ["Notify.gov", "US Notify"] and sender["is_default"]:
|
||||
return True
|
||||
if sender.get("sms_sender") not in ["Notify.gov", "US Notify"]:
|
||||
return True
|
||||
|
||||
return False
|
||||
|
||||
|
||||
def get_sender_context(sender_details, template_type):
|
||||
context = {
|
||||
"email": {
|
||||
|
||||
@@ -1870,7 +1870,8 @@ def test_api_ids_dont_show_on_option_pages_with_a_single_sender(
|
||||
[
|
||||
"Example (default and receives replies) Change Example ID: 1234",
|
||||
"Example 2 Change Example 2 ID: 5678",
|
||||
"Example 3 Change Example 3 ID: 9457",
|
||||
"US Notify Change US Notify ID: 9457",
|
||||
"Notify.gov Change Notify.gov ID: 9897",
|
||||
],
|
||||
),
|
||||
],
|
||||
|
||||
@@ -282,6 +282,35 @@ def test_set_sender_redirects_if_one_sms_sender(
|
||||
assert session["sender_id"] == "1234"
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("sender_data"),
|
||||
[
|
||||
(create_multiple_sms_senders(isdefault1=True)),
|
||||
],
|
||||
)
|
||||
def test_usnotify_and_notifygov_sms_sender_removal_not_default(sender_data, mocker):
|
||||
from app.main.views.send import remove_notify_from_sender_options
|
||||
|
||||
sender_details = remove_notify_from_sender_options(sender_data)
|
||||
|
||||
assert len(sender_details) == 2
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("sender_data"),
|
||||
[
|
||||
(create_multiple_sms_senders(isdefault1=False, isdefault3=True)),
|
||||
(create_multiple_sms_senders(isdefault1=False, isdefault4=True)),
|
||||
],
|
||||
)
|
||||
def test_usnotify_and_notifygov_sms_sender_removal_if_default(sender_data, mocker):
|
||||
from app.main.views.send import remove_notify_from_sender_options
|
||||
|
||||
sender_details = remove_notify_from_sender_options(sender_data)
|
||||
|
||||
assert len(sender_details) == 3
|
||||
|
||||
|
||||
def test_that_test_files_exist():
|
||||
assert len(test_spreadsheet_files) == 8
|
||||
assert len(test_non_spreadsheet_files) == 6
|
||||
|
||||
+20
-5
@@ -3452,13 +3452,19 @@ def create_sms_sender(
|
||||
}
|
||||
|
||||
|
||||
def create_multiple_sms_senders(service_id="abcd"):
|
||||
def create_multiple_sms_senders(
|
||||
service_id="abcd",
|
||||
isdefault1=True,
|
||||
isdefault2=False,
|
||||
isdefault3=False,
|
||||
isdefault4=False,
|
||||
):
|
||||
return [
|
||||
{
|
||||
"id": "1234",
|
||||
"service_id": service_id,
|
||||
"sms_sender": "Example",
|
||||
"is_default": True,
|
||||
"is_default": isdefault1,
|
||||
"created_at": datetime.utcnow(),
|
||||
"inbound_number_id": "1234",
|
||||
"updated_at": None,
|
||||
@@ -3467,7 +3473,7 @@ def create_multiple_sms_senders(service_id="abcd"):
|
||||
"id": "5678",
|
||||
"service_id": service_id,
|
||||
"sms_sender": "Example 2",
|
||||
"is_default": False,
|
||||
"is_default": isdefault2,
|
||||
"created_at": datetime.utcnow(),
|
||||
"inbound_number_id": None,
|
||||
"updated_at": None,
|
||||
@@ -3475,8 +3481,17 @@ def create_multiple_sms_senders(service_id="abcd"):
|
||||
{
|
||||
"id": "9457",
|
||||
"service_id": service_id,
|
||||
"sms_sender": "Example 3",
|
||||
"is_default": False,
|
||||
"sms_sender": "US Notify",
|
||||
"is_default": isdefault3,
|
||||
"created_at": datetime.utcnow(),
|
||||
"inbound_number_id": None,
|
||||
"updated_at": None,
|
||||
},
|
||||
{
|
||||
"id": "9897",
|
||||
"service_id": service_id,
|
||||
"sms_sender": "Notify.gov",
|
||||
"is_default": isdefault4,
|
||||
"created_at": datetime.utcnow(),
|
||||
"inbound_number_id": None,
|
||||
"updated_at": None,
|
||||
|
||||
Reference in New Issue
Block a user