Re: [PATCH v2] selftests: warn if failure is due to lack of executable bit

From: Shuah Khan
Date: Wed Aug 09 2017 - 16:47:33 EST


On 08/08/2017 11:50 AM, Luis R. Rodriguez wrote:
> On Thu, Aug 03, 2017 at 01:24:36PM -0700, Luis R. Rodriguez wrote:
>> Executing selftests is fragile as if someone forgot to set a secript
>> as executable the test will fail, and you won't know for sure if the
>> failure was caused by the lack of proper permissions or something else.
>>
>> Setting scripts as executable is required, this also enable folks to
>> execute selftests as independent units.
>>
>> Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxxx>
>> ---
>> tools/testing/selftests/lib.mk | 7 ++++++-
>> 1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
>> index 959273c3a52e..e71f8e4633b1 100644
>> --- a/tools/testing/selftests/lib.mk
>> +++ b/tools/testing/selftests/lib.mk
>> @@ -14,7 +14,12 @@ all: $(TEST_GEN_PROGS) $(TEST_GEN_PROGS_EXTENDED) $(TEST_GEN_FILES)
>> define RUN_TESTS
>> @for TEST in $(TEST_GEN_PROGS) $(TEST_PROGS); do \
>> BASENAME_TEST=`basename $$TEST`; \
>> - cd `dirname $$TEST`; (./$$BASENAME_TEST && echo "selftests: $$BASENAME_TEST [PASS]") || echo "selftests: $$BASENAME_TEST [FAIL]"; cd -;\
>> + if [ ! -x $$BASENAME_TEST ]; then \
>> + echo "selftests: Warning: file $$BASENAME_TEST is not executable, correct this.";\
>> + echo "selftests: $$BASENAME_TEST [FAIL]"; \
>> + else \
>> + cd `dirname $$TEST`; (./$$BASENAME_TEST && echo "selftests: $$BASENAME_TEST [PASS]") || echo "selftests: $$BASENAME_TEST [FAIL]"; cd -;\
>> + fi; \
>> done;
>> endef
>>
>
> *poke*
>
> Luis
>
>

Applied to linux-kselftest next for 4.14-rc1.

thanks,
-- Shuah