diff options
author | Alois Wohlschlager <alois1@gmx-topmail.de> | 2024-06-01 11:59:16 +0200 |
---|---|---|
committer | alois31 <alois1@gmx-topmail.de> | 2024-06-12 22:13:55 +0000 |
commit | 3c0434999e28f34c047b51fa3768d68ed88fb0ed (patch) | |
tree | a7da27ba6980309ab132adb5941816fc0d3f1f6f | |
parent | f46194faa2fc9c78250702c8eb7a4b756e0bd944 (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.build | 4 |
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', |