listBuilds returns empty list, not error when not existing

Fixes: https://pagure.io/koji/issue/1209
This commit is contained in:
Jana Cupova 2021-06-21 14:34:47 +02:00 committed by Tomas Kopecek
parent 367fc19068
commit 12481d43d3
2 changed files with 13 additions and 11 deletions

View file

@ -11415,10 +11415,15 @@ class RootExports(object):
'LEFT JOIN users ON build.owner = users.id']
clauses = []
if packageID is not None:
packageID = get_package_id(packageID, strict=True)
packageID = get_package_id(packageID)
if not packageID:
return []
clauses.append('package.id = %(packageID)i')
if userID is not None:
userID = get_user(userID, strict=True)['id']
userinfo = get_user(userID)
if not userinfo:
return []
userID = userinfo['id']
clauses.append('users.id = %(userID)i')
if volumeID is not None:
clauses.append('volume.id = %(volumeID)i')

View file

@ -2,7 +2,6 @@ import unittest
import mock
import koji
import kojihub
QP = kojihub.QueryProcessor
@ -44,10 +43,9 @@ class TestListBuilds(unittest.TestCase):
def test_wrong_package(self):
package = 'test-package'
kojihub.get_package_id.return_value = package
with self.assertRaises(koji.GenericError) as cm:
self.exports.listBuilds(packageID=package)
self.assertEqual('No such entry in table package: %s' % package, str(cm.exception))
kojihub.get_package_id.return_value = None
rv = self.exports.listBuilds(packageID=package)
self.assertEquals(rv, [])
@mock.patch('kojihub.get_package_id')
def test_package_string(self, get_package_id):
@ -80,7 +78,6 @@ class TestListBuilds(unittest.TestCase):
@mock.patch('kojihub.get_user')
def test_wrong_user(self, get_user):
user = 'test-user'
get_user.side_effect = koji.GenericError('No such user: %s' % user)
with self.assertRaises(koji.GenericError) as cm:
self.exports.listBuilds(userID=user)
self.assertEqual('No such user: %s' % user, str(cm.exception))
get_user.return_value = None
rv = self.exports.listBuilds(userID=user)
self.assertEquals(rv, [])