leapp-repository/SOURCES/0029-refactor-versions-config-rename-_simple_versions.patch
eabdullin b1bd6e77a6 Import from CS git
(cherry picked from commit 5bdc5cf293)
2025-05-15 11:55:21 +03:00

63 lines
2.6 KiB
Diff

From d450430eb06a9649ea924fa8b0ba4f123197dd27 Mon Sep 17 00:00:00 2001
From: Michal Hecko <mhecko@redhat.com>
Date: Mon, 21 Apr 2025 20:15:34 +0200
Subject: [PATCH 29/37] refactor(versions/config): rename _simple_versions
Rename the function _simple_versions to _are_comparison_operators_used
with **negated semantics**. The new name should make it clear what is
being checked in the version list.
---
.../common/libraries/config/tests/test_version.py | 6 +++---
repos/system_upgrade/common/libraries/config/version.py | 7 ++++---
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/repos/system_upgrade/common/libraries/config/tests/test_version.py b/repos/system_upgrade/common/libraries/config/tests/test_version.py
index 37a91c00..3cb6479c 100644
--- a/repos/system_upgrade/common/libraries/config/tests/test_version.py
+++ b/repos/system_upgrade/common/libraries/config/tests/test_version.py
@@ -17,9 +17,9 @@ def test_validate_versions():
assert version._validate_versions(['7.6', 'z.z'])
-def test_simple_versions():
- assert version._simple_versions(['7.6', '7.7'])
- assert not version._simple_versions(['7.6', '< 7.7'])
+def test_comparison_operator_detection():
+ assert not version._are_comparison_operators_used(['7.6', '7.7'])
+ assert version._are_comparison_operators_used(['7.6', '< 7.7'])
def test_cmp_versions():
diff --git a/repos/system_upgrade/common/libraries/config/version.py b/repos/system_upgrade/common/libraries/config/version.py
index b8fc550b..24bb7729 100644
--- a/repos/system_upgrade/common/libraries/config/version.py
+++ b/repos/system_upgrade/common/libraries/config/version.py
@@ -149,9 +149,9 @@ def _validate_versions(versions):
"but provided was '{}'".format(versions))
-def _simple_versions(versions):
+def _are_comparison_operators_used(versions):
"""Return ``True`` if provided versions are list of strings without comparison operators."""
- return all(len(v.split()) == 1 for v in versions)
+ return not all(len(v.split()) == 1 for v in versions)
def _cmp_versions(versions):
@@ -190,10 +190,11 @@ def matches_version(match_list, detected):
"but provided was {}: '{}'".format(type(detected), detected))
_validate_versions([detected])
- if _simple_versions(match_list):
+ if not _are_comparison_operators_used(match_list):
# match_list = ['7.6', '7.7', '7.8', '7.9']
_validate_versions(match_list)
return detected in match_list
+
if _cmp_versions(match_list):
detected = _version_to_tuple(detected)
# match_list = ['>= 7.6', '< 7.10']
--
2.49.0