mirror of
https://github.com/GSA/notifications-api.git
synced 2026-01-29 22:11:52 -05:00
Template rest api skeleton added.
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
import pytest
|
||||
from app.models import (User, Service)
|
||||
from app.models import (User, Service, Template)
|
||||
from app.dao.users_dao import (save_model_user, get_model_users)
|
||||
from app.dao.services_dao import save_model_service
|
||||
from app.dao.templates_dao import save_model_template
|
||||
|
||||
|
||||
@pytest.fixture(scope='function')
|
||||
@@ -29,3 +30,23 @@ def sample_service(notify_db,
|
||||
service = Service(**data)
|
||||
save_model_service(service)
|
||||
return service
|
||||
|
||||
|
||||
@pytest.fixture(scope='function')
|
||||
def sample_template(notify_db,
|
||||
notify_db_session,
|
||||
template_name="Template Name",
|
||||
template_type="sms",
|
||||
content="This is a template",
|
||||
service=None):
|
||||
if service is None:
|
||||
service = sample_service(notify_db, notify_db_session)
|
||||
data = {
|
||||
'name': template_name,
|
||||
'template_type': template_type,
|
||||
'content': content,
|
||||
'service': service
|
||||
}
|
||||
template = Template(**data)
|
||||
save_model_template(template)
|
||||
return template
|
||||
|
||||
0
tests/app/template/__init__.py
Normal file
0
tests/app/template/__init__.py
Normal file
31
tests/app/template/test_rest.py
Normal file
31
tests/app/template/test_rest.py
Normal file
@@ -0,0 +1,31 @@
|
||||
import json
|
||||
from app.models import Template
|
||||
from flask import url_for
|
||||
|
||||
|
||||
def test_get_template_list(notify_api, notify_db, notify_db_session, sample_template):
|
||||
"""
|
||||
Tests GET endpoint '/' to retrieve entire template list.
|
||||
"""
|
||||
with notify_api.test_request_context():
|
||||
with notify_api.test_client() as client:
|
||||
response = client.get(url_for('template.get_template'))
|
||||
assert response.status_code == 200
|
||||
json_resp = json.loads(response.get_data(as_text=True))
|
||||
assert len(json_resp['data']) == 1
|
||||
assert json_resp['data'][0]['name'] == sample_template.name
|
||||
assert json_resp['data'][0]['id'] == sample_template.id
|
||||
|
||||
|
||||
def test_get_template(notify_api, notify_db, notify_db_session, sample_template):
|
||||
"""
|
||||
Tests GET endpoint '/<template_id>' to retrieve a single template.
|
||||
"""
|
||||
with notify_api.test_request_context():
|
||||
with notify_api.test_client() as client:
|
||||
resp = client.get(url_for(
|
||||
'template.get_template', template_id=sample_template.id))
|
||||
assert resp.status_code == 200
|
||||
json_resp = json.loads(resp.get_data(as_text=True))
|
||||
assert json_resp['data']['name'] == sample_template.name
|
||||
assert json_resp['data']['id'] == sample_template.id
|
||||
Reference in New Issue
Block a user