From cebdcdd67c4157cf53dcb1e053d2436a644c0966 Mon Sep 17 00:00:00 2001 From: Jochen Sprickerhof Date: Tue, 15 Jun 2021 19:18:19 +0200 Subject: [PATCH] [checkupdates] UpdateCheckData tag for verocode if no regex Use the tag as the version code if no regex was specified. This allows: UpdateCheckData: '|||' meaning the tag should be used for version code and name. --- fdroidserver/checkupdates.py | 10 ++++++---- tests/checkupdates.TestCase | 7 +++++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/fdroidserver/checkupdates.py b/fdroidserver/checkupdates.py index 91d36fec..330746ca 100644 --- a/fdroidserver/checkupdates.py +++ b/fdroidserver/checkupdates.py @@ -171,11 +171,13 @@ def check_tags(app, pattern): else: filecontent = tag - m = re.search(codeex, filecontent) - if not m: - continue + vercode = tag + if codeex: + m = re.search(codeex, filecontent) + if not m: + continue - vercode = m.group(1).strip() + vercode = m.group(1).strip() if filever: if filever != '.': diff --git a/tests/checkupdates.TestCase b/tests/checkupdates.TestCase index da49deaf..a44ea0a4 100755 --- a/tests/checkupdates.TestCase +++ b/tests/checkupdates.TestCase @@ -265,6 +265,13 @@ class CheckupdatesTest(unittest.TestCase): self.assertEqual(vername, '1.1.0') self.assertEqual(vercode, '1') + app.UpdateCheckData = '|||' + vcs.latesttags.return_value = ['2'] + with mock.patch('fdroidserver.common.getvcs', return_value=vcs): + vername, vercode, _tag = fdroidserver.checkupdates.check_tags(app, None) + self.assertEqual(vername, '2') + self.assertEqual(vercode, '2') + if __name__ == "__main__": parser = optparse.OptionParser()