Files
notifications-api/tests/app/conftest.py
2016-01-14 11:30:45 +00:00

67 lines
1.9 KiB
Python

import pytest
from app.models import (User, Service, Template, Token)
from app.dao.users_dao import (save_model_user)
from app.dao.services_dao import save_model_service
from app.dao.templates_dao import save_model_template
from app.dao.tokens_dao import save_model_token
@pytest.fixture(scope='function')
def sample_user(notify_db,
notify_db_session,
email="notify@digital.cabinet-office.gov.uk"):
user = User(**{'email_address': email})
save_model_user(user)
return user
@pytest.fixture(scope='function')
def sample_service(notify_db,
notify_db_session,
service_name="Sample service",
user=None):
if user is None:
user = sample_user(notify_db, notify_db_session)
data = {
'name': service_name,
'users': [user],
'limit': 1000,
'active': False,
'restricted': False}
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
@pytest.fixture(scope='function')
def sample_token(notify_db,
notify_db_session,
service=None):
import uuid
if service is None:
service = sample_service(notify_db, notify_db_session)
data = {'service_id': service.id}
token = Token(**data)
save_model_token(token)
return token