1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-07 14:21:48 +02:00

tests: Add simple tests for nix-shell

nix-shell -A, -p and -i are lightly tested.
This commit is contained in:
Tuomas Tynkkynen 2017-01-01 18:45:51 +02:00
parent 018f884ffd
commit b501bea25f
4 changed files with 72 additions and 1 deletions

46
tests/shell.nix Normal file
View file

@ -0,0 +1,46 @@
{ }:
with import ./config.nix;
rec {
setupSh = builtins.toFile "setup" ''
export VAR_FROM_STDENV_SETUP=foo
for pkg in $buildInputs; do
export PATH=$PATH:$pkg/bin
done
'';
stdenv = mkDerivation {
name = "stdenv";
buildCommand = ''
mkdir -p $out
ln -s ${setupSh} $out/setup
'';
};
shellDrv = mkDerivation {
name = "shellDrv";
builder = "/does/not/exist";
VAR_FROM_NIX = "bar";
inherit stdenv;
};
# Used by nix-shell -p
runCommand = name: args: buildCommand: mkDerivation (args // {
inherit name buildCommand stdenv;
});
foo = runCommand "foo" {} ''
mkdir -p $out/bin
echo 'echo foo' > $out/bin/foo
chmod a+rx $out/bin/foo
'';
bar = runCommand "bar" {} ''
mkdir -p $out/bin
echo 'echo bar' > $out/bin/bar
chmod a+rx $out/bin/bar
'';
bash = shell;
}