diff options
-rwxr-xr-x | tests/basic/quota.t | 44 |
1 files changed, 38 insertions, 6 deletions
diff --git a/tests/basic/quota.t b/tests/basic/quota.t index ef015a30..9f4fe5d7 100755 --- a/tests/basic/quota.t +++ b/tests/basic/quota.t @@ -9,21 +9,31 @@ TEST glusterd TEST pidof glusterd TEST $CLI volume info; -TEST $CLI volume create $V0 replica 2 stripe 2 $H0:$B0/${V0}{1,2,3,4,5,6,7,8}; +TEST $CLI volume create $V0 replica 2 $H0:$B0/${V0}{1,2,3,4}; function limit_on() { local QUOTA_PATH=$1; - $CLI volume quota $V0 list | grep "$QUOTA_PATH" | awk '{print $2}' + $CLI volume quota $V0 list $QUOTA_PATH | grep "$QUOTA_PATH" | awk '{print $2}' +} + +function usage() +{ + local QUOTA_PATH=$1; + $CLI volume quota $V0 list $QUOTA_PATH | grep "$QUOTA_PATH" | awk '{print $4}' } EXPECT "$V0" volinfo_field $V0 'Volume Name'; EXPECT 'Created' volinfo_field $V0 'Status'; -EXPECT '8' brick_count $V0 +EXPECT '4' brick_count $V0 TEST $CLI volume start $V0; EXPECT 'Started' volinfo_field $V0 'Status'; +TEST glusterfs -s $H0 --volfile-id $V0 $M0; + +TEST mkdir -p $M0/test_dir/in_test_dir + ## ------------------------------ ## Verify quota commands ## ------------------------------ @@ -33,15 +43,37 @@ TEST $CLI volume quota $V0 limit-usage /test_dir 100MB TEST $CLI volume quota $V0 limit-usage /test_dir/in_test_dir 150MB -EXPECT "150MB" limit_on "/test_dir/in_test_dir"; +EXPECT "150.0MB" limit_on "/test_dir/in_test_dir"; TEST $CLI volume quota $V0 remove /test_dir/in_test_dir -EXPECT "100MB" limit_on "/test_dir"; +EXPECT "100.0MB" limit_on "/test_dir"; + +TEST $CLI volume quota $V0 limit-usage /test_dir 10MB +EXPECT "10.0MB" limit_on "/test_dir"; + +TEST $CLI volume quota $V0 soft-timeout 0 +TEST $CLI volume quota $V0 hard-timeout 0 -TEST $CLI volume quota $V0 disable ## ------------------------------ +## Verify quota enforcement +## ----------------------------- + +TEST ! dd if=/dev/urandom of=$M0/test_dir/1.txt bs=1M count=12 +TEST rm $M0/test_dir/1.txt + +# wait for marker's accounting to complete +EXPECT_WITHIN 10 "0Bytes" usage "/test_dir" + +TEST dd if=/dev/urandom of=$M0/test_dir/2.txt bs=1M count=8 +EXPECT "8.0MB" usage "/test_dir" +TEST rm $M0/test_dir/2.txt +## --------------------------- + +EXPECT "0Bytes" usage "/test_dir" + +TEST $CLI volume quota $V0 disable TEST $CLI volume stop $V0; EXPECT 'Stopped' volinfo_field $V0 'Status'; |