Files
notifications-admin/tests/app/main/dao/test_roles_dao.py

27 lines
921 B
Python
Raw Normal View History

import pytest
import sqlalchemy
from app.models import Roles
from app.main.dao import roles_dao
def test_insert_role_should_be_able_to_get_role(notifications_admin, notifications_admin_db, notify_db_session):
role = Roles(id=1000, role='some role for test')
roles_dao.insert_role(role)
saved_role = roles_dao.get_role_by_id(role.id)
assert saved_role == role
def test_insert_role_will_throw_error_if_role_already_exists(notifications_admin,
notifications_admin_db,
notify_db_session):
role1 = roles_dao.get_role_by_id(1)
assert role1.id == 1
role = Roles(id=1, role='cannot create a duplicate')
with pytest.raises(sqlalchemy.orm.exc.FlushError) as error:
roles_dao.insert_role(role)
assert 'conflicts with persistent instance' in str(error.value)