Even more cleanup.

Signed-off-by: Cliff Hill <Clifford.hill@gsa.gov>
This commit is contained in:
Cliff Hill
2024-02-21 14:14:45 -05:00
parent e9f9a3c6f1
commit 7083db9351
15 changed files with 93 additions and 34 deletions

View File

@@ -21,7 +21,7 @@ from app.dao.fact_billing_dao import (
query_organization_sms_usage_for_year,
)
from app.dao.organization_dao import dao_add_service_to_organization
from app.enums import NotificationStatus, NotificationType, TemplateType
from app.enums import KeyType, NotificationStatus, NotificationType, TemplateType
from app.models import FactBilling
from tests.app.db import (
create_annual_billing,
@@ -94,7 +94,7 @@ def test_fetch_billing_data_for_today_includes_data_with_the_right_key_type(
):
service = create_service()
template = create_template(service=service, template_type=TemplateType.EMAIL)
for key_type in ["normal", "test", "team"]:
for key_type in [KeyType.NORMAL, KeyType.TEST, KeyType.TEAM]:
create_notification(
template=template,
status=NotificationStatus.DELIVERED,

View File

@@ -38,8 +38,8 @@ def test_create_invited_user(notify_db_session, sample_service):
assert invited_user.from_user == invite_from
permissions = invited_user.get_permissions()
assert len(permissions) == 2
assert "send_messages" in permissions
assert "manage_service" in permissions
assert PermissionType.SEND_EMAILS in permissions
assert PermissionType.MANAGE_SETTINGS in permissions
assert invited_user.folder_permissions == []

View File

@@ -216,13 +216,13 @@ def test_get_jobs_for_service_in_processed_at_then_created_at_order(
def test_update_job(sample_job):
assert sample_job.job_status == JobStatus.PENDING
sample_job.job_status = "in progress"
sample_job.job_status = JobStatus.IN_PROGRESS
dao_update_job(sample_job)
job_from_db = Job.query.get(sample_job.id)
assert job_from_db.job_status == "in progress"
assert job_from_db.job_status == JobStatus.IN_PROGRESS
def test_set_scheduled_jobs_to_pending_gets_all_jobs_in_scheduled_state_before_now(
@@ -231,10 +231,14 @@ def test_set_scheduled_jobs_to_pending_gets_all_jobs_in_scheduled_state_before_n
one_minute_ago = datetime.utcnow() - timedelta(minutes=1)
one_hour_ago = datetime.utcnow() - timedelta(minutes=60)
job_new = create_job(
sample_template, scheduled_for=one_minute_ago, job_status="scheduled"
sample_template,
scheduled_for=one_minute_ago,
job_status=JobStatus.SCHEDULED,
)
job_old = create_job(
sample_template, scheduled_for=one_hour_ago, job_status="scheduled"
sample_template,
scheduled_for=one_hour_ago,
job_status=JobStatus.SCHEDULED,
)
jobs = dao_set_scheduled_jobs_to_pending()
assert len(jobs) == 2
@@ -247,7 +251,9 @@ def test_set_scheduled_jobs_to_pending_gets_ignores_jobs_not_scheduled(
):
one_minute_ago = datetime.utcnow() - timedelta(minutes=1)
job_scheduled = create_job(
sample_template, scheduled_for=one_minute_ago, job_status="scheduled"
sample_template,
scheduled_for=one_minute_ago,
job_status=JobStatus.SCHEDULED,
)
jobs = dao_set_scheduled_jobs_to_pending()
assert len(jobs) == 1
@@ -264,8 +270,16 @@ def test_set_scheduled_jobs_to_pending_gets_ignores_jobs_scheduled_in_the_future
def test_set_scheduled_jobs_to_pending_updates_rows(sample_template):
one_minute_ago = datetime.utcnow() - timedelta(minutes=1)
one_hour_ago = datetime.utcnow() - timedelta(minutes=60)
create_job(sample_template, scheduled_for=one_minute_ago, job_status="scheduled")
create_job(sample_template, scheduled_for=one_hour_ago, job_status="scheduled")
create_job(
sample_template,
scheduled_for=one_minute_ago,
job_status=JobStatus.SCHEDULED,
)
create_job(
sample_template,
scheduled_for=one_hour_ago,
job_status=JobStatus.SCHEDULED,
)
jobs = dao_set_scheduled_jobs_to_pending()
assert len(jobs) == 2
assert jobs[0].job_status == JobStatus.PENDING
@@ -444,7 +458,15 @@ def test_find_jobs_with_missing_rows_returns_nothing_for_a_job_completed_more_th
assert len(results) == 0
@pytest.mark.parametrize("status", [JobStatus.PENDING, JobStatus.IN_PROGRESS, JobStatus.CANCELLED, JobStatus.SCHEDULED,],)
@pytest.mark.parametrize(
"status",
[
JobStatus.PENDING,
JobStatus.IN_PROGRESS,
JobStatus.CANCELLED,
JobStatus.SCHEDULED,
],
)
def test_find_jobs_with_missing_rows_doesnt_return_jobs_that_are_not_finished(
sample_email_template, status
):

View File

@@ -46,6 +46,7 @@ from app.enums import (
NotificationStatus,
NotificationType,
OrganizationType,
PermissionType,
ServicePermissionType,
TemplateType,
)
@@ -916,7 +917,7 @@ def test_add_existing_user_to_another_service_doesnot_change_old_permissions(
# adding the other_user to service_one should leave all other_user permissions on service_two intact
permissions = []
for p in ["send_emails", "send_texts"]:
for p in [PermissionType.SEND_EMAILS, PermissionType.SEND_TEXTS]:
permissions.append(Permission(permission=p))
dao_add_user_to_service(service_one, other_user, permissions=permissions)

View File

@@ -209,7 +209,12 @@ def test_dao_archive_user(sample_user, sample_organization, fake_uuid):
service_1_user = create_user(email="1@test.com")
service_1.users = [sample_user, service_1_user]
create_permissions(sample_user, service_1, PermissionType.MANAGE_SETTINGS)
create_permissions(service_1_user, service_1, PermissionType.MANAGE_SETTINGS, PermissionType.VIEW_ACTIVITY,)
create_permissions(
service_1_user,
service_1,
PermissionType.MANAGE_SETTINGS,
PermissionType.VIEW_ACTIVITY,
)
service_2 = create_service(service_name="Service 2")
service_2_user = create_user(email="2@test.com")
@@ -266,9 +271,18 @@ def test_user_can_be_archived_if_the_other_service_members_have_the_manage_setti
sample_service.users = [user_1, user_2, user_3]
create_permissions(user_1, sample_service, PermissionType.MANAGE_SETTINGS)
create_permissions(user_2, sample_service, PermissionType.MANAGE_SETTINGS, PermissionType.VIEW_ACTIVITY,)
create_permissions(
user_3, sample_service, PermissionType.MANAGE_SETTINGS, PermissionType.SEND_EMAILS, PermissionType.SEND_TEXTS,
user_2,
sample_service,
PermissionType.MANAGE_SETTINGS,
PermissionType.VIEW_ACTIVITY,
)
create_permissions(
user_3,
sample_service,
PermissionType.MANAGE_SETTINGS,
PermissionType.SEND_EMAILS,
PermissionType.SEND_TEXTS,
)
assert len(sample_service.users) == 3
@@ -306,7 +320,12 @@ def test_user_cannot_be_archived_if_the_other_service_members_do_not_have_the_ma
create_permissions(active_user, sample_service, PermissionType.MANAGE_SETTINGS)
create_permissions(pending_user, sample_service, PermissionType.VIEW_ACTIVITY)
create_permissions(inactive_user, sample_service, PermissionType.SEND_EMAILS, PermissionType.SEND_TEXTS,)
create_permissions(
inactive_user,
sample_service,
PermissionType.SEND_EMAILS,
PermissionType.SEND_TEXTS,
)
assert len(sample_service.users) == 3
assert not user_can_be_archived(active_user)