parent
d4a87c0dad
commit
35dd4c942b
3 changed files with 310 additions and 3 deletions
45
tests/test_hub/utils.py
Normal file
45
tests/test_hub/utils.py
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
import unittest
|
||||
import mock
|
||||
import six
|
||||
|
||||
import kojihub
|
||||
|
||||
QP = kojihub.QueryProcessor
|
||||
|
||||
|
||||
class DBQueryTestCase(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.qp_execute_return_value = []
|
||||
self.qp_execute_side_effect = None
|
||||
self.QueryProcessor = mock.patch('kojihub.QueryProcessor',
|
||||
side_effect=self.get_query).start()
|
||||
self.queries = []
|
||||
|
||||
def tearDown(self):
|
||||
mock.patch.stopall()
|
||||
self.reset_query()
|
||||
|
||||
def reset_query(self):
|
||||
del self.queries[:]
|
||||
|
||||
def get_query(self, *args, **kwargs):
|
||||
query = QP(*args, **kwargs)
|
||||
query.execute = mock.MagicMock()
|
||||
query.execute.return_value = self.qp_execute_return_value
|
||||
query.execute.side_effect = self.qp_execute_side_effect
|
||||
self.queries.append(query)
|
||||
return query
|
||||
|
||||
def assertQueryEqual(self, query, **kwargs):
|
||||
for k, v in six.iteritems(kwargs):
|
||||
self.assertEqual(getattr(query, k, None), v)
|
||||
|
||||
def assertLastQueryEqual(self, **kwargs):
|
||||
query = self.queries[-1]
|
||||
self.assertQueryEqual(query, **kwargs)
|
||||
|
||||
def assertQueriesEqual(self, arglist):
|
||||
for i, query in enumerate(self.queries):
|
||||
self.assertQueryEqual(query, **arglist[i])
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue