diff mbox series

[selftests] selftests: harness: avoid false negatives if test has no ASSERTs

Message ID 20211124223916.1986279-1-kuba@kernel.org
State Accepted
Commit 3abedf4646fdc0036fcb8ebbc3b600667167fafe
Headers show
Series [selftests] selftests: harness: avoid false negatives if test has no ASSERTs | expand

Commit Message

Jakub Kicinski Nov. 24, 2021, 10:39 p.m. UTC
Test can fail either immediately when ASSERT() failed or at the
end if one or more EXPECT() was not met. The exact return code
is decided based on the number of successful ASSERT()s.

If test has no ASSERT()s, however, the return code will be 0,
as if the test did not fail. Start counting ASSERT()s from 1.

Fixes: 369130b63178 ("selftests: Enhance kselftest_harness.h to print which assert failed")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
 tools/testing/selftests/kselftest_harness.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Shuah Khan Dec. 3, 2021, 6:17 p.m. UTC | #1
On 11/24/21 3:39 PM, Jakub Kicinski wrote:
> Test can fail either immediately when ASSERT() failed or at the
> end if one or more EXPECT() was not met. The exact return code
> is decided based on the number of successful ASSERT()s.
> 
> If test has no ASSERT()s, however, the return code will be 0,
> as if the test did not fail. Start counting ASSERT()s from 1.
> 
> Fixes: 369130b63178 ("selftests: Enhance kselftest_harness.h to print which assert failed")
> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
> ---
>   tools/testing/selftests/kselftest_harness.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/testing/selftests/kselftest_harness.h b/tools/testing/selftests/kselftest_harness.h
> index ae0f0f33b2a6..79a182cfa43a 100644
> --- a/tools/testing/selftests/kselftest_harness.h
> +++ b/tools/testing/selftests/kselftest_harness.h
> @@ -969,7 +969,7 @@ void __run_test(struct __fixture_metadata *f,
>   	t->passed = 1;
>   	t->skip = 0;
>   	t->trigger = 0;
> -	t->step = 0;
> +	t->step = 1;
>   	t->no_print = 0;
>   	memset(t->results->reason, 0, sizeof(t->results->reason));
>   
> 

Thank you for the fix. Will apply for the next pull request.

thanks,
-- Shuah
diff mbox series

Patch

diff --git a/tools/testing/selftests/kselftest_harness.h b/tools/testing/selftests/kselftest_harness.h
index ae0f0f33b2a6..79a182cfa43a 100644
--- a/tools/testing/selftests/kselftest_harness.h
+++ b/tools/testing/selftests/kselftest_harness.h
@@ -969,7 +969,7 @@  void __run_test(struct __fixture_metadata *f,
 	t->passed = 1;
 	t->skip = 0;
 	t->trigger = 0;
-	t->step = 0;
+	t->step = 1;
 	t->no_print = 0;
 	memset(t->results->reason, 0, sizeof(t->results->reason));