avoid masking hub errors, avoid duplicate check

This commit is contained in:
Mike McLean 2021-07-29 08:08:34 -04:00
parent d227f0f626
commit 6af614b71b
2 changed files with 11 additions and 28 deletions

View file

@ -1660,14 +1660,15 @@ def handle_remove_sig(goptions, session, args):
activate_session(session, goptions)
rpminfo = args[0]
rinfo = session.getRPM(rpminfo)
if not rinfo:
error("No such rpm in system: %s" % rpminfo)
else:
try:
session.deleteRPMSig(rpminfo, sigkey=options.sigkey, all_sigs=options.all)
except koji.GenericError:
error("Signature %s for rpm %s does not exist" % (options.sigkey, rpminfo))
try:
session.deleteRPMSig(rpminfo, sigkey=options.sigkey, all_sigs=options.all)
except koji.GenericError as e:
msg = str(e)
if msg.startswith("No such rpm"):
# make this a little more readable than the hub error
error("No such rpm in system: %s" % rpminfo)
else:
error("Signature removal failed: %s" % msg)
def handle_write_signed_rpm(goptions, session, args):

View file

@ -43,7 +43,7 @@ Options:
def test_delete_sig_non_exist_rpm(self, stdout):
rpm = '1234'
expected = "No such rpm in system: %s\n" % rpm
self.session.getRPM.return_value = None
self.session.deleteRPMSig.side_effect = koji.GenericError('No such rpm: DATA')
self.assert_system_exit(
handle_remove_sig,
@ -53,28 +53,10 @@ Options:
stderr=self.format_error_message(expected),
exit_code=1,
activate_session=None)
self.session.getRPM.assert_called_with('1234')
self.session.deleteRPMSig.assert_not_called()
self.session.deleteRPMSig.assert_called_with('1234', sigkey=None, all_sigs=True)
def test_delete_sig_valid(self):
rpm = '1'
rpminfo = {'arch': 'src',
'build_id': 10,
'buildroot_id': None,
'buildtime': 1618361584,
'epoch': None,
'external_repo_id': 0,
'external_repo_name': 'INTERNAL',
'extra': None,
'id': 1,
'metadata_only': False,
'name': 'koji',
'payloadhash': 'c2b13f978c45e274c856e0a4599842a4',
'release': '1.fc34',
'size': 1178794,
'version': '1.24.1'}
self.session.getRPM.return_value = rpminfo
self.session.deleteRPMSig.return_value = None
handle_remove_sig(self.options, self.session, [rpm, '--sigkey', 'testkey'])
self.session.getRPM.assert_called_with('1')
self.session.deleteRPMSig.assert_called_with('1', sigkey='testkey', all_sigs=False)