about summary refs log tree commit diff
path: root/tests/check.sh
blob: b05e40ffbeea455f1de9fee30a386df755a07169 (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
28
29
30
31
32
source common.sh

clearStore

nix-build dependencies.nix --no-out-link
nix-build dependencies.nix --no-out-link --check

nix-build check.nix -A nondeterministic --no-out-link
(! nix-build check.nix -A nondeterministic --no-out-link --check 2> $TEST_ROOT/log)
grep 'may not be deterministic' $TEST_ROOT/log

clearStore

nix-build dependencies.nix --no-out-link --repeat 3

(! nix-build check.nix -A nondeterministic --no-out-link --repeat 1 2> $TEST_ROOT/log)
grep 'differs from previous round' $TEST_ROOT/log

path=$(nix-build check.nix -A fetchurl --no-out-link --hashed-mirrors '')

chmod +w $path
echo foo > $path
chmod -w $path

nix-build check.nix -A fetchurl --no-out-link --check --hashed-mirrors ''

# Note: "check" doesn't repair anything, it just compares to the hash stored in the database.
[[ $(cat $path) = foo ]]

nix-build check.nix -A fetchurl --no-out-link --repair --hashed-mirrors ''

[[ $(cat $path) != foo ]]