[igt-dev] [PATCH i-g-t] lib/igt_core: Ensure subtest result is skip if all dynamic subtests skip

Dixit, Ashutosh ashutosh.dixit at intel.com
Wed Dec 15 14:31:46 UTC 2021


On Wed, 15 Dec 2021 02:35:06 -0800, Petri Latvala wrote:
>
> Even though the best practices for dynamic subtests is to not execute
> the dynamic subtest at all instead of skipping, there are a couple of
> tests that to the opposite, without an easy way to construct them
> along best practices. Accomodate this with fixing the handling of
> skipping dynamic subtests so that the result of the containing subtest
> becomes a skip also if all dynamic subtests skip, not just when there
> are no dynamic subtests.

I have seen this happen and the patch should convert a success exit status
to a skip exit status so this is:

Reviewed-by: Ashutosh Dixit <ashutosh.dixit at intel.com>

>
> Signed-off-by: Petri Latvala <petri.latvala at intel.com>
> Cc: Arkadiusz Hiler <arek at hiler.eu>
> Cc: Jari Tahvanainen <jari.tahvanainen at intel.com>
> ---
>  lib/igt_core.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/lib/igt_core.c b/lib/igt_core.c
> index ec05535c..7c906675 100644
> --- a/lib/igt_core.c
> +++ b/lib/igt_core.c
> @@ -1471,7 +1471,14 @@ void igt_skip(const char *f, ...)
>	}
>
>	if (in_subtest) {
> -		/* Doing the same even if inside a dynamic subtest */
> +		if (in_dynamic_subtest) {
> +			/*
> +			 * Don't count skipping dynamic subtests, for
> +			 * the purposes of getting the result of the
> +			 * containing subtest.
> +			 */
> +			_igt_dynamic_tests_executed--;
> +		}
>		exit_subtest("SKIP");
>	} else if (test_with_subtests) {
>		skip_subtests_henceforth = SKIP;
> --
> 2.29.2
>


More information about the igt-dev mailing list