From e7bd41ece6b91b4cec95c9ce6f5e5a1119ee6665 Mon Sep 17 00:00:00 2001 From: piegames Date: Sun, 21 Sep 2025 20:15:49 +0200 Subject: [PATCH] tests/functional2/lang: Migrate search-path test Change-Id: If7513252cff92831822438753a78c2e9f80ac06b --- tests/functional/lang.sh | 1 - .../lang/eval-okay-search-path.flags | 1 - .../functional2/lang/search-path/__init__.py | 0 .../lang/search-path}/dir1/a.nix | 0 .../lang/search-path}/dir2/a.nix | 0 .../lang/search-path}/dir2/b.nix | 0 .../lang/search-path}/dir3/a.nix | 0 .../lang/search-path}/dir3/b.nix | 0 .../lang/search-path}/dir3/c.nix | 0 .../lang/search-path}/dir4/a.nix | 0 .../lang/search-path}/dir4/c.nix | 0 .../lang/search-path/eval-okay.out.exp} | 0 .../lang/search-path/in.nix} | 0 .../lang/search-path/test_search_path.py | 37 +++++++++++++++++++ 14 files changed, 37 insertions(+), 2 deletions(-) delete mode 100644 tests/functional/lang/eval-okay-search-path.flags create mode 100644 tests/functional2/lang/search-path/__init__.py rename tests/{functional/lang => functional2/lang/search-path}/dir1/a.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir2/a.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir2/b.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir3/a.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir3/b.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir3/c.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir4/a.nix (100%) rename tests/{functional/lang => functional2/lang/search-path}/dir4/c.nix (100%) rename tests/{functional/lang/eval-okay-search-path.exp => functional2/lang/search-path/eval-okay.out.exp} (100%) rename tests/{functional/lang/eval-okay-search-path.nix => functional2/lang/search-path/in.nix} (100%) create mode 100644 tests/functional2/lang/search-path/test_search_path.py diff --git a/tests/functional/lang.sh b/tests/functional/lang.sh index 5dd88df3c..15ee3b192 100755 --- a/tests/functional/lang.sh +++ b/tests/functional/lang.sh @@ -78,7 +78,6 @@ for i in eval-okay-*.nix; do else if expect 0 env \ - NIX_PATH=dir3:dir4 \ HOME=/fake-home \ nix-instantiate "${flags[@]}" --eval --strict "$i.nix" \ 1> "$i.out" \ diff --git a/tests/functional/lang/eval-okay-search-path.flags b/tests/functional/lang/eval-okay-search-path.flags deleted file mode 100644 index 256a78a03..000000000 --- a/tests/functional/lang/eval-okay-search-path.flags +++ /dev/null @@ -1 +0,0 @@ ---extra-deprecated-features shadow-internal-symbols -I dir1 -I dir2 -I dir5=dir3 diff --git a/tests/functional2/lang/search-path/__init__.py b/tests/functional2/lang/search-path/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/functional/lang/dir1/a.nix b/tests/functional2/lang/search-path/dir1/a.nix similarity index 100% rename from tests/functional/lang/dir1/a.nix rename to tests/functional2/lang/search-path/dir1/a.nix diff --git a/tests/functional/lang/dir2/a.nix b/tests/functional2/lang/search-path/dir2/a.nix similarity index 100% rename from tests/functional/lang/dir2/a.nix rename to tests/functional2/lang/search-path/dir2/a.nix diff --git a/tests/functional/lang/dir2/b.nix b/tests/functional2/lang/search-path/dir2/b.nix similarity index 100% rename from tests/functional/lang/dir2/b.nix rename to tests/functional2/lang/search-path/dir2/b.nix diff --git a/tests/functional/lang/dir3/a.nix b/tests/functional2/lang/search-path/dir3/a.nix similarity index 100% rename from tests/functional/lang/dir3/a.nix rename to tests/functional2/lang/search-path/dir3/a.nix diff --git a/tests/functional/lang/dir3/b.nix b/tests/functional2/lang/search-path/dir3/b.nix similarity index 100% rename from tests/functional/lang/dir3/b.nix rename to tests/functional2/lang/search-path/dir3/b.nix diff --git a/tests/functional/lang/dir3/c.nix b/tests/functional2/lang/search-path/dir3/c.nix similarity index 100% rename from tests/functional/lang/dir3/c.nix rename to tests/functional2/lang/search-path/dir3/c.nix diff --git a/tests/functional/lang/dir4/a.nix b/tests/functional2/lang/search-path/dir4/a.nix similarity index 100% rename from tests/functional/lang/dir4/a.nix rename to tests/functional2/lang/search-path/dir4/a.nix diff --git a/tests/functional/lang/dir4/c.nix b/tests/functional2/lang/search-path/dir4/c.nix similarity index 100% rename from tests/functional/lang/dir4/c.nix rename to tests/functional2/lang/search-path/dir4/c.nix diff --git a/tests/functional/lang/eval-okay-search-path.exp b/tests/functional2/lang/search-path/eval-okay.out.exp similarity index 100% rename from tests/functional/lang/eval-okay-search-path.exp rename to tests/functional2/lang/search-path/eval-okay.out.exp diff --git a/tests/functional/lang/eval-okay-search-path.nix b/tests/functional2/lang/search-path/in.nix similarity index 100% rename from tests/functional/lang/eval-okay-search-path.nix rename to tests/functional2/lang/search-path/in.nix diff --git a/tests/functional2/lang/search-path/test_search_path.py b/tests/functional2/lang/search-path/test_search_path.py new file mode 100644 index 000000000..fb1b90b23 --- /dev/null +++ b/tests/functional2/lang/search-path/test_search_path.py @@ -0,0 +1,37 @@ +from collections.abc import Callable +from pathlib import Path + +from functional2.lang.test_lang import test_eval as nix_eval +from functional2.testlib.fixtures.file_helper import with_files, CopyTree, CopyFile, AssetSymlink +from functional2.testlib.fixtures.nix import Nix +from functional2.testlib.fixtures.snapshot import Snapshot + + +@with_files( + { + "dir1": CopyTree("dir1"), + "dir2": CopyTree("dir2"), + "dir3": CopyTree("dir3"), + "dir4": CopyTree("dir4"), + "lib.nix": CopyFile("../lib.nix"), + "in.nix": CopyFile("in.nix"), + "out.exp": AssetSymlink("eval-okay.out.exp"), + } +) +def test_search_path(files: Path, nix: Nix, snapshot: Callable[[str], Snapshot]): + nix.env.set_env("NIX_PATH", "dir3:dir4") + nix_eval( + files, + nix, + [ + "--extra-deprecated-features", + "shadow-internal-symbols", + "-I", + "dir1", + "-I", + "dir2", + "-I", + "dir5=dir3", + ], + snapshot, + )