mirror of
https://github.com/nix-community/nix-direnv.git
synced 2025-11-08 19:46:11 +01:00
test that .direnv/ gets cleaned
This commit is contained in:
parent
7e76b2e10a
commit
24d0af43fa
1 changed files with 26 additions and 0 deletions
|
|
@ -38,10 +38,30 @@ def common_test(direnv_project: DirenvProject) -> None:
|
|||
assert "Executing shellHook." in out2.stderr
|
||||
|
||||
|
||||
def common_test_clean(direnv_project: DirenvProject, num_expected_files: int) -> None:
|
||||
testenv = str(direnv_project.dir)
|
||||
|
||||
out3 = run(
|
||||
["direnv", "exec", testenv, "hello"],
|
||||
stderr=subprocess.PIPE,
|
||||
check=False,
|
||||
cwd=direnv_project.dir,
|
||||
)
|
||||
sys.stderr.write(out3.stderr)
|
||||
|
||||
files = list((direnv_project.dir / ".direnv").iterdir())
|
||||
assert len(files) == num_expected_files
|
||||
|
||||
|
||||
def test_use_nix(direnv_project: DirenvProject) -> None:
|
||||
direnv_project.setup_envrc("use nix")
|
||||
common_test(direnv_project)
|
||||
|
||||
# --pure here is just a way to make sure the environment changes
|
||||
direnv_project.setup_envrc("use nix --pure")
|
||||
# expecting 2 files in .direnv/ : nix-profile-* and nix-profile-*.rc
|
||||
common_test_clean(direnv_project, num_expected_files=2)
|
||||
|
||||
|
||||
def test_use_flake(direnv_project: DirenvProject) -> None:
|
||||
direnv_project.setup_envrc("use flake")
|
||||
|
|
@ -55,6 +75,12 @@ def test_use_flake(direnv_project: DirenvProject) -> None:
|
|||
for symlink in inputs:
|
||||
assert symlink.is_dir()
|
||||
|
||||
# --ignore-environment here is just a way to make sure the environment changes
|
||||
direnv_project.setup_envrc("use flake --ignore-environment")
|
||||
# expecting 5 files in .direnv/ : 2 x nix-flake-*, 2 x nix-flake-*.rc
|
||||
# and flake-inputs
|
||||
common_test_clean(direnv_project, num_expected_files=5)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue