debian-koji/tests/test_hub/test_getPackageID.py
2018-11-16 21:07:35 -05:00

47 lines
1.9 KiB
Python

from __future__ import absolute_import
import mock
from .utils import DBQueryTestCase
import koji
import kojihub
class TestGetPackageID(DBQueryTestCase):
maxDiff = None
def test_getPackageID(self):
self.qp_execute_return_value = [{'id': 1}]
rv = kojihub.RootExports().getPackageID('koji')
self.assertEqual(len(self.queries), 1)
self.assertLastQueryEqual(tables=['package'],
columns=['id'],
clauses=['name=%(name)s'],
values={'name': 'koji',
'strict': False,
'self': mock.ANY})
self.assertEqual(rv, 1)
def test_getPackageID_strict(self):
with self.assertRaises(koji.GenericError) as cm:
kojihub.RootExports().getPackageID('invalidpkg', strict=True)
self.assertLastQueryEqual(tables=['package'],
columns=['id'],
clauses=['name=%(name)s'],
values={'name': 'invalidpkg',
'strict': True,
'self': mock.ANY})
self.assertEqual(cm.exception.args[0],
'Invalid package name: invalidpkg')
def test_getPackageID_None(self):
rv = kojihub.RootExports().getPackageID('invalidpkg')
self.assertEqual(len(self.queries), 1)
self.assertLastQueryEqual(tables=['package'],
columns=['id'],
clauses=['name=%(name)s'],
values={'name': 'invalidpkg',
'strict': False,
'self': mock.ANY})
self.assertIsNone(rv)