diff options
author | Kaiden Fey <kookie@spacekookie.de> | 2020-09-21 14:12:32 +0200 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2020-09-21 14:12:32 +0200 |
commit | f80843dd45d7acd563d0a5b014cec3a2ea686fc2 (patch) | |
tree | 87189d873d6f932d85f9c1a480462b37d96cd6a5 /home-manager/tests/modules/files | |
parent | e0800985dab8f8ebb4cebdfd7e361fd1fafdb2a7 (diff) | |
parent | 9b1b55ba0264a55add4b7b4e022bdc2832b531f6 (diff) |
Merge commit '9b1b55ba0264a55add4b7b4e022bdc2832b531f6'
Diffstat (limited to 'home-manager/tests/modules/files')
-rw-r--r-- | home-manager/tests/modules/files/default.nix | 2 | ||||
-rw-r--r-- | home-manager/tests/modules/files/out-of-store-symlink.nix | 29 | ||||
-rw-r--r-- | home-manager/tests/modules/files/target-with-shellvar.nix | 15 |
3 files changed, 46 insertions, 0 deletions
diff --git a/home-manager/tests/modules/files/default.nix b/home-manager/tests/modules/files/default.nix index 04c61d3b886..6f1ef24b810 100644 --- a/home-manager/tests/modules/files/default.nix +++ b/home-manager/tests/modules/files/default.nix @@ -1,6 +1,8 @@ { files-executable = ./executable.nix; files-hidden-source = ./hidden-source.nix; + files-out-of-store-symlink = ./out-of-store-symlink.nix; files-source-with-spaces = ./source-with-spaces.nix; + files-target-with-shellvar = ./target-with-shellvar.nix; files-text = ./text.nix; } diff --git a/home-manager/tests/modules/files/out-of-store-symlink.nix b/home-manager/tests/modules/files/out-of-store-symlink.nix new file mode 100644 index 00000000000..af274aaebec --- /dev/null +++ b/home-manager/tests/modules/files/out-of-store-symlink.nix @@ -0,0 +1,29 @@ +{ config, lib, ... }: + +with lib; + +let + + filePath = ./. + "/source with spaces!"; + +in { + config = { + home.file."oos".source = config.lib.file.mkOutOfStoreSymlink filePath; + + nmt.script = '' + assertLinkExists "home-files/oos" + + storePath="$(readlink $TESTED/home-files/oos)" + + if [[ ! -L $storePath ]]; then + fail "Expected $storePath to be a symbolic link, but it was not." + fi + + actual="$(readlink "$storePath")" + expected="${toString filePath}" + if [[ $actual != $expected ]]; then + fail "Symlink home-files/oos should point to $expected via the Nix store, but it actually points to $actual." + fi + ''; + }; +} diff --git a/home-manager/tests/modules/files/target-with-shellvar.nix b/home-manager/tests/modules/files/target-with-shellvar.nix new file mode 100644 index 00000000000..c54946eb9eb --- /dev/null +++ b/home-manager/tests/modules/files/target-with-shellvar.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + config = { + home.file."$HOME/$FOO/bar baz".text = "blah"; + + nmt.script = '' + assertFileExists 'home-files/$HOME/$FOO/bar baz'; + assertFileContent 'home-files/$HOME/$FOO/bar baz' \ + ${pkgs.writeText "expected" "blah"} + ''; + }; +} |