diff options
author | Michal Konvalinka <584541+dwich@users.noreply.github.com> | 2019-04-16 19:26:42 +0200 |
---|---|---|
committer | Max Illfelder <illfelder@users.noreply.github.com> | 2019-04-16 10:26:42 -0700 |
commit | 24bdbbdebdbb8a2b867ee70b0b78eae5804d1fe6 (patch) | |
tree | ea5bdfff23c0fc8ac3cba62d281723d76e1374b8 /packages | |
parent | f088f83eb91b94db9d91054199346c21e050818b (diff) | |
download | google-compute-image-packages-24bdbbdebdbb8a2b867ee70b0b78eae5804d1fe6.tar.gz |
Fix platform detection in case of FreeBSD in compat module. (#756)
* Fix platform detection in case of FreeBSD in compat module. Update tests.
Diffstat (limited to 'packages')
-rw-r--r-- | packages/python-google-compute-engine/google_compute_engine/compat.py | 12 | ||||
-rw-r--r-- | packages/python-google-compute-engine/google_compute_engine/tests/compat_test.py | 6 |
2 files changed, 11 insertions, 7 deletions
diff --git a/packages/python-google-compute-engine/google_compute_engine/compat.py b/packages/python-google-compute-engine/google_compute_engine/compat.py index 53dab99..eb69763 100644 --- a/packages/python-google-compute-engine/google_compute_engine/compat.py +++ b/packages/python-google-compute-engine/google_compute_engine/compat.py @@ -25,11 +25,17 @@ else: import platform as distro if 'freebsd' in sys.platform: - distribution = distro.version().split() + # Note: Do not use .version() method which is from either platform or distro. + # platform.version() and distro.version() return different values. + # platform.version() returns 'FreeBSD 11.2-RELEASE-p9.....'. + # distro.version() returns '11.2'. + distro_name = 'freebsd' + # distro_version is not used for FreeBSD later in this code. + distro_version = None else: distribution = distro.linux_distribution() -distro_name = distribution[0].lower() -distro_version = distribution[1].split('.')[0] + distro_name = distribution[0].lower() + distro_version = distribution[1].split('.')[0] distro_utils = None if 'centos' in distro_name and distro_version == '6': diff --git a/packages/python-google-compute-engine/google_compute_engine/tests/compat_test.py b/packages/python-google-compute-engine/google_compute_engine/tests/compat_test.py index ec28323..803efef 100644 --- a/packages/python-google-compute-engine/google_compute_engine/tests/compat_test.py +++ b/packages/python-google-compute-engine/google_compute_engine/tests/compat_test.py @@ -109,10 +109,8 @@ class CompatTest(unittest.TestCase): self.assertEqual( test_cases[distro], google_compute_engine.compat.distro_utils) - @mock.patch('google_compute_engine.compat.sys.platform', 'freebsd') - @mock.patch('google_compute_engine.compat.distro.version') - def testDistroCompatFreeBSD(self, mock_call): - mock_call.return_value = 'FreeBSD 11.1-RELEASE-p4 #0: Tue Nov 14 06:12:40' + @mock.patch('google_compute_engine.compat.sys.platform', 'freebsd11') + def testDistroCompatFreeBSD(self): reload_import(google_compute_engine.compat) self.assertEqual( google_compute_engine.distro_lib.freebsd_11.utils, |