From 620b52b2aa3e26c1d9d4336fed06098c6c65ce78 Mon Sep 17 00:00:00 2001 From: Kevin Atkinson Date: Mon, 13 Feb 2017 15:56:35 -0500 Subject: [PATCH] filestore util: refactor and clean up tests License: MIT Signed-off-by: Kevin Atkinson --- test/sharness/t0271-filestore-utils.sh | 67 +++++++++++++++----------- 1 file changed, 39 insertions(+), 28 deletions(-) diff --git a/test/sharness/t0271-filestore-utils.sh b/test/sharness/t0271-filestore-utils.sh index 38a7aac1dab..371bbbd7b4c 100755 --- a/test/sharness/t0271-filestore-utils.sh +++ b/test/sharness/t0271-filestore-utils.sh @@ -8,6 +8,17 @@ test_description="Test out the filestore nocopy functionality" . lib/test-lib.sh +test_init_filestore() { + test_expect_success "clean up old node" ' + rm -rf "$IPFS_PATH" mountdir ipfs ipns + ' + + test_init_ipfs + + test_expect_success "enable filestore config setting" ' + ipfs config --json Experimental.FilestoreEnabled true + ' +} test_init_dataset() { test_expect_success "create a dataset" ' @@ -19,6 +30,11 @@ test_init_dataset() { ' } +test_init() { + test_init_filestore + test_init_dataset +} + EXPHASH="QmRueCuPMYYvdxWz1vWncF7wzCScEx4qasZXo5aVBb1R4V" cat < ls_expect @@ -68,11 +84,16 @@ test_filestore_adds() { ' } -test_filestore_verify() { +# check that the filestore is in a clean state +test_filestore_state() { test_expect_success "ipfs filestore verify' output looks good'" ' ipfs filestore verify | LC_ALL=C sort > verify_actual test_cmp verify_expect verify_actual ' +} + +test_filestore_verify() { + test_filestore_state test_expect_success "'ipfs filestore verify HASH' works" ' ipfs filestore verify $FILE1_HASH > verify_actual && @@ -113,35 +134,28 @@ test_filestore_verify() { ipfs filestore verify > verify_actual && grep changed verify_actual | grep -q somedir/file3 ' -} -cat < dups_expect -$FILE1_HASH -EOF + # reset the state for the next test + test_init_dataset +} test_filestore_dups() { + # make sure the filestore is in a clean state + test_filestore_state + test_expect_success "'ipfs filestore dups'" ' ipfs add --raw-leaves somedir/file1 && ipfs filestore dups > dups_actual && + echo "$FILE1_HASH" > dups_expect test_cmp dups_expect dups_actual -' -} - -init_ipfs_filestore() { - test_expect_success "clean up old node" ' - rm -rf "$IPFS_PATH" mountdir ipfs ipns - ' - - test_init_ipfs - - test_expect_success "enable filestore config setting" ' - ipfs config --json Experimental.FilestoreEnabled true ' } -test_init_dataset +# +# No daemon +# -init_ipfs_filestore +test_init test_filestore_adds @@ -149,17 +163,14 @@ test_filestore_verify test_filestore_dups -echo "WORKING DIR" -echo "IPFS PATH = " $IPFS_PATH -pwd - - -test_init_dataset +# +# With daemon +# -init_ipfs_filestore +test_init -# must be in offline mode so tests of retrieving non-exist blocks -# don't hang +# must be in offline mode so tests that retrieve non-existent blocks +# doesn't hang test_launch_ipfs_daemon --offline test_filestore_adds