Add raise unit test for session in sqlalchemy

Change-Id: I1fc045010732f178abb4c5ea75e02b96e7a83b3d
This commit is contained in:
gengchc2 2018-12-20 22:02:44 -08:00
parent 2dc322497e
commit ac48abe735
2 changed files with 37 additions and 0 deletions

View File

@ -18,8 +18,11 @@
"""Tests for manipulating job via the DB API"""
import copy
import mock
from mock import patch
from oslo_config import cfg
from freezer_api.common import exceptions as freezer_api_exc
from freezer_api.tests.unit import common
from freezer_api.tests.unit.sqlalchemy import base
@ -31,6 +34,7 @@ class DbSessionTestCase(base.DbTestCase):
def setUp(self):
super(DbSessionTestCase, self).setUp()
self.fake_session_0 = common.get_fake_session_0()
self.fake_user_id = self.fake_session_0.get('user_id')
self.fake_session_0.pop('session_id')
self.fake_session_2 = common.get_fake_session_2()
self.fake_session_2.pop('session_id')
@ -405,3 +409,16 @@ class DbSessionTestCase(base.DbTestCase):
for index in range(len(result)):
sessionmap = result[index]
self.assertEqual(100, sessionmap['hold_off'])
@patch('freezer_api.db.sqlalchemy.api.get_session')
def test_raise_add_session_exist(self, mock_get_session):
mock_get_session.return_value = mock.MagicMock()
self.assertRaises(freezer_api_exc.DocumentExists,
self.dbapi.add_session, self.fake_user_id,
self.fake_session_0)
def test_raise_update_session_noexist(self):
self.assertRaises(freezer_api_exc.DocumentNotFound,
self.dbapi.update_session, self.fake_user_id,
self.fake_session_id,
self.fake_session_0)

View File

@ -18,7 +18,10 @@
"""Tests for manipulating job via the DB API"""
import copy
import mock
from mock import patch
from freezer_api.common import exceptions as freezer_api_exc
from freezer_api.tests.unit import common
from freezer_api.tests.unit.sqlalchemy import base
@ -28,6 +31,8 @@ class DbSessionTestCase(base.DbTestCase):
def setUp(self):
super(DbSessionTestCase, self).setUp()
self.fake_session_0 = common.get_fake_session_0()
self.fake_project_id = self.fake_session_0.get('project_id')
self.fake_user_id = self.fake_session_0.get('user_id')
self.fake_session_0.pop('session_id')
self.fake_session_2 = common.get_fake_session_2()
self.fake_session_2.pop('session_id')
@ -461,3 +466,18 @@ class DbSessionTestCase(base.DbTestCase):
for index in range(len(result)):
sessionmap = result[index]
self.assertEqual(100, sessionmap['hold_off'])
@patch('freezer_api.db.sqlalchemy.api.get_session')
def test_raise_add_session_exist(self, mock_get_session):
mock_get_session.return_value = mock.MagicMock()
self.assertRaises(freezer_api_exc.DocumentExists,
self.dbapi.add_session, self.fake_user_id,
self.fake_session_0,
project_id=self.fake_project_id)
def test_raise_update_session_noexist(self):
self.assertRaises(freezer_api_exc.DocumentNotFound,
self.dbapi.update_session, self.fake_user_id,
self.fake_session_id,
self.fake_session_0,
project_id=self.fake_project_id)