aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2010-02-19 17:15:22 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2010-02-19 17:15:22 +0000
commit1930570ad96e47de9e8557a7734c7bfd9f36f942 (patch)
treeed4eb236f6e7935a955659105821f1e9beadef65 /tests
parent9c9a88e9e25bdc4456368a40691e61acf5d3b330 (diff)
* Foreign key support in SQLite is not a persistent setting, so enable
it at startup. * Implement negative caching. Now `make check' passes.
Diffstat (limited to 'tests')
-rw-r--r--tests/referrers.sh27
1 files changed, 3 insertions, 24 deletions
diff --git a/tests/referrers.sh b/tests/referrers.sh
index e3f8e07bc..752f05c3d 100644
--- a/tests/referrers.sh
+++ b/tests/referrers.sh
@@ -3,6 +3,8 @@ source common.sh
# This takes way to long on Cygwin (because process creation is so slow...).
if test "$system" = i686-cygwin; then exit 0; fi
+clearStore
+
max=2500
reference=$NIX_STORE_DIR/abcdef
@@ -25,34 +27,11 @@ echo "registering..."
time $nixstore --register-validity < $TEST_ROOT/reg_info
-oldTime=$(cat test-tmp/db/info/1 | grep Registered-At)
-
-echo "sleeping..."
-
-sleep 2
-
-echo "reregistering..."
-
-time $nixstore --register-validity --reregister < $TEST_ROOT/reg_info
-
-newTime=$(cat test-tmp/db/info/1 | grep Registered-At)
-
-if test "$newTime" != "$oldTime"; then
- echo "reregistration changed original registration time"
- exit 1
-fi
-
-if test "$(cat test-tmp/db/referrer/1 | wc -w)" -ne 1; then
- echo "reregistration duplicated referrers"
- exit 1
-fi
-
echo "collecting garbage..."
ln -sfn $reference "$NIX_STATE_DIR"/gcroots/ref
time $nixstore --gc
-if test "$(cat test-tmp/db/referrer/abcdef | wc -w)" -ne 0; then
+if test "$(sqlite3 ./test-tmp/db/db.sqlite 'select count(*) from Refs')" -ne 0; then
echo "referrers not cleaned up"
exit 1
fi
-