aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlois Wohlschlager <alois1@gmx-topmail.de>2024-06-01 11:59:16 +0200
committeralois31 <alois1@gmx-topmail.de>2024-06-12 22:13:55 +0000
commit3c0434999e28f34c047b51fa3768d68ed88fb0ed (patch)
treea7da27ba6980309ab132adb5941816fc0d3f1f6f
parentf46194faa2fc9c78250702c8eb7a4b756e0bd944 (diff)
tests/libcmd: set HOME to a temporary directory
The libcmd unit test creates files (more specifically, the fetcher cache) in its home directory. In the single-user sandbox, this leads to the creation of /homeless-shelter, since this is the default HOME and the root is writable. Unfortunately, this conflicts with the assumption of the functional tests that this directory does not exist. Use a different home directory to prevent these test failures, and thus restore the ability to build inside the single-user sandbox. Fixes: https://git.lix.systems/lix-project/lix/issues/365 Change-Id: I4df8c53d043234b95a7c0ac45fc5ee89e8d46aff
-rw-r--r--tests/unit/meson.build4
1 files changed, 4 insertions, 0 deletions
diff --git a/tests/unit/meson.build b/tests/unit/meson.build
index 0d3f00ba5..c3eefeede 100644
--- a/tests/unit/meson.build
+++ b/tests/unit/meson.build
@@ -241,6 +241,10 @@ test(
# No special meaning here, it's just a file laying around that is unlikely to go anywhere
# any time soon.
'_NIX_TEST_UNIT_DATA': meson.project_source_root() / 'src/nix-env/buildenv.nix',
+ # Use a temporary home directory for the unit tests.
+ # Otherwise, /homeless-shelter is created in the single-user sandbox, and functional tests will fail.
+ # TODO(alois31): handle TMPDIR properly (meson can't, and setting HOME in the test is too late)…
+ 'HOME': '/tmp/nix-test/libcmd-unit-tests',
},
suite : 'check',
protocol : 'gtest',