tests/functional2/lang: Migrate builtins.pathExists

Change-Id: Ib31b7dddc71ae36924822f300b028bf354f63874
This commit is contained in:
Commentator2.0
2025-11-18 20:01:23 +01:00
parent 3eeb5d10ba
commit 2497e0101e
4 changed files with 42 additions and 12 deletions
@@ -9,20 +9,20 @@ builtins.pathExists (./lib.nix)
# && !builtins.pathExists (builtins.toString ./lib.nix + "/../lib.nix")
&& !builtins.pathExists (builtins.toString ./lib.nix + "/./")
&& !builtins.pathExists (builtins.toString ./lib.nix + "/./.")
&& builtins.pathExists (builtins.toString ./.. + "/lang/lib.nix")
&& !builtins.pathExists (builtins.toString ./.. + "lang/lib.nix")
&& builtins.pathExists (builtins.toString ./. + "/../lang/lib.nix")
&& builtins.pathExists (builtins.toString ./. + "/../lang/./lib.nix")
&& builtins.pathExists (builtins.toString ./.. + "/test-home/lib.nix")
&& !builtins.pathExists (builtins.toString ./.. + "test-home/lib.nix")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/lib.nix")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/./lib.nix")
&& builtins.pathExists (builtins.toString ./.)
&& builtins.pathExists (builtins.toString ./. + "/")
&& builtins.pathExists (builtins.toString ./. + "/../lang")
&& builtins.pathExists (builtins.toString ./. + "/../lang/")
&& builtins.pathExists (builtins.toString ./. + "/../lang/.")
&& builtins.pathExists (builtins.toString ./. + "/../lang/./")
&& builtins.pathExists (builtins.toString ./. + "/../lang//./")
&& builtins.pathExists (builtins.toString ./. + "/../lang/..")
&& builtins.pathExists (builtins.toString ./. + "/../lang/../")
&& builtins.pathExists (builtins.toString ./. + "/../lang/..//")
&& builtins.pathExists (builtins.toString ./. + "/../test-home")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/.")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/./")
&& builtins.pathExists (builtins.toString ./. + "/../test-home//./")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/..")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/../")
&& builtins.pathExists (builtins.toString ./. + "/../test-home/..//")
&& builtins.pathExists (builtins.toPath (builtins.toString ./lib.nix))
&& !builtins.pathExists (builtins.toPath (builtins.toString ./bla.nix))
&& builtins.pathExists ./lib.nix
@@ -0,0 +1,30 @@
from pathlib import Path
from collections.abc import Callable
from functional2.lang.test_lang import test_eval as nix_eval
from functional2.testlib.fixtures.file_helper import (
with_files,
CopyFile,
AssetSymlink,
File,
Symlink,
)
from functional2.testlib.fixtures.nix import Nix
from functional2.testlib.fixtures.snapshot import Snapshot
@with_files(
{
"in.nix": CopyFile("in.nix"),
"out.exp": AssetSymlink("eval-okay.out.exp"),
"err.exp": AssetSymlink("eval-okay.err.exp"),
"symlink-resolution": {
"foo": {"lib": {"default.nix": File('"test"')}, "overlays": Symlink("../overlays")},
"overlays": {"overlay.nix": File("import ../lib")},
"broken": Symlink("nonexistent"),
},
"lib.nix": CopyFile("../lib.nix"),
}
)
def test_path_exists(nix: Nix, files: Path, snapshot: Callable[[str], Snapshot]):
nix_eval(files, nix, [], snapshot)