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

Umang Jain umang.jain at ideasonboard.com
Tue Aug 17 14:26:45 CEST 2021


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);
+
 	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:
-- 
2.31.1



More information about the libcamera-devel mailing list