mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-22 00:11:16 -05:00
Add flag on create_service to decide whether we should also check if service exists
This commit is contained in:
@@ -82,6 +82,7 @@ def service_factory(notify_db, notify_db_session):
|
|||||||
service_name=service_name,
|
service_name=service_name,
|
||||||
service_permissions=None,
|
service_permissions=None,
|
||||||
user=user,
|
user=user,
|
||||||
|
check_if_service_exists=True,
|
||||||
)
|
)
|
||||||
if template_type == 'email':
|
if template_type == 'email':
|
||||||
create_template(
|
create_template(
|
||||||
@@ -200,7 +201,8 @@ def sample_service(
|
|||||||
def _sample_service_full_permissions(notify_db_session):
|
def _sample_service_full_permissions(notify_db_session):
|
||||||
service = create_service(
|
service = create_service(
|
||||||
service_name="sample service full permissions",
|
service_name="sample service full permissions",
|
||||||
service_permissions=set(SERVICE_PERMISSION_TYPES)
|
service_permissions=set(SERVICE_PERMISSION_TYPES),
|
||||||
|
check_if_service_exists=True
|
||||||
)
|
)
|
||||||
create_inbound_number('12345', service_id=service.id)
|
create_inbound_number('12345', service_id=service.id)
|
||||||
return service
|
return service
|
||||||
@@ -233,7 +235,7 @@ def sample_template(
|
|||||||
if service is None:
|
if service is None:
|
||||||
service = Service.query.filter_by(name='Sample service').first()
|
service = Service.query.filter_by(name='Sample service').first()
|
||||||
if not service:
|
if not service:
|
||||||
service = create_service(service_permissions=permissions)
|
service = create_service(service_permissions=permissions, check_if_service_exists=True)
|
||||||
if created_by is None:
|
if created_by is None:
|
||||||
created_by = create_user()
|
created_by = create_user()
|
||||||
|
|
||||||
@@ -295,7 +297,7 @@ def sample_email_template(
|
|||||||
if user is None:
|
if user is None:
|
||||||
user = create_user()
|
user = create_user()
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service(user=user, service_permissions=permissions)
|
service = create_service(user=user, service_permissions=permissions, check_if_service_exists=True)
|
||||||
data = {
|
data = {
|
||||||
'name': template_name,
|
'name': template_name,
|
||||||
'template_type': template_type,
|
'template_type': template_type,
|
||||||
@@ -350,7 +352,7 @@ def sample_api_key(notify_db,
|
|||||||
key_type=KEY_TYPE_NORMAL,
|
key_type=KEY_TYPE_NORMAL,
|
||||||
name=None):
|
name=None):
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
data = {'service': service, 'name': name or uuid.uuid4(), 'created_by': service.created_by, 'key_type': key_type}
|
data = {'service': service, 'name': name or uuid.uuid4(), 'created_by': service.created_by, 'key_type': key_type}
|
||||||
api_key = ApiKey(**data)
|
api_key = ApiKey(**data)
|
||||||
save_model_api_key(api_key)
|
save_model_api_key(api_key)
|
||||||
@@ -382,7 +384,7 @@ def sample_job(
|
|||||||
archived=False
|
archived=False
|
||||||
):
|
):
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
if template is None:
|
if template is None:
|
||||||
template = create_template(service=service)
|
template = create_template(service=service)
|
||||||
data = {
|
data = {
|
||||||
@@ -441,7 +443,7 @@ def sample_email_job(notify_db,
|
|||||||
service=None,
|
service=None,
|
||||||
template=None):
|
template=None):
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
if template is None:
|
if template is None:
|
||||||
template = sample_email_template(
|
template = sample_email_template(
|
||||||
notify_db,
|
notify_db,
|
||||||
@@ -549,7 +551,7 @@ def sample_notification(
|
|||||||
if created_at is None:
|
if created_at is None:
|
||||||
created_at = datetime.utcnow()
|
created_at = datetime.utcnow()
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
if template is None:
|
if template is None:
|
||||||
template = create_template(service=service)
|
template = create_template(service=service)
|
||||||
|
|
||||||
@@ -638,7 +640,7 @@ def sample_notification_with_api_key(notify_db, notify_db_session):
|
|||||||
@pytest.fixture(scope='function')
|
@pytest.fixture(scope='function')
|
||||||
def sample_email_notification(notify_db, notify_db_session):
|
def sample_email_notification(notify_db, notify_db_session):
|
||||||
created_at = datetime.utcnow()
|
created_at = datetime.utcnow()
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
template = sample_email_template(notify_db, notify_db_session, service=service)
|
template = sample_email_template(notify_db, notify_db_session, service=service)
|
||||||
job = sample_job(notify_db, notify_db_session, service=service, template=template)
|
job = sample_job(notify_db, notify_db_session, service=service, template=template)
|
||||||
|
|
||||||
@@ -740,7 +742,7 @@ def sample_invited_user(notify_db,
|
|||||||
to_email_address=None):
|
to_email_address=None):
|
||||||
|
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
if to_email_address is None:
|
if to_email_address is None:
|
||||||
to_email_address = 'invited_user@digital.gov.uk'
|
to_email_address = 'invited_user@digital.gov.uk'
|
||||||
|
|
||||||
@@ -780,7 +782,7 @@ def sample_permission(notify_db,
|
|||||||
'permission': permission
|
'permission': permission
|
||||||
}
|
}
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
if service:
|
if service:
|
||||||
data['service'] = service
|
data['service'] = service
|
||||||
p_model = Permission.query.filter_by(
|
p_model = Permission.query.filter_by(
|
||||||
@@ -801,7 +803,7 @@ def sample_user_service_permission(
|
|||||||
if user is None:
|
if user is None:
|
||||||
user = create_user()
|
user = create_user()
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service(user=user)
|
service = create_service(user=user, check_if_service_exists=True)
|
||||||
data = {
|
data = {
|
||||||
'user': user,
|
'user': user,
|
||||||
'service': service,
|
'service': service,
|
||||||
@@ -1035,7 +1037,7 @@ def notify_service(notify_db, notify_db_session):
|
|||||||
@pytest.fixture(scope='function')
|
@pytest.fixture(scope='function')
|
||||||
def sample_service_whitelist(notify_db, notify_db_session, service=None, email_address=None, mobile_number=None):
|
def sample_service_whitelist(notify_db, notify_db_session, service=None, email_address=None, mobile_number=None):
|
||||||
if service is None:
|
if service is None:
|
||||||
service = create_service()
|
service = create_service(check_if_service_exists=True)
|
||||||
|
|
||||||
if email_address:
|
if email_address:
|
||||||
whitelisted_user = ServiceWhitelist.from_string(service.id, EMAIL_TYPE, email_address)
|
whitelisted_user = ServiceWhitelist.from_string(service.id, EMAIL_TYPE, email_address)
|
||||||
@@ -1060,7 +1062,7 @@ def sample_provider_rate(notify_db, notify_db_session, valid_from=None, rate=Non
|
|||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def sample_inbound_numbers(notify_db, notify_db_session, sample_service):
|
def sample_inbound_numbers(notify_db, notify_db_session, sample_service):
|
||||||
service = create_service(service_name='sample service 2')
|
service = create_service(service_name='sample service 2', check_if_service_exists=True)
|
||||||
inbound_numbers = list()
|
inbound_numbers = list()
|
||||||
inbound_numbers.append(create_inbound_number(number='1', provider='mmg'))
|
inbound_numbers.append(create_inbound_number(number='1', provider='mmg'))
|
||||||
inbound_numbers.append(create_inbound_number(number='2', provider='mmg', active=False, service_id=service.id))
|
inbound_numbers.append(create_inbound_number(number='2', provider='mmg', active=False, service_id=service.id))
|
||||||
|
|||||||
@@ -81,10 +81,12 @@ def create_service(
|
|||||||
prefix_sms=True,
|
prefix_sms=True,
|
||||||
message_limit=1000,
|
message_limit=1000,
|
||||||
organisation_type='central',
|
organisation_type='central',
|
||||||
postage='second'
|
postage='second',
|
||||||
|
check_if_service_exists=False
|
||||||
):
|
):
|
||||||
service = Service.query.filter_by(name=service_name).first()
|
if check_if_service_exists:
|
||||||
if not service:
|
service = Service.query.filter_by(name=service_name).first()
|
||||||
|
if (not check_if_service_exists) or (check_if_service_exists and not service):
|
||||||
service = Service(
|
service = Service(
|
||||||
name=service_name,
|
name=service_name,
|
||||||
message_limit=message_limit,
|
message_limit=message_limit,
|
||||||
|
|||||||
Reference in New Issue
Block a user