Message ID | 20210415094905.61853-2-preichl@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Fix some tests that fail for exfat FS | expand |
On Thu, Apr 15, 2021 at 11:49:02AM +0200, Pavel Reichl wrote: > Add helper functions that ensure that test is only executed on file > systems that implement chown, chmod and symbolic links. > > Fixed test are: generic/{87,88,125,126,128,193,314,317,355,597,598} > > Signed-off-by: Pavel Reichl <preichl@redhat.com> > --- > common/rc | 23 +++++++++++++++++++++++ > tests/generic/087 | 1 + > tests/generic/088 | 1 + > tests/generic/125 | 1 + > tests/generic/126 | 1 + > tests/generic/128 | 1 + > tests/generic/193 | 1 + > tests/generic/314 | 1 + > tests/generic/317 | 1 + > tests/generic/355 | 1 + > tests/generic/597 | 1 + > tests/generic/598 | 1 + > 12 files changed, 34 insertions(+) > > diff --git a/common/rc b/common/rc > index 23f86ce6..be292aaf 100644 > --- a/common/rc > +++ b/common/rc > @@ -2115,6 +2115,29 @@ _require_user() > [ "$?" == "0" ] || _notrun "$qa_user cannot execute commands." > } > > +# check for a chown support > +# > +_require_chown() > +{ > + rnd_uid=4242 > + > + _require_test > + > + local file="$TEST_DIR/chown_testfile" > + touch $file > + chown ${rnd_uid}:${rnd_uid} $file >/dev/null 2>&1 \ > + || _notrun "chown is not supported ${FSTYP}" > + rm -f $file > +} > + > + > +# check for a chmod support > +# > +_require_chmod() > +{ > + _require_chown It's not clear to me why _require_chown also works for _require_chmod, other than actually doing chmod test. Some comments would be good. Thanks, Eryu P.S. I've applied other patches in this patchset, thanks for the fixes!
On 4/18/21 2:50 PM, Eryu Guan wrote: > On Thu, Apr 15, 2021 at 11:49:02AM +0200, Pavel Reichl wrote: ... >> +# >> +_require_chmod() >> +{ >> + _require_chown > > It's not clear to me why _require_chown also works for _require_chmod, > other than actually doing chmod test. Some comments would be good. Yeah, sorry about that. I just sent v4 of this patch that attempts to implement _require_chmod() properly. > > Thanks, > Eryu > > P.S. I've applied other patches in this patchset, thanks for the fixes! Awesome, thanks for the reviews. >
diff --git a/common/rc b/common/rc index 23f86ce6..be292aaf 100644 --- a/common/rc +++ b/common/rc @@ -2115,6 +2115,29 @@ _require_user() [ "$?" == "0" ] || _notrun "$qa_user cannot execute commands." } +# check for a chown support +# +_require_chown() +{ + rnd_uid=4242 + + _require_test + + local file="$TEST_DIR/chown_testfile" + touch $file + chown ${rnd_uid}:${rnd_uid} $file >/dev/null 2>&1 \ + || _notrun "chown is not supported ${FSTYP}" + rm -f $file +} + + +# check for a chmod support +# +_require_chmod() +{ + _require_chown +} + # check for a group on the machine, fsgqa as default # _require_group() diff --git a/tests/generic/087 b/tests/generic/087 index 1f30dbf4..c3576117 100755 --- a/tests/generic/087 +++ b/tests/generic/087 @@ -37,6 +37,7 @@ _cleanup() # real QA test starts here _supported_fs generic _require_test +_require_chown QA_FS_PERMS=$here/src/fs_perms diff --git a/tests/generic/088 b/tests/generic/088 index 9388a083..ad99bd7e 100755 --- a/tests/generic/088 +++ b/tests/generic/088 @@ -29,6 +29,7 @@ _filter() # real QA test starts here _supported_fs generic _require_test +_require_chown path=$TEST_DIR/t_access $here/src/t_access_root $path | tee $seqres.full | _filter diff --git a/tests/generic/125 b/tests/generic/125 index e84248d3..8c8f5cd7 100755 --- a/tests/generic/125 +++ b/tests/generic/125 @@ -25,6 +25,7 @@ _supported_fs generic _require_test _require_user _require_odirect +_require_chmod TESTDIR=$TEST_DIR/ftrunc TESTFILE=$TESTDIR/ftrunc.tmp diff --git a/tests/generic/126 b/tests/generic/126 index ac25d294..636ca00d 100755 --- a/tests/generic/126 +++ b/tests/generic/126 @@ -27,6 +27,7 @@ _cleanup() # real QA test starts here _supported_fs generic _require_test +_require_chown QA_FS_PERMS=$here/src/fs_perms diff --git a/tests/generic/128 b/tests/generic/128 index b3e49eff..c1eae77a 100755 --- a/tests/generic/128 +++ b/tests/generic/128 @@ -24,6 +24,7 @@ _supported_fs generic _require_scratch _require_user +_require_chmod _scratch_mkfs >/dev/null 2>&1 _scratch_mount "-o nosuid" diff --git a/tests/generic/193 b/tests/generic/193 index 3125efdd..fd0ebbf6 100755 --- a/tests/generic/193 +++ b/tests/generic/193 @@ -56,6 +56,7 @@ _supported_fs generic _require_test _require_user +_require_chown test_root=$TEST_DIR/$seq.$$.root test_user=$TEST_DIR/$seq.$$.user diff --git a/tests/generic/314 b/tests/generic/314 index 03df81ce..540f0feb 100755 --- a/tests/generic/314 +++ b/tests/generic/314 @@ -29,6 +29,7 @@ _cleanup() _supported_fs generic _require_test _require_user +_require_chown rm -rf $TEST_DIR/$seq-dir diff --git a/tests/generic/317 b/tests/generic/317 index 29c37a57..289dfabe 100755 --- a/tests/generic/317 +++ b/tests/generic/317 @@ -45,6 +45,7 @@ _require_scratch _require_user _require_ugid_map _require_userns +_require_chown qa_user_id=`id -u $qa_user` _filter_output() diff --git a/tests/generic/355 b/tests/generic/355 index 161dd042..74fba0f9 100755 --- a/tests/generic/355 +++ b/tests/generic/355 @@ -32,6 +32,7 @@ _supported_fs generic _require_test _require_user _require_odirect +_require_chown testfile=$TEST_DIR/$seq.test rm -f $testfile diff --git a/tests/generic/597 b/tests/generic/597 index ba769d73..6602dc70 100755 --- a/tests/generic/597 +++ b/tests/generic/597 @@ -43,6 +43,7 @@ _require_sysctl_variable fs.protected_hardlinks _require_user fsgqa2 # Do this SECOND so that qa_user is fsgqa, and _user_do uses that account _require_user fsgqa +_require_symlinks OWNER=fsgqa2 OTHER=fsgqa diff --git a/tests/generic/598 b/tests/generic/598 index 6b765275..230c3ac7 100755 --- a/tests/generic/598 +++ b/tests/generic/598 @@ -43,6 +43,7 @@ _require_sysctl_variable fs.protected_fifos _require_user fsgqa2 # Do this SECOND so that qa_user is fsgqa, and _user_do uses that account _require_user fsgqa +_require_chmod USER1=fsgqa2 USER2=fsgqa
Add helper functions that ensure that test is only executed on file systems that implement chown, chmod and symbolic links. Fixed test are: generic/{87,88,125,126,128,193,314,317,355,597,598} Signed-off-by: Pavel Reichl <preichl@redhat.com> --- common/rc | 23 +++++++++++++++++++++++ tests/generic/087 | 1 + tests/generic/088 | 1 + tests/generic/125 | 1 + tests/generic/126 | 1 + tests/generic/128 | 1 + tests/generic/193 | 1 + tests/generic/314 | 1 + tests/generic/317 | 1 + tests/generic/355 | 1 + tests/generic/597 | 1 + tests/generic/598 | 1 + 12 files changed, 34 insertions(+)