diff mbox series

tools/mvtest: ensure testcase is executable (755)

Message ID 20230906071349.3643040-1-ruansy.fnst@fujitsu.com (mailing list archive)
State New, archived
Headers show
Series tools/mvtest: ensure testcase is executable (755) | expand

Commit Message

Shiyang Ruan Sept. 6, 2023, 7:13 a.m. UTC
Some test cases lack executable permission ('x'). Before running each
test case, `./check` checks and grants them 'x' permission. However,
this always leads to a dirty git repo. And the absence of 'x' permission
in test cases is often overlooked during reviews.

Since maintainers use mvtest to assign new case, add this change for
convenience of maintainers.

Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
---
 tools/mvtest | 2 ++
 1 file changed, 2 insertions(+)

Comments

Zorro Lang Sept. 7, 2023, 10:25 a.m. UTC | #1
On Wed, Sep 06, 2023 at 03:13:49PM +0800, Shiyang Ruan wrote:
> Some test cases lack executable permission ('x'). Before running each
> test case, `./check` checks and grants them 'x' permission. However,
> this always leads to a dirty git repo. And the absence of 'x' permission
> in test cases is often overlooked during reviews.
> 
> Since maintainers use mvtest to assign new case, add this change for
> convenience of maintainers.
> 
> Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
> ---
>  tools/mvtest | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/tools/mvtest b/tools/mvtest
> index 99b154142..e839f0256 100755
> --- a/tools/mvtest
> +++ b/tools/mvtest
> @@ -28,6 +28,8 @@ append() {
>  test "${src}" != "${dest}" || die "Test \"${src}\" is the same as dest."
>  test -e "tests/${src}" || die "Test \"${src}\" does not exist."
>  test ! -e "tests/${dest}" || die "Test \"${src}\" already exists."
> +# make sure testcase is executable
> +test `stat -c '%a' tests/${src}` == 755 || chmod 755 "tests/${src}"

I think we can check and set the file permission on the target file after the
move operation done, not the source file.

And we recommend using $() to replace ``, if both of them work.

Thanks,
Zorro

>  
>  sid="$(basename "${src}")"
>  did="$(basename "${dest}")"
> -- 
> 2.42.0
>
Zorro Lang Sept. 7, 2023, 1:54 p.m. UTC | #2
On Wed, Sep 06, 2023 at 03:13:49PM +0800, Shiyang Ruan wrote:
> Some test cases lack executable permission ('x'). Before running each
> test case, `./check` checks and grants them 'x' permission. However,
> this always leads to a dirty git repo. And the absence of 'x' permission
> in test cases is often overlooked during reviews.
> 
> Since maintainers use mvtest to assign new case, add this change for
> convenience of maintainers.
> 
> Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
> ---
>  tools/mvtest | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/tools/mvtest b/tools/mvtest
> index 99b154142..e839f0256 100755
> --- a/tools/mvtest
> +++ b/tools/mvtest
> @@ -28,6 +28,8 @@ append() {
>  test "${src}" != "${dest}" || die "Test \"${src}\" is the same as dest."
>  test -e "tests/${src}" || die "Test \"${src}\" does not exist."
>  test ! -e "tests/${dest}" || die "Test \"${src}\" already exists."
> +# make sure testcase is executable
> +test `stat -c '%a' tests/${src}` == 755 || chmod 755 "tests/${src}"

(Weird, I thought I've replied this patch, but I can't find my reply anywhere.)

I said we can check and set the permission on the ${dest} file, after the
move operation is done. Due to we actually want to get a 755 ${dest} file
by running the mvtest.

Thanks,
Zorro

>  
>  sid="$(basename "${src}")"
>  did="$(basename "${dest}")"
> -- 
> 2.42.0
>
Shiyang Ruan Sept. 8, 2023, 2:13 a.m. UTC | #3
在 2023/9/7 21:54, Zorro Lang 写道:
> On Wed, Sep 06, 2023 at 03:13:49PM +0800, Shiyang Ruan wrote:
>> Some test cases lack executable permission ('x'). Before running each
>> test case, `./check` checks and grants them 'x' permission. However,
>> this always leads to a dirty git repo. And the absence of 'x' permission
>> in test cases is often overlooked during reviews.
>>
>> Since maintainers use mvtest to assign new case, add this change for
>> convenience of maintainers.
>>
>> Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
>> ---
>>   tools/mvtest | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/tools/mvtest b/tools/mvtest
>> index 99b154142..e839f0256 100755
>> --- a/tools/mvtest
>> +++ b/tools/mvtest
>> @@ -28,6 +28,8 @@ append() {
>>   test "${src}" != "${dest}" || die "Test \"${src}\" is the same as dest."
>>   test -e "tests/${src}" || die "Test \"${src}\" does not exist."
>>   test ! -e "tests/${dest}" || die "Test \"${src}\" already exists."
>> +# make sure testcase is executable
>> +test `stat -c '%a' tests/${src}` == 755 || chmod 755 "tests/${src}"
> 
> (Weird, I thought I've replied this patch, but I can't find my reply anywhere.)
> 
> I said we can check and set the permission on the ${dest} file, after the
> move operation is done. Due to we actually want to get a 755 ${dest} file
> by running the mvtest.

It seems that maillist server was down at that time.  But I received 
your reply:

 > I think we can check and set the file permission on the target file
 > after the move operation done, not the source file.
 >
 > And we recommend using $() to replace ``, if both of them work.

Then I have sent v2[1] which is using $() instead of `` and doing the 
check-then-set tests/${dest} after `git mv`, as you suggested.

[1] 
https://lore.kernel.org/fstests/20230907113501.4119112-1-ruansy.fnst@fujitsu.com/


--
Thanks,
Ruan.

> 
> Thanks,
> Zorro
> 
>>   
>>   sid="$(basename "${src}")"
>>   did="$(basename "${dest}")"
>> -- 
>> 2.42.0
>>
>
Zorro Lang Sept. 8, 2023, 4:02 a.m. UTC | #4
On Fri, Sep 08, 2023 at 10:13:01AM +0800, Shiyang Ruan wrote:
> 
> 
> 在 2023/9/7 21:54, Zorro Lang 写道:
> > On Wed, Sep 06, 2023 at 03:13:49PM +0800, Shiyang Ruan wrote:
> > > Some test cases lack executable permission ('x'). Before running each
> > > test case, `./check` checks and grants them 'x' permission. However,
> > > this always leads to a dirty git repo. And the absence of 'x' permission
> > > in test cases is often overlooked during reviews.
> > > 
> > > Since maintainers use mvtest to assign new case, add this change for
> > > convenience of maintainers.
> > > 
> > > Signed-off-by: Shiyang Ruan <ruansy.fnst@fujitsu.com>
> > > ---
> > >   tools/mvtest | 2 ++
> > >   1 file changed, 2 insertions(+)
> > > 
> > > diff --git a/tools/mvtest b/tools/mvtest
> > > index 99b154142..e839f0256 100755
> > > --- a/tools/mvtest
> > > +++ b/tools/mvtest
> > > @@ -28,6 +28,8 @@ append() {
> > >   test "${src}" != "${dest}" || die "Test \"${src}\" is the same as dest."
> > >   test -e "tests/${src}" || die "Test \"${src}\" does not exist."
> > >   test ! -e "tests/${dest}" || die "Test \"${src}\" already exists."
> > > +# make sure testcase is executable
> > > +test `stat -c '%a' tests/${src}` == 755 || chmod 755 "tests/${src}"
> > 
> > (Weird, I thought I've replied this patch, but I can't find my reply anywhere.)
> > 
> > I said we can check and set the permission on the ${dest} file, after the
> > move operation is done. Due to we actually want to get a 755 ${dest} file
> > by running the mvtest.
> 
> It seems that maillist server was down at that time.  But I received your
> reply:

Recently I missed some emails/patches, I don't know if it was a problem of
fstests@ or redhat mail service. If I didn't reply a patch for long time,
please feel free to ping me or the ping fstests list.

Thanks,
Zorro

> 
> > I think we can check and set the file permission on the target file
> > after the move operation done, not the source file.
> >
> > And we recommend using $() to replace ``, if both of them work.
> 
> Then I have sent v2[1] which is using $() instead of `` and doing the
> check-then-set tests/${dest} after `git mv`, as you suggested.
> 
> [1] https://lore.kernel.org/fstests/20230907113501.4119112-1-ruansy.fnst@fujitsu.com/
> 
> 
> --
> Thanks,
> Ruan.
> 
> > 
> > Thanks,
> > Zorro
> > 
> > >   sid="$(basename "${src}")"
> > >   did="$(basename "${dest}")"
> > > -- 
> > > 2.42.0
> > > 
> > 
>
diff mbox series

Patch

diff --git a/tools/mvtest b/tools/mvtest
index 99b154142..e839f0256 100755
--- a/tools/mvtest
+++ b/tools/mvtest
@@ -28,6 +28,8 @@  append() {
 test "${src}" != "${dest}" || die "Test \"${src}\" is the same as dest."
 test -e "tests/${src}" || die "Test \"${src}\" does not exist."
 test ! -e "tests/${dest}" || die "Test \"${src}\" already exists."
+# make sure testcase is executable
+test `stat -c '%a' tests/${src}` == 755 || chmod 755 "tests/${src}"
 
 sid="$(basename "${src}")"
 did="$(basename "${dest}")"