mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-01 15:46:07 -05:00
Refactor is_precompiled_letter to model
This commit is contained in:
@@ -3,7 +3,7 @@ from app.dao.stats_template_usage_by_month_dao import (
|
||||
insert_or_update_stats_for_template,
|
||||
dao_get_template_usage_stats_by_service
|
||||
)
|
||||
from app.models import StatsTemplateUsageByMonth
|
||||
from app.models import StatsTemplateUsageByMonth, LETTER_TYPE, PRECOMPILED_TEMPLATE_NAME
|
||||
|
||||
from tests.app.db import create_service, create_template
|
||||
|
||||
@@ -74,6 +74,36 @@ def test_dao_get_template_usage_stats_by_service(sample_service):
|
||||
assert len(result) == 1
|
||||
|
||||
|
||||
def test_dao_get_template_usage_stats_by_service_for_precompiled_letters(sample_service):
|
||||
|
||||
letter_template = create_template(service=sample_service, template_type=LETTER_TYPE)
|
||||
|
||||
precompiled_letter_template = create_template(
|
||||
service=sample_service, template_name=PRECOMPILED_TEMPLATE_NAME, hidden=True, template_type=LETTER_TYPE)
|
||||
|
||||
db.session.add(StatsTemplateUsageByMonth(
|
||||
template_id=letter_template.id,
|
||||
month=5,
|
||||
year=2017,
|
||||
count=10
|
||||
))
|
||||
|
||||
db.session.add(StatsTemplateUsageByMonth(
|
||||
template_id=precompiled_letter_template.id,
|
||||
month=4,
|
||||
year=2017,
|
||||
count=20
|
||||
))
|
||||
|
||||
result = dao_get_template_usage_stats_by_service(sample_service.id, 2017)
|
||||
|
||||
assert len(result) == 2
|
||||
assert [
|
||||
(letter_template.id, 'letter Template Name', 'letter', False, 5, 2017, 10),
|
||||
(precompiled_letter_template.id, PRECOMPILED_TEMPLATE_NAME, 'letter', True, 4, 2017, 20)
|
||||
] == result
|
||||
|
||||
|
||||
def test_dao_get_template_usage_stats_by_service_specific_year(sample_service):
|
||||
|
||||
email_template = create_template(service=sample_service, template_type="email")
|
||||
|
||||
@@ -13,7 +13,12 @@ from app.dao.templates_dao import (
|
||||
dao_get_templates_for_cache,
|
||||
dao_redact_template, dao_update_template_reply_to
|
||||
)
|
||||
from app.models import Template, TemplateHistory, TemplateRedacted
|
||||
from app.models import (
|
||||
Template,
|
||||
TemplateHistory,
|
||||
TemplateRedacted,
|
||||
PRECOMPILED_TEMPLATE_NAME
|
||||
)
|
||||
|
||||
from tests.app.conftest import sample_template as create_sample_template
|
||||
from tests.app.db import create_template, create_letter_contact
|
||||
@@ -489,8 +494,7 @@ def test_get_templates_by_ids_successful(notify_db, notify_db_session):
|
||||
notify_db_session,
|
||||
template_name='Sample Template 2',
|
||||
template_type="sms",
|
||||
content="Template content",
|
||||
hidden=True
|
||||
content="Template content"
|
||||
)
|
||||
create_sample_template(
|
||||
notify_db,
|
||||
@@ -505,7 +509,32 @@ def test_get_templates_by_ids_successful(notify_db, notify_db_session):
|
||||
templates = dao_get_templates_for_cache(cache)
|
||||
assert len(templates) == 2
|
||||
assert [(template_1.id, template_1.template_type, template_1.name, False, 2),
|
||||
(template_2.id, template_2.template_type, template_2.name, True, 3)] == templates
|
||||
(template_2.id, template_2.template_type, template_2.name, False, 3)] == templates
|
||||
|
||||
|
||||
def test_get_letter_templates_by_ids_successful(notify_db, notify_db_session):
|
||||
template_1 = create_sample_template(
|
||||
notify_db,
|
||||
notify_db_session,
|
||||
template_name=PRECOMPILED_TEMPLATE_NAME,
|
||||
template_type="letter",
|
||||
content="Template content",
|
||||
hidden=True
|
||||
)
|
||||
template_2 = create_sample_template(
|
||||
notify_db,
|
||||
notify_db_session,
|
||||
template_name='Sample Template 2',
|
||||
template_type="letter",
|
||||
content="Template content"
|
||||
)
|
||||
sample_cache_dict = {str.encode(str(template_1.id)): str.encode('2'),
|
||||
str.encode(str(template_2.id)): str.encode('3')}
|
||||
cache = [[k, v] for k, v in sample_cache_dict.items()]
|
||||
templates = dao_get_templates_for_cache(cache)
|
||||
assert len(templates) == 2
|
||||
assert [(template_1.id, template_1.template_type, template_1.name, True, 2),
|
||||
(template_2.id, template_2.template_type, template_2.name, False, 3)] == templates
|
||||
|
||||
|
||||
def test_get_templates_by_ids_successful_for_one_cache_item(notify_db, notify_db_session):
|
||||
|
||||
Reference in New Issue
Block a user