Files
notifications-admin/tests/app/main/dao/test_service_dao.py
2016-01-18 17:35:28 +00:00

63 lines
2.7 KiB
Python

import pytest
import sqlalchemy
from app.main.dao import services_dao
def test_can_insert_new_service(db_,
db_session,
active_user,
mock_create_service):
service_name = 'testing service'
id_ = services_dao.insert_new_service(service_name, active_user.id)
mock_create_service.assert_called_once_with(
service_name, False, 1000, True, active_user.id)
def test_unrestrict_service_updates_the_service(db_,
db_session,
mock_get_service,
mock_update_service):
service_one = mock_get_service.side_effect(123)['data']
services_dao.unrestrict_service(service_one['id'])
mock_update_service.assert_called_once_with(service_one['id'],
service_one['name'],
service_one['active'],
service_one['limit'],
False,
service_one['users'])
def test_activate_service_update_service(db_,
db_session,
active_user,
mock_get_service,
mock_update_service):
service_one = mock_get_service.side_effect(123)['data']
services_dao.activate_service(service_one['id'])
mock_update_service.assert_called_once_with(service_one['id'],
service_one['name'],
True,
service_one['limit'],
service_one['restricted'],
service_one['users'])
def test_get_service_returns_none_if_service_does_not_exist(db_, db_session, mock_get_service):
mock_get_service.side_effect = lambda x: None
service = services_dao.get_service_by_id(1)
assert service is None
def test_find_by_service_name_returns_right_service(db_, db_session, mock_get_services):
service_name = "service_one"
service = services_dao.find_service_by_service_name(service_name)
assert mock_get_services.called
assert service['name'] == service_name
def test_should_return_list_of_service_names(db_, db_session, mock_get_services):
expected = ['service_one', 'service_two']
actual = services_dao.find_all_service_names()
assert mock_get_services.called
assert actual == expected