[libcamera-devel] [PATCH 1/2] libtest: camera_test: Plumb constructor to set LIBCAMERA_IPA_FORCE_ISOLATION

Kieran Bingham kieran.bingham at ideasonboard.com
Tue Aug 17 14:29:07 CEST 2021


Hi Umang,

On 17/08/2021 13:26, Umang Jain wrote:
> Some tests might require to have LIBCAMERA_IPA_FORCE_ISOLATION set
> to ensure they can test the IPA running in isolated mode. These tests
> are likely to leverage CameraTest. The environment variable should
> be set before CameraManager::start() call which happens in CameraTest's
> constructor. Hence, plumb the constructor with a flag so that the
> LIBCAMERA_IPA_FORCE_ISOLATION can be set before CameraManager::start().
> 
> Signed-off-by: Umang Jain <umang.jain at ideasonboard.com>
> ---
>  test/libtest/camera_test.cpp | 5 ++++-
>  test/libtest/camera_test.h   | 2 +-
>  2 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/test/libtest/camera_test.cpp b/test/libtest/camera_test.cpp
> index 2ae4d677..9cbc4d82 100644
> --- a/test/libtest/camera_test.cpp
> +++ b/test/libtest/camera_test.cpp
> @@ -13,10 +13,13 @@
>  using namespace libcamera;
>  using namespace std;
>  
> -CameraTest::CameraTest(const char *name)
> +CameraTest::CameraTest(const char *name, bool isolate)
>  {
>  	cm_ = new CameraManager();
>  
> +	if (isolate)
> +		setenv("LIBCAMERA_IPA_FORCE_ISOLATION", "TRUE", 1);
> +

Ahh nice. Good so we can now isolate IPA's from tests!

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>



>  	if (cm_->start()) {
>  		cerr << "Failed to start camera manager" << endl;
>  		status_ = TestFail;
> diff --git a/test/libtest/camera_test.h b/test/libtest/camera_test.h
> index 7939798f..f56e343e 100644
> --- a/test/libtest/camera_test.h
> +++ b/test/libtest/camera_test.h
> @@ -17,7 +17,7 @@ using namespace libcamera;
>  class CameraTest
>  {
>  public:
> -	CameraTest(const char *name);
> +	CameraTest(const char *name, bool isolate = false);
>  	~CameraTest();
>  
>  protected:
> 


More information about the libcamera-devel mailing list