From ee507cdc9dcdb6fca048ad4b8782f949b7b8f117 Mon Sep 17 00:00:00 2001 From: Brad Cowie Date: Tue, 13 Aug 2019 11:49:43 +1200 Subject: [PATCH] Need to check version comparators separately. --- tests/unit/packaging/test_packaging.py | 29 +++++++++++++------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/tests/unit/packaging/test_packaging.py b/tests/unit/packaging/test_packaging.py index 24364777dc..0db95fc1d0 100755 --- a/tests/unit/packaging/test_packaging.py +++ b/tests/unit/packaging/test_packaging.py @@ -88,23 +88,24 @@ def test_every_pip_requirement_has_matching_version_in_debian_package(self): dpkg_name = "python3-{}".format(pip_req.name) if pip_req.req.specifier: - pip_req_version = str(pip_req.req.specifier) + pip_req_versions = str(pip_req.req.specifier) debian_package_dependencies = [ pip_req.name+x for x in self.faucet_dpkg_deps[dpkg_name] ] - if str(pip_req_version).startswith('=='): - # debian/control is annoying about how it handles exact - # versions, calculate the debian equivalent of the - # pip requirements match and compare that - lower_match = pip_req_version.replace('==', '>=') - upper_match = pip_req_version.replace('==', '<<').split('.') - upper_match[-1] = str(int(upper_match[-1]) + 1) - upper_match = '.'.join(upper_match) - - self.assertIn(pip_req.name+lower_match, debian_package_dependencies) - self.assertIn(pip_req.name+upper_match, debian_package_dependencies) - else: - self.assertIn(pip_req.name+pip_req_version, debian_package_dependencies) + for pip_req_version in pip_req_versions.split(','): + if str(pip_req_version).startswith('=='): + # debian/control is annoying about how it handles exact + # versions, calculate the debian equivalent of the + # pip requirements match and compare that + lower_match = pip_req_version.replace('==', '>=') + upper_match = pip_req_version.replace('==', '<<').split('.') + upper_match[-1] = str(int(upper_match[-1]) + 1) + upper_match = '.'.join(upper_match) + + self.assertIn(pip_req.name+lower_match, debian_package_dependencies) + self.assertIn(pip_req.name+upper_match, debian_package_dependencies) + else: + self.assertIn(pip_req.name+pip_req_version, debian_package_dependencies) if __name__ == "__main__":