From 53a09a339facad0164dfe1fc901b2f4a08d8d83e Mon Sep 17 00:00:00 2001 From: m0_54007497 Date: Tue, 28 Oct 2025 20:38:55 +0800 Subject: [PATCH] debug Signed-off-by: m0_54007497 --- .../test/fuzztest/drmservice_fuzzer/BUILD.gn | 2 +- frameworks/native/test/unittest/BUILD.gn | 9 +- .../src/drm_framework_function_unittest.cpp | 118 +++++++++++++++++- services/drm_service/BUILD.gn | 4 +- services/utils/drm_net_observer.cpp | 6 +- 5 files changed, 129 insertions(+), 10 deletions(-) diff --git a/frameworks/native/test/fuzztest/drmservice_fuzzer/BUILD.gn b/frameworks/native/test/fuzztest/drmservice_fuzzer/BUILD.gn index 8e0faff7..719fff09 100644 --- a/frameworks/native/test/fuzztest/drmservice_fuzzer/BUILD.gn +++ b/frameworks/native/test/fuzztest/drmservice_fuzzer/BUILD.gn @@ -81,8 +81,8 @@ ohos_fuzztest("drmserviceFuzzTest") { "ipc:ipc_single", "memmgr:memmgrclient", "napi:ace_napi", - "safwk:system_ability_fwk", "netmanager_base:net_conn_manager_if", + "safwk:system_ability_fwk", ] subsystem_name = "multimedia" part_name = "drm_framework" diff --git a/frameworks/native/test/unittest/BUILD.gn b/frameworks/native/test/unittest/BUILD.gn index 8dcc24fc..6eb9a003 100644 --- a/frameworks/native/test/unittest/BUILD.gn +++ b/frameworks/native/test/unittest/BUILD.gn @@ -75,6 +75,11 @@ ohos_unittest("drm_framework_capi_unittest_v1_0") { "c_utils:utils", "curl:curl_shared", "data_share:datashare_consumer", + "drivers_interface_drm:libdrm_proxy_1.0", + "hdf_core:libhdf_host", + "hdf_core:libhdf_ipc_adapter", + "hdf_core:libhdf_utils", + "hdf_core:libhdi", "googletest:gmock_main", "hidumper:lib_dump_usage", "hilog:libhilog", @@ -82,9 +87,9 @@ ohos_unittest("drm_framework_capi_unittest_v1_0") { "hitrace:libhitracechain", "ipc:ipc_core", "init:libbegetutil", - "samgr:samgr_proxy", - "os_account:os_account_innerkits", "netmanager_base:net_conn_manager_if", + "samgr:samgr_proxy", + "os_account:os_account_innerkits" ] subsystem_name = "multimedia" part_name = "drm_framework" diff --git a/frameworks/native/test/unittest/src/drm_framework_function_unittest.cpp b/frameworks/native/test/unittest/src/drm_framework_function_unittest.cpp index 5ffa62a5..7dba3b15 100644 --- a/frameworks/native/test/unittest/src/drm_framework_function_unittest.cpp +++ b/frameworks/native/test/unittest/src/drm_framework_function_unittest.cpp @@ -17,6 +17,11 @@ #include "gmock/gmock.h" #include "drm_helper.h" #include "drm_framework_unittest.h" +#define private public +#include "mediakeysystemfactory_service.cpp" +#include "drm_error_code.h" + +#define MEMORY_MANAGER_SA_ID 1902 using namespace testing::ext; using namespace std; @@ -57,5 +62,116 @@ HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_GetCurrentUserId_001, TestSize.Level EXPECT_TRUE(ret0 != -1); } +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_StartNetObserverNormal, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + int32_t ret = mediaKeySystemFactoryService_->StartNetObserver(); + EXPECT_EQ(ret, DRM_INNER_ERR_OK); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_StartNetObserverAbNormal, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + mediaKeySystemFactoryService_->drmHostManager_ = nullptr; + int32_t ret = mediaKeySystemFactoryService_->StartNetObserver(); + EXPECT_NE(ret, DRM_INNER_ERR_OK); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_SetIsNetWorkNormal_001, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = true; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + EXPECT_EQ(testFlag, hostptr->isNetWork); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_SetIsNetWorkNormal_002, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = false; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + EXPECT_EQ(testFlag, hostptr->isNetWork); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_GetIsNetWorkNormal_001, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = true; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + EXPECT_EQ(testFlag, hostptr->GetIsNetWork()); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_GetIsNetWorkNormal_002, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = false; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + EXPECT_EQ(testFlag, hostptr->GetIsNetWork()); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_GetIsNetWorkNormal_002, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = false; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + EXPECT_EQ(testFlag, hostptr->GetIsNetWork()); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_WaitForNetWorkAbnormal_001, TestSize.Level0) +{ + auto systemAbility = MEMORY_MANAGER_SA_ID; + MediaKeySystemFactoryService mediaKeySystemFactoryService_ = + new MediaKeySystemFactoryService(systemAbility); + bool testFlag = true; + auto hostptr = mediaKeySystemFactoryService_->drmHostManager_; + hostptr->SetIsNetWork(testFlag); + hostptr->WaitForNetwork(); + EXPECT_EQ(testFlag, hostptr->GetIsNetWork()); + delete mediaKeySystemFactoryService_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_StartObservernormal_001, TestSize.Level0) +{ + DrmNetObserver *drmNetObserver_ = new DrmNetObserver(); + drmNetObserver_->StartObserver(); + EXPECT_EQ(drmNetObserver_->netCallback_, nullptr); + delete drmNetObserver_; +} + +HWTEST_F(DrmFrameworkUnitTest, Drm_Unittest_StopObserverAbNormal_001, TestSize.Level0) +{ + DrmNetObserver *drmNetObserver_ = new DrmNetObserver(); + int32_t ret = drmNetObserver_->StopObserver(); + EXPECT_NE(ret, DRM_INNER_ERR_OK); + delete drmNetObserver_; +} + } // DrmStandard -} // OHOS \ No newline at end of file +} // OHOS +#undef private \ No newline at end of file diff --git a/services/drm_service/BUILD.gn b/services/drm_service/BUILD.gn index 6600db66..16ef74f4 100644 --- a/services/drm_service/BUILD.gn +++ b/services/drm_service/BUILD.gn @@ -68,10 +68,10 @@ ohos_shared_library("drm_service") { "init:libbegetutil", "memmgr:memmgrclient", "napi:ace_napi", + "netmanager_base:net_conn_manager_if", "os_account:os_account_innerkits", "safwk:system_ability_fwk", - "samgr:samgr_proxy", - "netmanager_base:net_conn_manager_if" + "samgr:samgr_proxy" ] cflags = [ diff --git a/services/utils/drm_net_observer.cpp b/services/utils/drm_net_observer.cpp index 53ac940b..e4fd1f56 100644 --- a/services/utils/drm_net_observer.cpp +++ b/services/utils/drm_net_observer.cpp @@ -32,13 +32,11 @@ static constexpr int32_t RETRY_INTERVAL_S = 1; DrmNetObserver::~DrmNetObserver() { - if (!startFuture_.valid()) { - DRM_WARNING_LOG("startFuture_ not valid"); - return; + if (startFuture_.valid()) { + startFuture_.wait(); } stopRequested_ = true; StopObserver(); - startFuture_.wait(); } void DrmNetObserver::StartObserver()