aboutsummaryrefslogtreecommitdiff
path: root/tests/functional/common
diff options
context:
space:
mode:
authorMario Rodas <rodasmario2@gmail.com>2024-06-08 04:20:00 +0000
committerMario Rodas <rodasmario2@gmail.com>2024-06-08 04:20:00 +0000
commita05de58ebd581c47f4f985efab7236574aa0f842 (patch)
treec0ee47516d4db6dc3667bacbfeb346ef76bd0305 /tests/functional/common
parent4f94531209510c7d580e525a017ea01f18894ded (diff)
tests: fix daemon version in isDaemonNewer function
Since ad8a4b380e, the version printer returns "nix (Lix, like Nix) 2.x", hence the `daemonVersion` was being set to the string "like". Using `compareVersions` with a letter compares them lexicographically: builtins.compareVersions "like" "2.12pre20230103" // => -1 builtins.compareVersions "like" "2.16.0" // => -1 This caused that `isDaemonNewer` always returned 1, falsy in Bash terms. Therefore, the test suite skipped those tests where they use it. Fixes https://git.lix.systems/lix-project/lix/issues/324 Change-Id: If6682515bf0bf8b8add641af9a4e98b50a9acb51
Diffstat (limited to 'tests/functional/common')
-rw-r--r--tests/functional/common/vars-and-functions.sh.in3
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/functional/common/vars-and-functions.sh.in b/tests/functional/common/vars-and-functions.sh.in
index 3b343b720..bd1990973 100644
--- a/tests/functional/common/vars-and-functions.sh.in
+++ b/tests/functional/common/vars-and-functions.sh.in
@@ -146,7 +146,8 @@ fi
isDaemonNewer () {
[[ -n "${NIX_DAEMON_PACKAGE:-}" ]] || return 0
local requiredVersion="$1"
- local daemonVersion=$($NIX_DAEMON_PACKAGE/bin/nix daemon --version | cut -d' ' -f3)
+ local versionOutput=$($NIX_DAEMON_PACKAGE/bin/nix daemon --version)
+ local daemonVersion=${versionOutput##* }
[[ $(nix eval --expr "builtins.compareVersions ''$daemonVersion'' ''$requiredVersion''") -ge 0 ]]
}