Skip to content

Commit b1bfc4c

Browse files
committed
Add some sharness tests and sharness support for MFS.
1 parent 6424872 commit b1bfc4c

File tree

2 files changed

+42
-5
lines changed

2 files changed

+42
-5
lines changed

test/sharness/lib/test-lib.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,9 +206,10 @@ test_init_ipfs() {
206206
'
207207

208208
test_expect_success "prepare config -- mounting" '
209-
mkdir mountdir ipfs ipns &&
209+
mkdir mountdir ipfs ipns mfs &&
210210
test_config_set Mounts.IPFS "$(pwd)/ipfs" &&
211-
test_config_set Mounts.IPNS "$(pwd)/ipns" ||
211+
test_config_set Mounts.IPNS "$(pwd)/ipns" &&
212+
test_config_set Mounts.MFS "$(pwd)/mfs" ||
212213
test_fsh cat "\"$IPFS_PATH/config\""
213214
'
214215

@@ -300,12 +301,14 @@ test_mount_ipfs() {
300301
test_expect_success FUSE "'ipfs mount' succeeds" '
301302
do_umount "$(pwd)/ipfs" || true &&
302303
do_umount "$(pwd)/ipns" || true &&
304+
do_umount "$(pwd)/mfs" || true &&
303305
ipfs mount >actual
304306
'
305307

306308
test_expect_success FUSE "'ipfs mount' output looks good" '
307309
echo "IPFS mounted at: $(pwd)/ipfs" >expected &&
308310
echo "IPNS mounted at: $(pwd)/ipns" >>expected &&
311+
echo "MFS mounted at: $(pwd)/mfs" >>expected &&
309312
test_cmp expected actual
310313
'
311314

test/sharness/t0030-mount.sh

Lines changed: 37 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ test_expect_success "'ipfs mount' output looks good" '
3737
'
3838

3939
test_expect_success "setup and publish default IPNS value" '
40-
mkdir "$(pwd)/ipfs" "$(pwd)/ipns" &&
40+
mkdir "$(pwd)/ipfs" "$(pwd)/ipns" "$(pwd)/mfs" &&
4141
ipfsi 0 name publish QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn
4242
'
4343

@@ -46,12 +46,14 @@ test_expect_success "setup and publish default IPNS value" '
4646
test_expect_success FUSE "'ipfs mount' succeeds" '
4747
do_umount "$(pwd)/ipfs" || true &&
4848
do_umount "$(pwd)/ipns" || true &&
49+
do_umount "$(pwd)/mfs" || true &&
4950
ipfsi 0 mount -f "$(pwd)/ipfs" -n "$(pwd)/ipns" >actual
5051
'
5152

5253
test_expect_success FUSE "'ipfs mount' output looks good" '
5354
echo "IPFS mounted at: $(pwd)/ipfs" >expected &&
5455
echo "IPNS mounted at: $(pwd)/ipns" >>expected &&
56+
echo "MFS mounted at: $(pwd)/mfs" >>expected &&
5557
test_cmp expected actual
5658
'
5759

@@ -67,13 +69,45 @@ test_expect_success FUSE "can resolve ipns names" '
6769
test_cmp expected actual
6870
'
6971

72+
test_expect_success FUSE "create mfs file" '
73+
touch mfs/testfile &&
74+
ipfs files ls | grep testfile
75+
'
76+
77+
test_expect_success FUSE "create mfs dir" '
78+
mkdir mfs/testdir &&
79+
ipfs files ls | grep testdir
80+
'
81+
82+
test_expect_success FUSE "read mfs file from fuse" '
83+
echo content | ipfs files write -e /testfile &&
84+
cat mfs/testfile | grep content
85+
'
86+
87+
test_expect_success FUSE "test file xattr" '
88+
echo content > mfs/testfile &&
89+
getfattr -n ipfs_cid mfs/testfile
90+
'
91+
92+
test_expect_success FUSE "test file removal" '
93+
touch mfs/testfile &&
94+
rm mfs/testfile
95+
'
96+
97+
test_expect_success FUSE "test nested dirs" '
98+
mkdir -p mfs/foo/bar/baz/qux &&
99+
echo content > mfs/foo/bar/baz/qux/quux &&
100+
ipfs files stat /foo/bar/baz/qux/quux
101+
'
102+
70103
test_expect_success "mount directories cannot be removed while active" '
71-
test_must_fail rmdir ipfs ipns 2>/dev/null
104+
test_must_fail rmdir ipfs ipns mfs 2>/dev/null
72105
'
73106

74107
test_expect_success "unmount directories" '
75108
do_umount "$(pwd)/ipfs" &&
76-
do_umount "$(pwd)/ipns"
109+
do_umount "$(pwd)/ipns" &&
110+
do_umount "$(pwd)/mfs"
77111
'
78112

79113
test_expect_success "mount directories can be removed after shutdown" '

0 commit comments

Comments
 (0)