diff mbox series

[2/2] core-image-ptest.bb: use ?= for PTEST_EXPECT_FAILURE

Message ID 20251205081008.320482-2-Qi.Chen@windriver.com
State New
Headers show
Series [1/2] oeqa/runtime/cases/ptest.py: use to_boolean for PTEST_EXPECT_FAILURE | expand

Commit Message

ChenQi Dec. 5, 2025, 8:10 a.m. UTC
From: Chen Qi <Qi.Chen@windriver.com>

We need to allow users to easily override this value in local.conf.
This has the benefit that 'bitbake core-image-ptest-xxx:do_testimage'
fails when expected.

As an example, I used 'bitbake core-image-ptest-util-linux:do_testimage'.
It succeeded with warning message. I didn't notice the warning message.
I saw the command succeeded and I tought util-linux ptest is OK. But
in actual fact, the ptest failed. It's the PTEST_EXPECT_FAILURE setting
in this core-image-ptest.bb that is not giving me error.

With this change, I can put PTEST_EXPECT_FAILURE = "1" in my local.conf,
and I can easily see if 'core-image-ptest-xxx:do_testimage' succeeds or
not.

The PTEST_EXPECT_FAILURE change should result in testdata regenerated
because ptest.py test case's behavior is affected by it.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
 meta/recipes-core/images/core-image-ptest.bb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Marko, Peter Dec. 5, 2025, 8:26 a.m. UTC | #1
> -----Original Message-----
> From: openembedded-core@lists.openembedded.org <openembedded-
> core@lists.openembedded.org> On Behalf Of Chen Qi via
> lists.openembedded.org
> Sent: Friday, December 5, 2025 9:10
> To: openembedded-core@lists.openembedded.org
> Subject: [OE-core][PATCH 2/2] core-image-ptest.bb: use ?= for
> PTEST_EXPECT_FAILURE
> 
> From: Chen Qi <Qi.Chen@windriver.com>
> 
> We need to allow users to easily override this value in local.conf.
> This has the benefit that 'bitbake core-image-ptest-xxx:do_testimage'
> fails when expected.
> 
> As an example, I used 'bitbake core-image-ptest-util-linux:do_testimage'.
> It succeeded with warning message. I didn't notice the warning message.
> I saw the command succeeded and I tought util-linux ptest is OK. But
> in actual fact, the ptest failed. It's the PTEST_EXPECT_FAILURE setting
> in this core-image-ptest.bb that is not giving me error.
> 
> With this change, I can put PTEST_EXPECT_FAILURE = "1" in my local.conf,

This comment should be probably "0".

> and I can easily see if 'core-image-ptest-xxx:do_testimage' succeeds or
> not.
> 
> The PTEST_EXPECT_FAILURE change should result in testdata regenerated
> because ptest.py test case's behavior is affected by it.
> 
> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
> ---
>  meta/recipes-core/images/core-image-ptest.bb | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-core/images/core-image-ptest.bb b/meta/recipes-
> core/images/core-image-ptest.bb
> index 017f05f81b..b554964d20 100644
> --- a/meta/recipes-core/images/core-image-ptest.bb
> +++ b/meta/recipes-core/images/core-image-ptest.bb
> @@ -42,7 +42,8 @@ QB_MEM:virtclass-mcextend-tcl = "-m 5100"
>  TEST_SUITES = "ping ssh parselogs ptest"
> 
>  # Sadly at the moment the full set of ptests is not robust enough and sporadically
> fails in random places
> -PTEST_EXPECT_FAILURE = "1"
> +PTEST_EXPECT_FAILURE ?= "1"
> +write_image_test_data[vardeps] += "PTEST_EXPECT_FAILURE"
> 
>  python () {
>      if not d.getVar("MCNAME"):
> --
> 2.43.0
ChenQi Dec. 5, 2025, 8:31 a.m. UTC | #2
On 12/5/25 16:26, Marko, Peter wrote:
>
>> -----Original Message-----
>> From: openembedded-core@lists.openembedded.org <openembedded-
>> core@lists.openembedded.org> On Behalf Of Chen Qi via
>> lists.openembedded.org
>> Sent: Friday, December 5, 2025 9:10
>> To: openembedded-core@lists.openembedded.org
>> Subject: [OE-core][PATCH 2/2] core-image-ptest.bb: use ?= for
>> PTEST_EXPECT_FAILURE
>>
>> From: Chen Qi <Qi.Chen@windriver.com>
>>
>> We need to allow users to easily override this value in local.conf.
>> This has the benefit that 'bitbake core-image-ptest-xxx:do_testimage'
>> fails when expected.
>>
>> As an example, I used 'bitbake core-image-ptest-util-linux:do_testimage'.
>> It succeeded with warning message. I didn't notice the warning message.
>> I saw the command succeeded and I tought util-linux ptest is OK. But
>> in actual fact, the ptest failed. It's the PTEST_EXPECT_FAILURE setting
>> in this core-image-ptest.bb that is not giving me error.
>>
>> With this change, I can put PTEST_EXPECT_FAILURE = "1" in my local.conf,
> This comment should be probably "0".

You're right. I'll send out V2. Thanks for spotting it.

Regards,
Qi

>
>> and I can easily see if 'core-image-ptest-xxx:do_testimage' succeeds or
>> not.
>>
>> The PTEST_EXPECT_FAILURE change should result in testdata regenerated
>> because ptest.py test case's behavior is affected by it.
>>
>> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
>> ---
>>   meta/recipes-core/images/core-image-ptest.bb | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/recipes-core/images/core-image-ptest.bb b/meta/recipes-
>> core/images/core-image-ptest.bb
>> index 017f05f81b..b554964d20 100644
>> --- a/meta/recipes-core/images/core-image-ptest.bb
>> +++ b/meta/recipes-core/images/core-image-ptest.bb
>> @@ -42,7 +42,8 @@ QB_MEM:virtclass-mcextend-tcl = "-m 5100"
>>   TEST_SUITES = "ping ssh parselogs ptest"
>>
>>   # Sadly at the moment the full set of ptests is not robust enough and sporadically
>> fails in random places
>> -PTEST_EXPECT_FAILURE = "1"
>> +PTEST_EXPECT_FAILURE ?= "1"
>> +write_image_test_data[vardeps] += "PTEST_EXPECT_FAILURE"
>>
>>   python () {
>>       if not d.getVar("MCNAME"):
>> --
>> 2.43.0
diff mbox series

Patch

diff --git a/meta/recipes-core/images/core-image-ptest.bb b/meta/recipes-core/images/core-image-ptest.bb
index 017f05f81b..b554964d20 100644
--- a/meta/recipes-core/images/core-image-ptest.bb
+++ b/meta/recipes-core/images/core-image-ptest.bb
@@ -42,7 +42,8 @@  QB_MEM:virtclass-mcextend-tcl = "-m 5100"
 TEST_SUITES = "ping ssh parselogs ptest"
 
 # Sadly at the moment the full set of ptests is not robust enough and sporadically fails in random places
-PTEST_EXPECT_FAILURE = "1"
+PTEST_EXPECT_FAILURE ?= "1"
+write_image_test_data[vardeps] += "PTEST_EXPECT_FAILURE"
 
 python () {
     if not d.getVar("MCNAME"):