diff --git a/tests/dump-db.sh b/tests/dump-db.sh new file mode 100644 index 0000000000..234b7ac026 --- /dev/null +++ b/tests/dump-db.sh @@ -0,0 +1,20 @@ +source common.sh + +clearStore + +path=$(nix-build dependencies.nix -o $TEST_ROOT/result) + +deps="$(nix-store -qR $TEST_ROOT/result)" + +nix-store --dump-db > $TEST_ROOT/dump + +rm -rf $NIX_DB_DIR + +nix-store --load-db < $TEST_ROOT/dump + +deps2="$(nix-store -qR $TEST_ROOT/result)" + +[ "$deps" = "$deps2" ]; + +nix-store --dump-db > $TEST_ROOT/dump2 +cmp $TEST_ROOT/dump $TEST_ROOT/dump2 diff --git a/tests/local.mk b/tests/local.mk index 6b82c0a358..ab170dfe51 100644 --- a/tests/local.mk +++ b/tests/local.mk @@ -10,7 +10,7 @@ nix_tests = \ remote-store.sh export.sh export-graph.sh negative-caching.sh \ binary-patching.sh timeout.sh secure-drv-outputs.sh nix-channel.sh \ multiple-outputs.sh import-derivation.sh fetchurl.sh optimise-store.sh \ - binary-cache.sh nix-profile.sh repair.sh + binary-cache.sh nix-profile.sh repair.sh dump-db.sh install-tests += $(foreach x, $(nix_tests), tests/$(x))