diff --git a/services/distributedhardwarefwkservice/test/unittest/BUILD.gn b/services/distributedhardwarefwkservice/test/unittest/BUILD.gn index eb44ec1b2828ec989195af6e00761070263fc733..611a8e113f2a4e2aa7aeb14c692a936bbb904ded 100644 --- a/services/distributedhardwarefwkservice/test/unittest/BUILD.gn +++ b/services/distributedhardwarefwkservice/test/unittest/BUILD.gn @@ -15,11 +15,12 @@ group("test") { testonly = true deps = [ - "common/accessmanager:AccessManagerTest", + "common/accessmanager:access_manager_test", "common/componentloader:component_loader_test", "common/componentmanager:component_manager_test", "common/dbadapter:db_adapter_test", "common/distributedhardwaremanager:distributed_hardware_manager_test", + "common/distributedhardwaremanagerfactory:distributed_hardware_manager_factory_test", "common/distributedhardwareservice:distributed_hardware_service_test", "common/localhardwaremanager:local_hardware_manager_test", "common/resourcemanager:resource_manager_test", diff --git a/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/BUILD.gn b/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/BUILD.gn index 212af2c63f5f234b3972e867f354bab2e92e300e..e8967b9b6fb69b01ed775f639daa8c7ff60ab517 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/BUILD.gn +++ b/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/BUILD.gn @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Huawei Device Co., Ltd. +# Copyright (c) 2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at @@ -64,7 +64,7 @@ ohos_unittest("AccessManagerTest") { external_deps = [ "init:libbegetutil" ] } -group("unittest") { +group("access_manager_test") { testonly = true deps = [ ":AccessManagerTest" ] diff --git a/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/access_manager_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/access_manager_test.cpp index 49e18d06c57663990a400b1a8e74fc6c178098eb..218abe111a13929ec904434cf36b346be5f29174 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/access_manager_test.cpp +++ b/services/distributedhardwarefwkservice/test/unittest/common/accessmanager/access_manager_test.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021 Huawei Device Co., Ltd. + * Copyright (c) 2022 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -28,21 +28,6 @@ using namespace testing::ext; namespace OHOS { namespace DistributedHardware { namespace { -enum class Status : uint32_t { - DEVICE_ONLINE = 0, - DEVICE_OFFLINE = 1, -}; - -constexpr int32_t INTERVAL_TIME_MS = 100; -constexpr uint16_t TEST_DEV_TYPE_PAD = 0x11; - -/* save networkId and uuid */ -const std::vector> TEST_DEVICES = { - { "11111111111111111111111111111111", "22222222222222222222222222222222" }, - { "33333333333333333333333333333333", "44444444444444444444444444444444" }, - { "55555555555555555555555555555555", "66666666666666666666666666666666" }, - { "77777777777777777777777777777777", "88888888888888888888888888888888" }, -}; } class AccessManagerTest : public testing::Test { @@ -51,23 +36,14 @@ public: static void TearDownTestCase(void); void SetUp(); void TearDown(); - std::mutex testAccessMutex_; }; void AccessManagerTest::SetUp() { - // at last one device online, ensure sa not exit - std::string networkId = "00000000000000000000000000000000"; - std::string uuid = "99999999999999999999999999999999"; - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); } void AccessManagerTest::TearDown() { - // clear all the online devices - for (const auto &dev : TEST_DEVICES) { - DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); - } } void AccessManagerTest::SetUpTestCase() {} @@ -75,166 +51,40 @@ void AccessManagerTest::SetUpTestCase() {} void AccessManagerTest::TearDownTestCase() {} /** - * @tc.name: SendOnLineEvent_001 - * @tc.desc: Verify the online success - * @tc.type: FUNC - * @tc.require: AR000GHSJK - */ -HWTEST_F(AccessManagerTest, SendOnLineEvent_001, TestSize.Level1) -{ - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - for (const auto &dev : TEST_DEVICES) { - auto ret = - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); - ASSERT_EQ(DH_FWK_SUCCESS, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - } -} - -/** - * @tc.name: SendOnLineEvent_002 - * @tc.desc: Verify the online failed - * @tc.type: FUNC - * @tc.require: AR000GHSJK - */ -HWTEST_F(AccessManagerTest, SendOnLineEvent_002, TestSize.Level1) -{ - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - auto ret = - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent("", TEST_DEVICES[0].second, TEST_DEV_TYPE_PAD); - ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - ret = - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(TEST_DEVICES[0].first, "", TEST_DEV_TYPE_PAD); - ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); -} - -/** - * @tc.name: SendOffLineEvent_001 - * @tc.desc: Verify the offline success - * @tc.type: FUNC - * @tc.require: AR000GHSJM - */ -HWTEST_F(AccessManagerTest, SendOffLineEvent_001, TestSize.Level1) -{ - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - for (const auto &dev : TEST_DEVICES) { - auto ret = - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); - ASSERT_EQ(DH_FWK_SUCCESS, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - } - - for (const auto &dev : TEST_DEVICES) { - auto ret = - DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); - ASSERT_EQ(DH_FWK_SUCCESS, ret); - } - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); -} - -/** - * @tc.name: SendOffLineEvent_002 - * @tc.desc: Verify the offline failed + * @tc.name: AccessManagerInit + * @tc.desc: Verify the Init function * @tc.type: FUNC * @tc.require: AR000GHSJM */ -HWTEST_F(AccessManagerTest, SendOffLineEvent_002, TestSize.Level1) +HWTEST_F(AccessManagerTest, AccessManagerInit, TestSize.Level0) { - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - auto ret = DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent("", TEST_DEVICES[0].second, - TEST_DEV_TYPE_PAD); - ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); - - ret = - DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(TEST_DEVICES[0].first, "", TEST_DEV_TYPE_PAD); - ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); - ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + EXPECT_EQ(DH_FWK_SUCCESS, AccessManager::GetInstance()->Init()); } /** - * @tc.name: SendOffLineEvent_003 - * @tc.desc: Verify the SendOnLineEvent for Multi-thread + * @tc.name: OnDeviceReady + * @tc.desc: Verify the OnDeviceReady function * @tc.type: FUNC * @tc.require: AR000GHSJM */ -HWTEST_F(AccessManagerTest, SendOffLineEvent_003, TestSize.Level0) +HWTEST_F(AccessManagerTest, OnDeviceReady, TestSize.Level0) { - auto handler = [this](Status status, std::string networkId, std::string uuid, int32_t expect) { - if (status == Status::DEVICE_ONLINE) { - std::lock_guard lock(testAccessMutex_); - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - auto onlineResult = - DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); - EXPECT_EQ(expect, onlineResult); - } else { - std::lock_guard lock(testAccessMutex_); - std::this_thread::sleep_for(std::chrono::milliseconds(90)); - auto offlineResult = - DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); - EXPECT_EQ(expect, offlineResult); - } - }; - - std::vector threadVec; - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[1].first, TEST_DEVICES[1].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back(std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, - ERR_DH_FWK_HARDWARE_MANAGER_DEVICE_REPEAT_ONLINE)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[2].first, TEST_DEVICES[2].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back(std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, - ERR_DH_FWK_HARDWARE_MANAGER_DEVICE_REPEAT_OFFLINE)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[1].first, TEST_DEVICES[1].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, DH_FWK_SUCCESS)); - std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); - - threadVec.emplace_back( - std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[2].first, TEST_DEVICES[2].second, DH_FWK_SUCCESS)); - - for_each(threadVec.begin(), threadVec.end(), [](std::thread &t) { t.join(); }); + DmDeviceInfo deviceInfo; + AccessManager::GetInstance()->OnDeviceReady(deviceInfo); + EXPECT_EQ(DistributedHardwareManagerFactory::GetInstance().IsInit(), false); } /** - * @tc.name: AccessManagerInit - * @tc.desc: Verify the Init function + * @tc.name: OnDeviceOffline + * @tc.desc: Verify the OnDeviceOffline function * @tc.type: FUNC * @tc.require: AR000GHSJM */ -HWTEST_F(AccessManagerTest, AccessManagerInit, TestSize.Level0) +HWTEST_F(AccessManagerTest, OnDeviceOffline, TestSize.Level0) { - EXPECT_EQ(DH_FWK_SUCCESS, AccessManager::GetInstance()->Init()); + DmDeviceInfo deviceInfo; + AccessManager::GetInstance()->OnDeviceOffline(deviceInfo); + EXPECT_EQ(DistributedHardwareManagerFactory::GetInstance().IsInit(), false); } } // namespace DistributedHardware } // namespace OHOS diff --git a/services/distributedhardwarefwkservice/test/unittest/common/componentloader/src/component_loader_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/componentloader/src/component_loader_test.cpp index 7838556d0c6294349c6a13ea90677f705f28f816..0f40fc587f21a282ef7f8f266805fec9f7a96ec2 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/componentloader/src/component_loader_test.cpp +++ b/services/distributedhardwarefwkservice/test/unittest/common/componentloader/src/component_loader_test.cpp @@ -160,5 +160,31 @@ HWTEST_F(ComponentLoaderTest, component_loader_test_008, TestSize.Level0) auto vec = ComponentLoader::GetInstance().GetAllCompTypes(); EXPECT_EQ(vec.size(), ComponentLoader::GetInstance().compHandlerMap_.size()); } + +/** + * @tc.name: component_loader_test_009 + * @tc.desc: Verify the GetHandler function. + * @tc.type: FUNC + * @tc.require: AR000GHSK3 + */ +HWTEST_F(ComponentLoaderTest, component_loader_test_009, TestSize.Level0) +{ + std::string soNameEmpty = ""; + auto handler = ComponentLoader::GetInstance().GetHandler(soNameEmpty); + EXPECT_EQ(handler, nullptr); +} + +/** + * @tc.name: component_loader_test_010 + * @tc.desc: Verify the GetHandler function. + * @tc.type: FUNC + * @tc.require: AR000GHSK3 + */ +HWTEST_F(ComponentLoaderTest, component_loader_test_010, TestSize.Level0) +{ + std::string soName = "NON_EXISTENT_SO"; + auto handler = ComponentLoader::GetInstance().GetHandler(soName); + EXPECT_EQ(handler, nullptr); +} } // namespace DistributedHardware } // namespace OHOS diff --git a/services/distributedhardwarefwkservice/test/unittest/common/dbadapter/src/db_adapter_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/dbadapter/src/db_adapter_test.cpp index 17387888d32bd87cd7012827e3d0aa0c16e99a95..89c4de644853be56ceeaec91c35cdd9f2fe851ce 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/dbadapter/src/db_adapter_test.cpp +++ b/services/distributedhardwarefwkservice/test/unittest/common/dbadapter/src/db_adapter_test.cpp @@ -40,6 +40,7 @@ namespace DistributedHardware { namespace { const string DATABASE_DIR = "/data/service/el1/public/database/dtbhardware_manager_service/"; +const std::string DEV_NETWORK_ID_1 = "nt36a637105409e904d4da83790a4a9"; const string TEST_DEV_ID_0 = "bb536a637105409e904d4da83791aa11"; const string TEST_DEV_ID_1 = "bb536a637105409e904d4da83791bb22"; const string TEST_DEV_ID_2 = "bb536a637105409e904d4da83791bb33"; @@ -127,11 +128,55 @@ HWTEST_F(DbAdapterTest, db_adapter_test_000, TestSize.Level0) /** * @tc.name: db_adapter_test_001 + * @tc.desc: Verify the PutData function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_001, TestSize.Level0) +{ + std::string key = TEST_DEV_ID_0; + std::string value = TEST_DH_ATTR_0; + + EXPECT_EQ(g_dbAdapterPtr->PutData(key, value), DH_FWK_SUCCESS); + + g_dbAdapterPtr->RemoveDataByKey(key); +} + +/** + * @tc.name: db_adapter_test_002 + * @tc.desc: Verify the PutData function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_002, TestSize.Level0) +{ + std::string key = ""; + std::string value = TEST_DH_ATTR_0; + + EXPECT_EQ(g_dbAdapterPtr->PutData(key, value), ERR_DH_FWK_PARA_INVALID); +} + +/** + * @tc.name: db_adapter_test_003 + * @tc.desc: Verify the PutData function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_003, TestSize.Level0) +{ + std::string key = "TEST_DEV_ID_0"; + std::string value = ""; + + EXPECT_EQ(g_dbAdapterPtr->PutData(key, value), ERR_DH_FWK_PARA_INVALID); +} + +/** + * @tc.name: db_adapter_test_004 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSJE */ -HWTEST_F(DbAdapterTest, db_adapter_test_001, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_004, TestSize.Level0) { vector> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4, CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 }; @@ -145,18 +190,90 @@ HWTEST_F(DbAdapterTest, db_adapter_test_001, TestSize.Level0) values.push_back(resInfo->ToJsonString()); } EXPECT_EQ(g_dbAdapterPtr->PutDataBatch(keys, values), DH_FWK_SUCCESS); + for (auto &resInfo : resInfos) { g_dbAdapterPtr->RemoveDataByKey(resInfo->GetKey()); } } /** - * @tc.name: db_adapter_test_002 + * @tc.name: db_adapter_test_006 + * @tc.desc: Verify the RemoveDataByKey function. + * @tc.type: FUNC + * @tc.require: AR000GHSJE + */ +HWTEST_F(DbAdapterTest, db_adapter_test_006, TestSize.Level0) +{ + vector> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4, + CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 }; + + std::vector keys; + std::vector values; + std::string key; + for (auto &resInfo : resInfos) { + key = resInfo->GetKey(); + keys.push_back(key); + values.push_back(resInfo->ToJsonString()); + } + g_dbAdapterPtr->PutDataBatch(keys, values); + + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_0->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_1->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_2->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_3->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_4->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_5->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_6->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_7->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_8->GetKey()), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->RemoveDataByKey(CAP_INFO_9->GetKey()), DH_FWK_SUCCESS); +} + +/** + * @tc.name: db_adapter_test_007 + * @tc.desc: Verify the GetDataByKeyPrefix function. + * @tc.type: FUNC + * @tc.require: AR000GHSJE + */ +HWTEST_F(DbAdapterTest, db_adapter_test_007, TestSize.Level0) +{ + vector> resInfos { CAP_INFO_0, CAP_INFO_1, CAP_INFO_2, CAP_INFO_3, CAP_INFO_4, + CAP_INFO_5, CAP_INFO_6, CAP_INFO_7, CAP_INFO_8, CAP_INFO_9 }; + + std::vector keys; + std::vector infos; + std::string key; + for (auto &resInfo : resInfos) { + key = resInfo->GetKey(); + keys.push_back(key); + infos.push_back(resInfo->ToJsonString()); + } + g_dbAdapterPtr->PutDataBatch(keys, infos); + + std::vector values; + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_0->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_1->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_2->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_3->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_4->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_5->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_6->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_7->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_8->GetDeviceId(), values), DH_FWK_SUCCESS); + EXPECT_EQ(g_dbAdapterPtr->GetDataByKeyPrefix(CAP_INFO_9->GetDeviceId(), values), DH_FWK_SUCCESS); + + for (auto &resInfo : resInfos) { + g_dbAdapterPtr->RemoveDataByKey(resInfo->GetKey()); + } +} + +/** + * @tc.name: db_adapter_test_008 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_002, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_008, TestSize.Level0) { std::vector keys { std::string(TEST_DEV_ID_2 + TEST_DH_ID_0) }; std::vector values { TEST_DH_ATTR_0 }; @@ -166,12 +283,12 @@ HWTEST_F(DbAdapterTest, db_adapter_test_002, TestSize.Level0) } /** - * @tc.name: db_adapter_test_003 + * @tc.name: db_adapter_test_009 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_003, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_009, TestSize.Level0) { std::vector keys { std::string(TEST_DEV_ID_2 + TEST_DH_ID_0) }; std::vector valuesEmpty; @@ -180,12 +297,12 @@ HWTEST_F(DbAdapterTest, db_adapter_test_003, TestSize.Level0) } /** - * @tc.name: db_adapter_test_004 + * @tc.name: db_adapter_test_010 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_004, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_010, TestSize.Level0) { std::vector keysEmpty; std::vector values { TEST_DH_ATTR_0 }; @@ -194,12 +311,12 @@ HWTEST_F(DbAdapterTest, db_adapter_test_004, TestSize.Level0) } /** - * @tc.name: db_adapter_test_005 + * @tc.name: db_adapter_test_011 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_005, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_011, TestSize.Level0) { std::vector keysEmpty; std::vector valuesEmpty; @@ -208,12 +325,12 @@ HWTEST_F(DbAdapterTest, db_adapter_test_005, TestSize.Level0) } /** - * @tc.name: db_adapter_test_006 + * @tc.name: db_adapter_test_012 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_006, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_012, TestSize.Level0) { std::vector keys { std::string(TEST_DEV_ID_2 + TEST_DH_ID_0) }; std::vector values { TEST_DH_ATTR_0, TEST_DH_ATTR_1 }; @@ -222,12 +339,37 @@ HWTEST_F(DbAdapterTest, db_adapter_test_006, TestSize.Level0) } /** - * @tc.name: db_adapter_test_007 + * @tc.name: db_adapter_test_013 + * @tc.desc: Verify the ManualSync function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_013, TestSize.Level0) +{ + std::string networkId = DEV_NETWORK_ID_1; + + EXPECT_EQ(g_dbAdapterPtr->ManualSync(DEV_NETWORK_ID_1), ERR_DH_FWK_RESOURCE_KV_STORAGE_OPERATION_FAIL); +} + +/** + * @tc.name: db_adapter_test_014 + * @tc.desc: Verify the UnRegisterChangeListener function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_014, TestSize.Level0) +{ + + EXPECT_EQ(g_dbAdapterPtr->UnRegisterChangeListener(), DH_FWK_SUCCESS); +} + +/** + * @tc.name: db_adapter_test_015 * @tc.desc: Verify the PutDataBatch function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(DbAdapterTest, db_adapter_test_007, TestSize.Level0) +HWTEST_F(DbAdapterTest, db_adapter_test_015, TestSize.Level0) { g_dbAdapterPtr->kvStoragePtr_ = nullptr; std::vector keys { std::string(TEST_DEV_ID_2 + TEST_DH_ID_0) }; @@ -235,5 +377,46 @@ HWTEST_F(DbAdapterTest, db_adapter_test_007, TestSize.Level0) EXPECT_EQ(g_dbAdapterPtr->PutDataBatch(keys, values), ERR_DH_FWK_RESOURCE_KV_STORAGE_POINTER_NULL); } + +/** + * @tc.name: db_adapter_test_016 + * @tc.desc: Verify the PutData function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_016, TestSize.Level0) +{ + std::string key = std::string(TEST_DEV_ID_1 + TEST_DH_ID_1); + std::string value = TEST_DH_ATTR_0; + g_dbAdapterPtr->kvStoragePtr_ = nullptr; + + EXPECT_EQ(g_dbAdapterPtr->PutData(key, value), ERR_DH_FWK_RESOURCE_KV_STORAGE_POINTER_NULL); +} + +/** + * @tc.name: db_adapter_test_017 + * @tc.desc: Verify the RegisterChangeListener function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_017, TestSize.Level0) +{ + std::string networkId = DEV_NETWORK_ID_1; + g_dbAdapterPtr->kvStoragePtr_ = nullptr; + + EXPECT_EQ(g_dbAdapterPtr->RegisterChangeListener(), ERR_DH_FWK_RESOURCE_KV_STORAGE_POINTER_NULL); +} + +/** + * @tc.name: db_adapter_test_018 + * @tc.desc: Verify the UnRegisterChangeListener function. + * @tc.type: FUNC + * @tc.require: AR000GHSCV + */ +HWTEST_F(DbAdapterTest, db_adapter_test_018, TestSize.Level0) +{ + g_dbAdapterPtr->kvStoragePtr_ = nullptr; + EXPECT_EQ(g_dbAdapterPtr->UnRegisterChangeListener(), ERR_DH_FWK_RESOURCE_KV_STORAGE_POINTER_NULL); +} } // namespace DistributedHardware } // namespace OHOS diff --git a/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/BUILD.gn b/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..83290b1c3c6bca8e4559fa002eea0ae3eb82add8 --- /dev/null +++ b/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/BUILD.gn @@ -0,0 +1,72 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/test.gni") +import( + "//foundation/distributedhardware/distributed_hardware_fwk/distributedhardwarefwk.gni") + +module_out_path = + "distributed_hardware_fwk/distributed_hardware_manager_factory_test" + +config("module_private_config") { + include_dirs = [ + "//base/hiviewdfx/hisysevent/interfaces/native/innerkits/hisysevent/include", + "//base/hiviewdfx/hitrace/interfaces/native/innerkits/include/hitrace_meter", + "//base/notification/eventhandler/interfaces/inner_api", + "//commonlibrary/c_utils/base/include", + "//utils/system/safwk/native/include", + "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp/include", + "//foundation/distributedhardware/device_manager/common/include", + "${utils_path}/include", + "${utils_path}/include/log", + "${common_path}/utils/include", + "${common_path}/log/include", + "${services_path}/distributedhardwarefwkservice/include", + "${services_path}/distributedhardwarefwkservice/include/utils", + "${services_path}/distributedhardwarefwkservice/include/accessmanager", + "${utils_path}/include/eventbus", + ] +} + +ohos_unittest("DistributedHardwareManagerFactoryTest") { + module_out_path = module_out_path + + sources = [ + "${services_path}/distributedhardwarefwkservice/src/accessmanager/access_manager.cpp", + "${services_path}/distributedhardwarefwkservice/src/distributed_hardware_manager_factory.cpp", + ] + + sources += [ "distributed_hardware_manager_factory_test.cpp" ] + + configs = [ ":module_private_config" ] + + deps = [ + "${utils_path}:distributedhardwareutils", + "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp:devicemanagersdk", + "//foundation/distributedhardware/distributed_hardware_fwk/services/distributedhardwarefwkservice:distributedhardwarefwksvr", + "//third_party/googletest:gtest_main", + ] + defines = [ + "HI_LOG_ENABLE", + "DH_LOG_TAG=\"dhfwksvr\"", + "LOG_DOMAIN=0xD004100", + ] + + external_deps = [ "init:libbegetutil" ] +} + +group("distributed_hardware_manager_factory_test") { + testonly = true + + deps = [ ":DistributedHardwareManagerFactoryTest" ] +} diff --git a/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/distributed_hardware_manager_factory_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/distributed_hardware_manager_factory_test.cpp new file mode 100644 index 0000000000000000000000000000000000000000..5821174ef12fe7c7a2ac9868157d883065d5282d --- /dev/null +++ b/services/distributedhardwarefwkservice/test/unittest/common/distributedhardwaremanagerfactory/distributed_hardware_manager_factory_test.cpp @@ -0,0 +1,289 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include +#include + +#include "gtest/gtest.h" + +#include "access_manager.h" +#include "distributed_hardware_errno.h" +#include "distributed_hardware_manager_factory.h" +using namespace testing::ext; + +namespace OHOS { +namespace DistributedHardware { +namespace { +enum class Status : uint32_t { + DEVICE_ONLINE = 0, + DEVICE_OFFLINE = 1, +}; + +constexpr int32_t INTERVAL_TIME_MS = 100; +constexpr uint16_t TEST_DEV_TYPE_PAD = 0x11; + +/* save networkId and uuid */ +const std::vector> TEST_DEVICES = { + { "11111111111111111111111111111111", "22222222222222222222222222222222" }, + { "33333333333333333333333333333333", "44444444444444444444444444444444" }, + { "55555555555555555555555555555555", "66666666666666666666666666666666" }, + { "77777777777777777777777777777777", "88888888888888888888888888888888" }, +}; +} + +class DistributedHardwareManagerFactoryTest : public testing::Test { +public: + static void SetUpTestCase(void); + static void TearDownTestCase(void); + void SetUp(); + void TearDown(); + std::mutex testAccessMutex_; +}; + +void DistributedHardwareManagerFactoryTest::SetUp() +{ + // at last one device online, ensure sa not exit + std::string networkId = "00000000000000000000000000000000"; + std::string uuid = "99999999999999999999999999999999"; + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); +} + +void DistributedHardwareManagerFactoryTest::TearDown() +{ + // clear all the online devices + for (const auto &dev : TEST_DEVICES) { + DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); + } +} + +void DistributedHardwareManagerFactoryTest::SetUpTestCase() {} + +void DistributedHardwareManagerFactoryTest::TearDownTestCase() {} + +/** + * @tc.name: SendOnLineEvent_001 + * @tc.desc: Verify the online success + * @tc.type: FUNC + * @tc.require: AR000GHSJK + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOnLineEvent_001, TestSize.Level1) +{ + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + for (const auto &dev : TEST_DEVICES) { + auto ret = + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); + ASSERT_EQ(DH_FWK_SUCCESS, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + } +} + +/** + * @tc.name: SendOnLineEvent_002 + * @tc.desc: Verify the online failed + * @tc.type: FUNC + * @tc.require: AR000GHSJK + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOnLineEvent_002, TestSize.Level1) +{ + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + auto ret = + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent("", TEST_DEVICES[0].second, TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + ret = + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(TEST_DEVICES[0].first, "", TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); +} + +/** + * @tc.name: SendOffLineEvent_001 + * @tc.desc: Verify the offline success + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_001, TestSize.Level1) +{ + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + for (const auto &dev : TEST_DEVICES) { + auto ret = + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); + ASSERT_EQ(DH_FWK_SUCCESS, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + } + + for (const auto &dev : TEST_DEVICES) { + auto ret = + DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(dev.first, dev.second, TEST_DEV_TYPE_PAD); + ASSERT_EQ(DH_FWK_SUCCESS, ret); + } + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); +} + +/** + * @tc.name: SendOffLineEvent_002 + * @tc.desc: Verify the offline failed + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_002, TestSize.Level1) +{ + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + auto ret = DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent("", TEST_DEVICES[0].second, + TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); + + ret = + DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(TEST_DEVICES[0].first, "", TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); + ASSERT_TRUE(DistributedHardwareManagerFactory::GetInstance().IsInit()); +} + +/** + * @tc.name: SendOffLineEvent_003 + * @tc.desc: Verify the SendOnLineEvent for Multi-thread + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_003, TestSize.Level0) +{ + auto handler = [this](Status status, std::string networkId, std::string uuid, int32_t expect) { + if (status == Status::DEVICE_ONLINE) { + std::lock_guard lock(testAccessMutex_); + std::this_thread::sleep_for(std::chrono::milliseconds(100)); + auto onlineResult = + DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); + EXPECT_EQ(expect, onlineResult); + } else { + std::lock_guard lock(testAccessMutex_); + std::this_thread::sleep_for(std::chrono::milliseconds(90)); + auto offlineResult = + DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent(networkId, uuid, TEST_DEV_TYPE_PAD); + EXPECT_EQ(expect, offlineResult); + } + }; + + std::vector threadVec; + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[1].first, TEST_DEVICES[1].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back(std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, + ERR_DH_FWK_HARDWARE_MANAGER_DEVICE_REPEAT_ONLINE)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[2].first, TEST_DEVICES[2].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_ONLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back(std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[3].first, TEST_DEVICES[3].second, + ERR_DH_FWK_HARDWARE_MANAGER_DEVICE_REPEAT_OFFLINE)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[1].first, TEST_DEVICES[1].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[0].first, TEST_DEVICES[0].second, DH_FWK_SUCCESS)); + std::this_thread::sleep_for(std::chrono::milliseconds(INTERVAL_TIME_MS)); + + threadVec.emplace_back( + std::thread(handler, Status::DEVICE_OFFLINE, TEST_DEVICES[2].first, TEST_DEVICES[2].second, DH_FWK_SUCCESS)); + + for_each(threadVec.begin(), threadVec.end(), [](std::thread &t) { t.join(); }); +} + +/** + * @tc.name: SendOffLineEvent_004 + * @tc.desc: Verify the SendOnLineEvent + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_004, TestSize.Level0) +{ + std::string networkIdEmpty = ""; + std::string uuid = "uu1234567890"; + auto ret = DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent( + networkIdEmpty, uuid, TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); +} + +/** + * @tc.name: SendOffLineEvent_005 + * @tc.desc: Verify the SendOnLineEvent + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_005, TestSize.Level0) +{ + std::string networkId = "nt12345678790"; + std::string uuidEmpty = ""; + auto ret = DistributedHardwareManagerFactory::GetInstance().SendOnLineEvent( + networkId, uuidEmpty, TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); +} + +/** + * @tc.name: SendOffLineEvent_006 + * @tc.desc: Verify the SendOffLineEvent + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_006, TestSize.Level0) +{ + std::string networkIdEmpty = ""; + std::string uuid = "uu1234567890"; + auto ret = DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent( + networkIdEmpty, uuid, TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); +} + +/** + * @tc.name: SendOffLineEvent_007 + * @tc.desc: Verify the SendOffLineEvent + * @tc.type: FUNC + * @tc.require: AR000GHSJM + */ +HWTEST_F(DistributedHardwareManagerFactoryTest, SendOffLineEvent_007, TestSize.Level0) +{ + std::string networkId = "nt12345678790"; + std::string uuidEmpty = ""; + auto ret = DistributedHardwareManagerFactory::GetInstance().SendOffLineEvent( + networkId, uuidEmpty, TEST_DEV_TYPE_PAD); + ASSERT_EQ(ERR_DH_FWK_PARA_INVALID, ret); +} +} // namespace DistributedHardware +} // namespace OHOS diff --git a/services/distributedhardwarefwkservice/test/unittest/common/resourcemanager/src/resource_manager_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/resourcemanager/src/resource_manager_test.cpp index c37786b31762904316ecd17e61b008ec538c6a71..ce0963d07c3331ef35380df0a3853c0a68a3f696 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/resourcemanager/src/resource_manager_test.cpp +++ b/services/distributedhardwarefwkservice/test/unittest/common/resourcemanager/src/resource_manager_test.cpp @@ -372,5 +372,19 @@ HWTEST_F(ResourceManagerTest, resource_manager_test_013, TestSize.Level0) DH_FWK_SUCCESS); EXPECT_EQ(capMap.size(), TEST_SIZE_10); } + +/** + * @tc.name: resource_manager_test_015 + * @tc.desc: Verify the CapabilityInfoManager RemoveCapabilityInfoInDB function. + * @tc.type: FUNC + * @tc.require: AR000GHSJE + */ +HWTEST_F(ResourceManagerTest, resource_manager_test_015, TestSize.Level0) +{ + std::string deviceIdEmpty = ""; + EXPECT_EQ(CapabilityInfoManager::GetInstance()->RemoveCapabilityInfoInDB(deviceIdEmpty), + ERR_DH_FWK_PARA_INVALID); + +} } // namespace DistributedHardware } // namespace OHOS diff --git a/services/distributedhardwarefwkservice/test/unittest/common/versioninfomanager/src/version_info_manager_test.cpp b/services/distributedhardwarefwkservice/test/unittest/common/versioninfomanager/src/version_info_manager_test.cpp index c9716e056c5e32c041e1bd3a39de265c1915f1b0..b943b2f4057cf54a5b4cab87a3a9ec4a5eb3665a 100644 --- a/services/distributedhardwarefwkservice/test/unittest/common/versioninfomanager/src/version_info_manager_test.cpp +++ b/services/distributedhardwarefwkservice/test/unittest/common/versioninfomanager/src/version_info_manager_test.cpp @@ -138,22 +138,11 @@ HWTEST_F(VersionInfoManagerTest, version_info_manager_test_001, TestSize.Level0) /** * @tc.name:version_info_manager_test_002 - * @tc.desc: Verify the VersionInfoManager SyncRemoteVersionInfos function. - * @tc.type: FUNC - * @tc.require: AR000GHSJE - */ -HWTEST_F(VersionInfoManagerTest, version_info_manager_test_002, TestSize.Level0) -{ - EXPECT_EQ(VersionInfoManager::GetInstance()->SyncRemoteVersionInfos(), DH_FWK_SUCCESS); -} - -/** - * @tc.name:version_info_manager_test_003 * @tc.desc: Verify the VersionInfoManager AddVersion function. * @tc.type: FUNC * @tc.require: AR000GHSCV */ -HWTEST_F(VersionInfoManagerTest, version_info_manager_test_004, TestSize.Level0) +HWTEST_F(VersionInfoManagerTest, version_info_manager_test_002, TestSize.Level0) { for (const auto& verInfo : g_versionInfos) { EXPECT_EQ(VersionInfoManager::GetInstance()->AddVersion(verInfo), DH_FWK_SUCCESS); @@ -161,12 +150,12 @@ HWTEST_F(VersionInfoManagerTest, version_info_manager_test_004, TestSize.Level0) } /** - * @tc.name:version_info_manager_test_005 + * @tc.name:version_info_manager_test_003 * @tc.desc: Verify the VersionInfoManager GetVersionInfoByDeviceId function. * @tc.type: FUNC * @tc.require: AR000GHSJE */ -HWTEST_F(VersionInfoManagerTest, version_info_manager_test_005, TestSize.Level0) +HWTEST_F(VersionInfoManagerTest, version_info_manager_test_003, TestSize.Level0) { VersionInfo versionInfo; for (const auto& verInfo : g_versionInfos) { @@ -176,23 +165,23 @@ HWTEST_F(VersionInfoManagerTest, version_info_manager_test_005, TestSize.Level0) } /** - * @tc.name:version_info_manager_test_006 + * @tc.name:version_info_manager_test_004 * @tc.desc: Verify the VersionInfoManager SyncVersionInfoFromDB function. * @tc.type: FUNC * @tc.require: AR000GHSJE */ -HWTEST_F(VersionInfoManagerTest, version_info_manager_test_006, TestSize.Level0) +HWTEST_F(VersionInfoManagerTest, version_info_manager_test_004, TestSize.Level0) { EXPECT_EQ(VersionInfoManager::GetInstance()->SyncVersionInfoFromDB(DEV_ID_1), DH_FWK_SUCCESS); } /** - * @tc.name:version_info_manager_test_007 + * @tc.name:version_info_manager_test_005 * @tc.desc: Verify the VersionInfoManager UnInit function. * @tc.type: FUNC * @tc.require: AR000GHSJE */ -HWTEST_F(VersionInfoManagerTest, version_info_manager_test_007, TestSize.Level0) +HWTEST_F(VersionInfoManagerTest, version_info_manager_test_005, TestSize.Level0) { EXPECT_EQ(VersionInfoManager::GetInstance()->UnInit(), DH_FWK_SUCCESS); } diff --git a/utils/test/unittest/common/utilstool/utils_tool_test.cpp b/utils/test/unittest/common/utilstool/utils_tool_test.cpp index b8981972b12e9b0bb773b8b36cd2d6321d97730a..d792045b0dbe4c79e87bd42158562e17ccff68b4 100644 --- a/utils/test/unittest/common/utilstool/utils_tool_test.cpp +++ b/utils/test/unittest/common/utilstool/utils_tool_test.cpp @@ -120,5 +120,33 @@ HWTEST_F(UtilsToolTest, utils_tool_test_004, TestSize.Level0) ASSERT_STRNE(std::to_string(i4).c_str(), GetAnonyInt32(i4).c_str()); ASSERT_STRNE(std::to_string(i5).c_str(), GetAnonyInt32(i5).c_str()); } + +/** + * @tc.name: utils_tool_test_005 + * @tc.desc: Verify the GetDeviceIdByUUID function + * @tc.type: FUNC + * @tc.require: AR000GHSK0 + */ +HWTEST_F(UtilsToolTest, utils_tool_test_005, TestSize.Level0) +{ + // const std::string UUID_TEST = "bb536a637105409e904d4da78290ab1"; + + std::string uuidEmpty = ""; + auto id = GetDeviceIdByUUID(uuidEmpty); + ASSERT_EQ(id.size(), 0); +} + +/** + * @tc.name: utils_tool_test_006 + * @tc.desc: Verify the GetDeviceIdByUUID function + * @tc.type: FUNC + * @tc.require: AR000GHSK0 + */ +HWTEST_F(UtilsToolTest, utils_tool_test_006, TestSize.Level0) +{ + std::string uuid = "bb536a637105409e904d4da78290ab1"; + auto id = GetDeviceIdByUUID(uuid); + ASSERT_NE(id.size(), 0); +} } // namespace DistributedHardware } // namespace OHOS