aboutsummaryrefslogtreecommitdiff
path: root/tests/repair.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tests/repair.sh')
-rw-r--r--tests/repair.sh12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/repair.sh b/tests/repair.sh
index ae82b649c..92f2f8fe6 100644
--- a/tests/repair.sh
+++ b/tests/repair.sh
@@ -18,6 +18,18 @@ if nix-store --verify --check-contents -v; then
exit 1
fi
+# The path can be repaired by rebuilding the derivation.
+nix-store --verify --check-contents --repair
+
+nix-store --verify-path $path2
+
+# Re-corrupt and delete the deriver. Now --verify --repair should
+# not work.
+chmod u+w $path2
+touch $path2/bad
+
+nix-store --delete $(nix-store -qd $path2)
+
if nix-store --verify --check-contents --repair; then
echo "nix-store --verify --repair succeeded unexpectedly" >&2
exit 1