"""Tests for mysql module.""" import mysql import pytest from sqlalchemy import exc import test_utils @test_utils.test_schema def test_session_rollback(mocker): """Check session context manager rollbacks transaction in exception.""" mock = mocker.patch.object(mysql, '_ar_db_session') with pytest.raises(exc.SQLAlchemyError): with mysql.ar_db_session(): raise exc.SQLAlchemyError() session = mock.return_value assert session.rollback.called assert session.close.called def test_wrap_db_errors(): """Test wrap_db_errors with no errors.""" @mysql.wrap_db_errors def no_exception(): return True response = no_exception() assert response