update: allow tests to pass when apksigner is not installed

This is only for the v2/v3 signatures.

fdroid/fdroidserver#627
This commit is contained in:
Hans-Christoph Steiner 2019-02-03 16:52:12 +01:00
parent 35e67295e9
commit d03b121152
No known key found for this signature in database
GPG Key ID: 3E177817BA1B9BFA
1 changed files with 10 additions and 7 deletions

View File

@ -408,13 +408,16 @@ class UpdateTest(unittest.TestCase):
print('USE_ANDROGUARD', use_androguard)
apksigner = fdroidserver.common.find_sdk_tools_cmd('apksigner')
if use_androguard and apksigner: # v2 parsing needs both
config['apksigner'] = apksigner
apk_info = fdroidserver.update.scan_apk('v2.only.sig_2.apk')
self.assertIsNone(apk_info.get('maxSdkVersion'))
self.assertEqual(apk_info.get('versionName'), 'v2-only')
self.assertEqual(apk_info.get('versionCode'), 2)
try:
apksigner = fdroidserver.common.find_sdk_tools_cmd('apksigner')
if use_androguard and apksigner: # v2 parsing needs both
config['apksigner'] = apksigner
apk_info = fdroidserver.update.scan_apk('v2.only.sig_2.apk')
self.assertIsNone(apk_info.get('maxSdkVersion'))
self.assertEqual(apk_info.get('versionName'), 'v2-only')
self.assertEqual(apk_info.get('versionCode'), 2)
except fdroidserver.exception.FDroidException:
print('WARNING: skipping v2-only test since apksigner cannot be found')
apk_info = fdroidserver.update.scan_apk('repo/v1.v2.sig_1020.apk')
self.assertIsNone(apk_info.get('maxSdkVersion'))