From: Pavel Reichl <preichl@redhat.com>
To: fstests@vger.kernel.org
Subject: [PATCH v3 1/4] common/rc: Add _require_{chown,chmod}()
Date: Thu, 15 Apr 2021 11:49:02 +0200 [thread overview]
Message-ID: <20210415094905.61853-2-preichl@redhat.com> (raw)
In-Reply-To: <20210415094905.61853-1-preichl@redhat.com>
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
+}
+
# 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
--
2.30.2
next prev parent reply other threads:[~2021-04-15 9:49 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-15 9:49 [PATCH v3 0/4] Fix some tests that fail for exfat FS Pavel Reichl
2021-04-15 9:49 ` Pavel Reichl [this message]
2021-04-18 12:50 ` [PATCH v3 1/4] common/rc: Add _require_{chown,chmod}() Eryu Guan
2021-04-19 22:06 ` Pavel Reichl
2021-04-15 9:49 ` [PATCH v3 2/4] common: hide permision warning from mkswap for exfat Pavel Reichl
2021-04-15 9:49 ` [PATCH v3 3/4] generic/554: hide permision warning on exfat Pavel Reichl
2021-04-15 9:49 ` [PATCH v3 4/4] generic/003: Amend the test for exfat Pavel Reichl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210415094905.61853-2-preichl@redhat.com \
--to=preichl@redhat.com \
--cc=fstests@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.