about summary refs log tree commit diff
path: root/tests/run.sh
blob: 1ba181c9cd534f35e367ad279bec7763fd3f80e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
source common.sh

clearStore
clearCache

nix run -f run.nix hello -c hello | grep 'Hello World'
nix run -f run.nix hello -c hello NixOS | grep 'Hello NixOS'

if [[ $(uname) = Linux ]]; then

    chmod -R u+w $TEST_ROOT/store0 || true
    rm -rf $TEST_ROOT/store0

    clearStore

    path=$(nix eval --raw -f run.nix hello)

    # Note: we need the sandbox paths to ensure that the shell is
    # visible in the sandbox.
    nix run --sandbox-paths '/nix? /bin? /lib? /usr?' --store $TEST_ROOT/store0 -f run.nix hello -c hello | grep 'Hello World'

    path2=$(nix run --sandbox-paths '/nix? /bin? /lib? /usr?' --store $TEST_ROOT/store0 -f run.nix hello -c $SHELL -c 'type -p hello')

    [[ $path/bin/hello = $path2 ]]

    [[ -e $TEST_ROOT/store0/nix/store/$(basename $path)/bin/hello ]]
fi