toaster.lists.yoctoproject.org archive mirror
 help / color / mirror / Atom feed
* [Toaster] bitbake: toaster: fix pytest build test execution and test discovery
@ 2023-11-30 13:59 Alexander Lussier-Cullen
  2023-11-30 22:57 ` Richard Purdie
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Lussier-Cullen @ 2023-11-30 13:59 UTC (permalink / raw)
  To: toaster; +Cc: Alexander Lussier-Cullen

Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com>
---
 bitbake/lib/toaster/pytest.ini                          | 5 +----
 bitbake/lib/toaster/tests/builds/test_core_image_min.py | 2 ++
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/bitbake/lib/toaster/pytest.ini b/bitbake/lib/toaster/pytest.ini
index f07076b7ea..071c65fcd5 100644
--- a/bitbake/lib/toaster/pytest.ini
+++ b/bitbake/lib/toaster/pytest.ini
@@ -1,9 +1,5 @@
 # -- FILE: pytest.ini (or tox.ini)
 [pytest]
-DJANGO_SETTINGS_MODULE = toastermain.settings_test
-
-python_files = db/test_*.py commands/test_*.py views/test_*.py browser/test_*.py functional/test_*.py
-
 # --create-db - force re creation of the test database
 # https://pytest-django.readthedocs.io/en/latest/database.html#create-db-force-re-creation-of-the-test-database
 
@@ -17,3 +13,4 @@ addopts = --create-db --html="Toaster Tests Report.html" --self-contained-html
 # https://pypi.org/project/pytest-env/
 env =
     TOASTER_BUILDSERVER=1
+    DJANGO_SETTINGS_MODULE=toastermain.settings_test
diff --git a/bitbake/lib/toaster/tests/builds/test_core_image_min.py b/bitbake/lib/toaster/tests/builds/test_core_image_min.py
index 9cdaa15f98..ca388eabe7 100644
--- a/bitbake/lib/toaster/tests/builds/test_core_image_min.py
+++ b/bitbake/lib/toaster/tests/builds/test_core_image_min.py
@@ -10,6 +10,7 @@
 # Ionut Chisanovici, Paul Eggleton and Cristian Iorga
 
 import os
+import pytest
 
 from django.db.models import Q
 
@@ -21,6 +22,7 @@ from orm.models import CustomImagePackage
 from tests.builds.buildtest import BuildTest
 
 
+@pytest.mark.django_db(True)
 class BuildCoreImageMinimal(BuildTest):
     """Build core-image-minimal and test the results"""
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Toaster] bitbake: toaster: fix pytest build test execution and test discovery
  2023-11-30 13:59 [Toaster] bitbake: toaster: fix pytest build test execution and test discovery Alexander Lussier-Cullen
@ 2023-11-30 22:57 ` Richard Purdie
  2023-12-01 14:56   ` Alexander Lussier-Cullen
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2023-11-30 22:57 UTC (permalink / raw)
  To: Alexander Lussier-Cullen, toaster

Hi Alexander,

On Thu, 2023-11-30 at 08:59 -0500, Alexander Lussier-Cullen wrote:
> Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com>
> ---
>  bitbake/lib/toaster/pytest.ini                          | 5 +----
>  bitbake/lib/toaster/tests/builds/test_core_image_min.py | 2 ++
>  2 files changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/bitbake/lib/toaster/pytest.ini b/bitbake/lib/toaster/pytest.ini
> index f07076b7ea..071c65fcd5 100644
> --- a/bitbake/lib/toaster/pytest.ini
> +++ b/bitbake/lib/toaster/pytest.ini
> @@ -1,9 +1,5 @@
>  # -- FILE: pytest.ini (or tox.ini)
>  [pytest]
> -DJANGO_SETTINGS_MODULE = toastermain.settings_test
> -
> -python_files = db/test_*.py commands/test_*.py views/test_*.py browser/test_*.py functional/test_*.py
> -
>  # --create-db - force re creation of the test database
>  # https://pytest-django.readthedocs.io/en/latest/database.html#create-db-force-re-creation-of-the-test-database
>  
> @@ -17,3 +13,4 @@ addopts = --create-db --html="Toaster Tests Report.html" --self-contained-html
>  # https://pypi.org/project/pytest-env/
>  env =
>      TOASTER_BUILDSERVER=1
> +    DJANGO_SETTINGS_MODULE=toastermain.settings_test

I tested this patch and it definitely seems to help.

https://autobuilder.yoctoproject.org/typhoon/#/builders/161/builds/12/steps/11/logs/stdio

I replied to Alassane earlier about some of the failures in test run
but I think this did fix several of them.

Can I ask that you tweak the commit message to explain what is being
fixed here, just so we have the context in the commit logs please.


> diff --git a/bitbake/lib/toaster/tests/builds/test_core_image_min.py b/bitbake/lib/toaster/tests/builds/test_core_image_min.py
> index 9cdaa15f98..ca388eabe7 100644
> --- a/bitbake/lib/toaster/tests/builds/test_core_image_min.py
> +++ b/bitbake/lib/toaster/tests/builds/test_core_image_min.py
> @@ -10,6 +10,7 @@
>  # Ionut Chisanovici, Paul Eggleton and Cristian Iorga
>  
>  import os
> +import pytest
>  
>  from django.db.models import Q
>  
> @@ -21,6 +22,7 @@ from orm.models import CustomImagePackage
>  from tests.builds.buildtest import BuildTest
>  
>  
> +@pytest.mark.django_db(True)
>  class BuildCoreImageMinimal(BuildTest):
>      """Build core-image-minimal and test the results"""
>  

I'd suggest this part of then change be split into a separate patch
with an explanation of what is being fixed. It does appear to fix the
database locked issues we were seeing which is great.

Cheers,

Richard






^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Toaster] bitbake: toaster: fix pytest build test execution and test discovery
  2023-11-30 22:57 ` Richard Purdie
