From 8bfec1f4c653c631722416261dbfd194a6f18d90 Mon Sep 17 00:00:00 2001 From: HUMBLE Date: Tue, 12 Aug 2025 21:37:31 +0800 Subject: [PATCH] new unittests in arkweb_utils.cpp Signed-off-by: HUMBLE --- arkweb_utils/arkweb_utils.cpp | 6 ++++- arkweb_utils/arkweb_utils.h | 5 ++++ .../arkweb_utils_test/arkweb_utils_test.cpp | 27 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/arkweb_utils/arkweb_utils.cpp b/arkweb_utils/arkweb_utils.cpp index 5ce239c9a..dc8727153 100644 --- a/arkweb_utils/arkweb_utils.cpp +++ b/arkweb_utils/arkweb_utils.cpp @@ -302,7 +302,7 @@ std::string GetArkwebInstallPath() { } void* ArkWebBridgeHelperLoadLibFile(int openMode, const std::string& libFilePath, - bool isPrintLog = true) { + bool isPrintLog) { void* libFileHandler = ::dlopen(libFilePath.c_str(), openMode); if (!libFileHandler) { if (isPrintLog) { @@ -384,4 +384,8 @@ void* ArkWebBridgeHelperSharedInit(bool isPreDlopen, bool runMode) { return libFileHandler; } + +void setWebEngineInitFlag(bool flag) { + g_webEngineInitFlag = flag; +} } \ No newline at end of file diff --git a/arkweb_utils/arkweb_utils.h b/arkweb_utils/arkweb_utils.h index 8439b2478..297bb4577 100644 --- a/arkweb_utils/arkweb_utils.h +++ b/arkweb_utils/arkweb_utils.h @@ -85,4 +85,9 @@ ARKWEB_EXPORT void PreloadArkWebLibForBrowser(); ARKWEB_EXPORT void LogForUnsupportedFunc(ArkWebEngineVersion miniVersion, const char* msg); ARKWEB_EXPORT void* ArkWebBridgeHelperSharedInit(bool isPreDlopen, bool runMode = true); + +ARKWEB_EXPORT void setWebEngineInitFlag(bool flag); +ARKWEB_EXPORT std::string GetArkwebLibPathForMock(); +ARKWEB_EXPORT void* ArkWebBridgeHelperLoadLibFile(int openMode, const std::string& libFilePath, + bool isPrintLog = true); } // namespace OHOS::ArkWeb \ No newline at end of file diff --git a/test/unittest/arkweb_utils_test/arkweb_utils_test.cpp b/test/unittest/arkweb_utils_test/arkweb_utils_test.cpp index 4f217e381..1af8fd9c2 100644 --- a/test/unittest/arkweb_utils_test/arkweb_utils_test.cpp +++ b/test/unittest/arkweb_utils_test/arkweb_utils_test.cpp @@ -20,6 +20,7 @@ #include "arkweb_utils.h" #include "parameters.h" +#include using namespace testing::ext; @@ -89,6 +90,14 @@ TEST(arkweb_utils_test, setActiveWebEngineVersion003) { EXPECT_EQ(getAppWebEngineVersion(), ArkWebEngineVersion::M132); } +TEST(arkweb_utils_test, setActiveWebEngineVersion005) { + setWebEngineInitFlag(true); + setActiveWebEngineVersion(ArkWebEngineVersion::M114); + + EXPECT_EQ(getAppWebEngineVersion(), ArkWebEngineVersion::SYSTEM_DEFAULT); + setWebEngineInitFlag(false); +} + TEST(arkweb_utils_test, setActiveWebEngineVersion004) { setActiveWebEngineVersion(ArkWebEngineVersion::SYSTEM_DEFAULT); setActiveWebEngineVersion(static_cast(3)); @@ -243,4 +252,22 @@ TEST(arkweb_utils_test, GetArkwebInstallPath002) { EXPECT_TRUE(res); OHOS::system::SetParameter("web.engine.enforce", std::to_string(webEngineEnforce)); } + +TEST(arkweb_utils_test, ArkWebBridgeHelperLoadLibFile001) { + std::string libDirPath; + libDirPath = GetArkwebLibPathForMock(); + std::string libFileName = "libarkweb_engine.so"; + void* libFileHandler = nullptr; + libFileHandler = ArkWebBridgeHelperLoadLibFile(RTLD_NOW, libDirPath + "/" + libFileName); + EXPECT_NE(libFileHandler, nullptr); +} + +TEST(arkweb_utils_test, ArkWebBridgeHelperLoadLibFile002) { + std::string libDirPath; + libDirPath = GetArkwebLibPathForMock(); + std::string libFileName = "libarkweb_engine.z.so"; + void* libFileHandler = nullptr; + libFileHandler = ArkWebBridgeHelperLoadLibFile(RTLD_NOW, libDirPath + "/" + libFileName); + EXPECT_EQ(libFileHandler, nullptr); +} } // namespace OHOS::NWeb \ No newline at end of file -- Gitee