@ 2023-12-01 14:56   ` Alexander Lussier-Cullen
  0 siblings, 0 replies; 3+ messages in thread
From: Alexander Lussier-Cullen @ 2023-12-01 14:56 UTC (permalink / raw)
  To: Richard Purdie; +Cc: toaster

[-- Attachment #1: Type: text/plain, Size: 3254 bytes --]

Hello, 

I've updated my commit messages and sent in the new patches. 
However, this patch is meant to fix pytest runs, which the autobuilder isn't using yet. 
You'll also need the update on the autobuilder end from [ https://patchwork.yoctoproject.org/project/yocto/patch/20231201144928.4191-1-alexander.lussier-cullen@savoirfairelinux.com/ | this ] patch to have it use pytest instead of the django tools. 

Thanks, 
Alex 



From: "Richard Purdie" <richard.purdie@linuxfoundation.org> 
To: "Alexander Lussier-Cullen" <alexander.lussier-cullen@savoirfairelinux.com>, toaster@lists.yoctoproject.org 
Sent: Thursday, November 30, 2023 5:57:39 PM 
Subject: Re: [Toaster] bitbake: toaster: fix pytest build test execution and test discovery 

Hi Alexander, 

On Thu, 2023-11-30 at 08:59 -0500, Alexander Lussier-Cullen wrote: 
> Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com> 
> --- 
> bitbake/lib/toaster/pytest.ini | 5 +---- 
> bitbake/lib/toaster/tests/builds/test_core_image_min.py | 2 ++ 
> 2 files changed, 3 insertions(+), 4 deletions(-) 
> 
> diff --git a/bitbake/lib/toaster/pytest.ini b/bitbake/lib/toaster/pytest.ini 
> index f07076b7ea..071c65fcd5 100644 
> --- a/bitbake/lib/toaster/pytest.ini 
> +++ b/bitbake/lib/toaster/pytest.ini 
> @@ -1,9 +1,5 @@ 
> # -- FILE: pytest.ini (or tox.ini) 
> [pytest] 
> -DJANGO_SETTINGS_MODULE = toastermain.settings_test 
> - 
> -python_files = db/test_*.py commands/test_*.py views/test_*.py browser/test_*.py functional/test_*.py 
> - 
> # --create-db - force re creation of the test database 
> # https://pytest-django.readthedocs.io/en/latest/database.html#create-db-force-re-creation-of-the-test-database 
> 
> @@ -17,3 +13,4 @@ addopts = --create-db --html="Toaster Tests Report.html" --self-contained-html 
> # https://pypi.org/project/pytest-env/ 
> env = 
> TOASTER_BUILDSERVER=1 
> + DJANGO_SETTINGS_MODULE=toastermain.settings_test 

I tested this patch and it definitely seems to help. 

https://autobuilder.yoctoproject.org/typhoon/#/builders/161/builds/12/steps/11/logs/stdio 

I replied to Alassane earlier about some of the failures in test run 
but I think this did fix several of them. 

Can I ask that you tweak the commit message to explain what is being 
fixed here, just so we have the context in the commit logs please. 


> diff --git a/bitbake/lib/toaster/tests/builds/test_core_image_min.py b/bitbake/lib/toaster/tests/builds/test_core_image_min.py 
> index 9cdaa15f98..ca388eabe7 100644 
> --- a/bitbake/lib/toaster/tests/builds/test_core_image_min.py 
> +++ b/bitbake/lib/toaster/tests/builds/test_core_image_min.py 
> @@ -10,6 +10,7 @@ 
> # Ionut Chisanovici, Paul Eggleton and Cristian Iorga 
> 
> import os 
> +import pytest 
> 
> from django.db.models import Q 
> 
> @@ -21,6 +22,7 @@ from orm.models import CustomImagePackage 
> from tests.builds.buildtest import BuildTest 
> 
> 
> +@pytest.mark.django_db(True) 
> class BuildCoreImageMinimal(BuildTest): 
> """Build core-image-minimal and test the results""" 
> 

I'd suggest this part of then change be split into a separate patch 
with an explanation of what is being fixed. It does appear to fix the 
database locked issues we were seeing which is great. 

Cheers, 

Richard 


[-- Attachment #2: Type: text/html, Size: 4676 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-12-01 14:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-30 13:59 [Toaster] bitbake: toaster: fix pytest build test execution and test discovery Alexander Lussier-Cullen
2023-11-30 22:57 ` Richard Purdie
2023-12-01 14:56   ` Alexander Lussier-Cullen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).