From 4eca68d9f016cdfef90a8e02b036654f062fddbd Mon Sep 17 00:00:00 2001 From: gaoqiang_strong Date: Tue, 6 Dec 2022 20:01:13 +0800 Subject: [PATCH] add ut Signed-off-by: gaoqiang_strong --- bundle.json | 2 +- .../src/dscreen_sink_handler_test.cpp | 46 ++++++ .../src/dscreen_source_handler_test.cpp | 75 +++++++++ .../src/dscreen_handler_test.cpp | 14 ++ .../src/screenregionmgr_test.cpp | 36 +++++ .../src/image_source_encoder_test.cpp | 139 +++++++++++++++- .../src/screen_source_trans_test.cpp | 64 +++++++- .../softbusadapter/test/unittest/BUILD.gn | 7 +- .../unittest/src/softbus_adapter_test.cpp | 153 +++++++++++++++++- 9 files changed, 524 insertions(+), 12 deletions(-) diff --git a/bundle.json b/bundle.json index e3e40a1e..00a651c2 100644 --- a/bundle.json +++ b/bundle.json @@ -84,12 +84,12 @@ "test":[ "//foundation/distributedhardware/distributed_screen/services/screendemo:distributedScreenTest", "//foundation/distributedhardware/distributed_screen/screenhandler/test/unittest/screenhandler:DscreenHandlerTest", - "//foundation/distributedhardware/distributed_screen/services/screenclient/test/unittest:ScreenClientTest", "//foundation/distributedhardware/distributed_screen/services/screenservice/test/unittest/sinkservice/screenregionmgr:DscreenRegionMgrTest", "//foundation/distributedhardware/distributed_screen/services/screentransport/test/unittest:screen_transport_test", "//foundation/distributedhardware/distributed_screen/services/softbusadapter/test/unittest:SoftBusAdapterTest", "//foundation/distributedhardware/distributed_screen/services/common/test/unittest:service_common_test", "//foundation/distributedhardware/distributed_screen/interfaces/innerkits/native_cpp/test/unittest:screen_interface_test", + "//foundation/distributedhardware/distributed_screen/services/screenclient/test/unittest:ScreenClientTest", "//foundation/distributedhardware/distributed_screen/screenhandler/test/fuzztest:fuzztest", "//foundation/distributedhardware/distributed_screen/interfaces/innerkits/native_cpp/test/fuzztest:fuzztest" ] diff --git a/interfaces/innerkits/native_cpp/test/unittest/screensinktest/src/dscreen_sink_handler_test.cpp b/interfaces/innerkits/native_cpp/test/unittest/screensinktest/src/dscreen_sink_handler_test.cpp index f6d92756..2f877d92 100644 --- a/interfaces/innerkits/native_cpp/test/unittest/screensinktest/src/dscreen_sink_handler_test.cpp +++ b/interfaces/innerkits/native_cpp/test/unittest/screensinktest/src/dscreen_sink_handler_test.cpp @@ -36,6 +36,35 @@ void DScreenSinkHandlerTest::TearDown(void) DScreenSinkHandler::GetInstance().ReleaseSink(); } +/** + * @tc.name: InitSink_001 + * @tc.desc: Verify the InitSink function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSinkHandlerTest, InitSink_001, TestSize.Level1) +{ + const std::string param = ""; + int32_t ret = DScreenSinkHandler::GetInstance().InitSink(param); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); +} + +/** + * @tc.name: InitSink_002 + * @tc.desc: Verify the InitSink function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSinkHandlerTest, InitSink_002, TestSize.Level1) +{ + const std::string param = "DScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandler \ + TestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandler \ + TestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandler \ + TestDScreenSinkHandlerTestDScreenSinkHandlerTestDScreenSinkHandlerTest"; + int32_t ret = DScreenSinkHandler::GetInstance().InitSink(param); + EXPECT_EQ(DH_SUCCESS, ret); +} + /** * @tc.name: LocalHardware_001 * @tc.desc: Verify the SubscribeLocalHardware function. @@ -57,6 +86,23 @@ HWTEST_F(DScreenSinkHandlerTest, LocalHardware_001, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_SA_SINKPROXY_NOT_INIT, ret); } +/** + * @tc.name: SubscribeLocalHardware_001 + * @tc.desc: Verify the SubscribeLocalHardware function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSinkHandlerTest, SubscribeLocalHardware_001, TestSize.Level1) +{ + const std::string dhId = ""; + const std::string param = "DScreenSinkHandlerTest"; + int32_t ret = DScreenSinkHandler::GetInstance().SubscribeLocalHardware(dhId, param); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); + + ret = DScreenSinkHandler::GetInstance().UnsubscribeLocalHardware(dhId); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); +} + /** * @tc.name: OnRemoteSinkSvrDied_001 * @tc.desc: Verify the OnRemoteSinkSvrDied function. diff --git a/interfaces/innerkits/native_cpp/test/unittest/screensourcetest/src/dscreen_source_handler_test.cpp b/interfaces/innerkits/native_cpp/test/unittest/screensourcetest/src/dscreen_source_handler_test.cpp index db5d952c..9229e70b 100644 --- a/interfaces/innerkits/native_cpp/test/unittest/screensourcetest/src/dscreen_source_handler_test.cpp +++ b/interfaces/innerkits/native_cpp/test/unittest/screensourcetest/src/dscreen_source_handler_test.cpp @@ -39,6 +39,36 @@ void DScreenSourceHandlerTest::TearDown(void) DScreenSourceHandler::GetInstance().ReleaseSource(); } +/** + * @tc.name: InitSource_001 + * @tc.desc: Verify the InitSource function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSourceHandlerTest, InitSource_001, TestSize.Level1) +{ + std::string params = ""; + int32_t ret = DScreenSourceHandler::GetInstance().InitSource(params); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); +} + +/** + * @tc.name: InitSource_002 + * @tc.desc: Verify the InitSource function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSourceHandlerTest, InitSource_002, TestSize.Level1) +{ + std::string params = "DScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTest \ + DScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTest \ + DScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTest \ + DScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTestDScreenSourceHandlerTest"; + int32_t ret = DScreenSourceHandler::GetInstance().InitSource(params); + EXPECT_EQ(DH_SUCCESS, ret); +} + + /** * @tc.name: RegisterDistributedHardware_001 * @tc.desc: Verify the RegisterDistributedHardware function. @@ -131,6 +161,30 @@ HWTEST_F(DScreenSourceHandlerTest, RegisterDistributedHardware_005, TestSize.Lev EXPECT_EQ(ERR_DH_SCREEN_REGISTER_CALLBACK_NOT_INIT, ret); } +/** + * @tc.name: RegisterDistributedHardware_006 + * @tc.desc: Verify the RegisterDistributedHardware function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSourceHandlerTest, RegisterDistributedHardware_006, TestSize.Level1) +{ + const std::string devId = "devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId"; + const std::string dhId = "dhId"; + EnableParam param; + param.version = "1"; + param.attrs = "attrs"; + std::shared_ptr callback = std::make_shared(); + if (DScreenSourceHandler::GetInstance().dScreenSourceCallback_ == nullptr) { + DScreenSourceHandler::GetInstance().dScreenSourceCallback_ = new (std::nothrow) DScreenSourceCallback(); + } + int32_t ret = DScreenSourceHandler::GetInstance().RegisterDistributedHardware(devId, dhId, param, callback); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); +} + /** * @tc.name: UnregisterDistributedHardware_001 * @tc.desc: Verify the UnregisterDistributedHardware function. @@ -213,6 +267,27 @@ HWTEST_F(DScreenSourceHandlerTest, UnregisterDistributedHardware_005, TestSize.L EXPECT_EQ(ERR_DH_SCREEN_SA_SOURCEPROXY_NOT_INIT, ret); } +/** + * @tc.name: UnregisterDistributedHardware_006 + * @tc.desc: Verify the UnregisterDistributedHardware function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenSourceHandlerTest, UnregisterDistributedHardware_006, TestSize.Level1) +{ + const std::string devId = "devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId \ + devIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevIddevId"; + const std::string dhId = "dhId"; + std::shared_ptr callback = std::make_shared(); + if (DScreenSourceHandler::GetInstance().dScreenSourceCallback_ == nullptr) { + DScreenSourceHandler::GetInstance().dScreenSourceCallback_ = new (std::nothrow) DScreenSourceCallback(); + } + int32_t ret = DScreenSourceHandler::GetInstance().UnregisterDistributedHardware(devId, dhId, callback); + EXPECT_EQ(ERR_DH_SCREEN_INPUT_PARAM_INVALID, ret); +} + /** * @tc.name: ConfigDistributedHardware_001 * @tc.desc: Verify the ConfigDistributedHardware function. diff --git a/screenhandler/test/unittest/screenhandler/src/dscreen_handler_test.cpp b/screenhandler/test/unittest/screenhandler/src/dscreen_handler_test.cpp index 98252864..70ed505a 100644 --- a/screenhandler/test/unittest/screenhandler/src/dscreen_handler_test.cpp +++ b/screenhandler/test/unittest/screenhandler/src/dscreen_handler_test.cpp @@ -57,5 +57,19 @@ HWTEST_F(DScreenHandlerTest, RegisterPluginListener_001, TestSize.Level1) EXPECT_EQ(listener, DScreenHandler::GetInstance().listener_); } +/** + * @tc.name: RegisterPluginListener_002 + * @tc.desc: Verify the RegisterPluginListener function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(DScreenHandlerTest, RegisterPluginListener_002, TestSize.Level1) +{ + std::shared_ptr listener = nullptr; + DScreenHandler::GetInstance().listener_ = nullptr; + DScreenHandler::GetInstance().RegisterPluginListener(listener); + + EXPECT_EQ(listener, DScreenHandler::GetInstance().listener_); +} } } \ No newline at end of file diff --git a/services/screenservice/test/unittest/sinkservice/screenregionmgr/src/screenregionmgr_test.cpp b/services/screenservice/test/unittest/sinkservice/screenregionmgr/src/screenregionmgr_test.cpp index 5fd622c9..5b205fac 100644 --- a/services/screenservice/test/unittest/sinkservice/screenregionmgr/src/screenregionmgr_test.cpp +++ b/services/screenservice/test/unittest/sinkservice/screenregionmgr/src/screenregionmgr_test.cpp @@ -49,6 +49,22 @@ HWTEST_F(ScreenRegionManagerTest, ReleaseAllRegions_001, TestSize.Level1) EXPECT_EQ(DH_SUCCESS, ret); } +/** + * @tc.name: ReleaseAllRegions_002 + * @tc.desc: Verify the ReleaseAllRegions function failed. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ScreenRegionManagerTest, ReleaseAllRegions_002, TestSize.Level1) +{ + const std::string remoteDevId = "sourceDevId"; + std::shared_ptr screenRegion = nullptr; + ScreenRegionManager::GetInstance().screenRegions_[remoteDevId] = screenRegion; + int32_t ret = ScreenRegionManager::GetInstance().ReleaseAllRegions(); + + EXPECT_EQ(DH_SUCCESS, ret); +} + /** * @tc.name: NotifyRemoteScreenService_001 * @tc.desc: Verify the NotifyRemoteScreenService function failed. @@ -88,6 +104,26 @@ HWTEST_F(ScreenRegionManagerTest, HandleNotifySetUp_001, TestSize.Level1) ScreenRegionManager::GetInstance().screenRegions_.clear(); } +/** + * @tc.name: HandleNotifySetUp_002 + * @tc.desc: Verify the HandleNotifySetUp function failed. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ScreenRegionManagerTest, HandleNotifySetUp_002, TestSize.Level1) +{ + ScreenRegionManager::GetInstance().screenRegions_.clear(); + const std::string remoteDevId = "sourceDevId"; + const std::string eventContent = "{\"dhIds\":\"SCREEN#0\",\"mapRelations\":{\"displayIds\":0,\ + \"displayRects\":{\"heights\":1280,\"startXs\":0,\"startYs\":0,\"widths\":720},\"screenIds\":2,\ + \"screenRects\":{\"heights\":1280,\"startXs\":0,\"startYs\":0,\"widths\":720}},\"screenIds\":2,\ + \"videoParams\":{\"codecTypes\":2,\"colorFormats\":3,\"fpss\":30,\"screenHeights\":1280,\ + \"screenWidths\":720,\"videoHeights\":1280,\"videoWidths\":720}}"; + ScreenRegionManager::GetInstance().HandleNotifySetUp(remoteDevId, eventContent); + + EXPECT_EQ(0, ScreenRegionManager::GetInstance().screenRegions_.size()); +} + /** * @tc.name: GetDScreenSourceSA_001 * @tc.desc: Verify the GetDScreenSourceSA function failed. diff --git a/services/screentransport/test/unittest/screensourceprocessor/src/image_source_encoder_test.cpp b/services/screentransport/test/unittest/screensourceprocessor/src/image_source_encoder_test.cpp index 4805246f..2ba35e1f 100644 --- a/services/screentransport/test/unittest/screensourceprocessor/src/image_source_encoder_test.cpp +++ b/services/screentransport/test/unittest/screensourceprocessor/src/image_source_encoder_test.cpp @@ -62,6 +62,22 @@ HWTEST_F(ImageSourceEncoderTest, ConfigureEncoder_002, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_TRANS_CREATE_CODEC_FAILED, actual); } +/** + * @tc.name: ConfigureEncoder_003 + * @tc.desc: Verify the ConfigureEncoder function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, ConfigureEncoder_003, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H264; + configParam.videoFormat_ = -1; + + int32_t actual = encoder->ConfigureEncoder(configParam); + EXPECT_EQ(ERR_DH_SCREEN_TRANS_ILLEGAL_PARAM, actual); +} + /** * @tc.name: ReleaseEncoder_001 * @tc.desc: Verify the ReleaseEncoder function. @@ -170,6 +186,36 @@ HWTEST_F(ImageSourceEncoderTest, InitVideoEncoder_002, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_TRANS_CREATE_CODEC_FAILED, actual); } +/** + * @tc.name: InitVideoEncoder_003 + * @tc.desc: Verify the InitVideoEncoder function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, InitVideoEncoder_003, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H265; + + int32_t actual = encoder->InitVideoEncoder(configParam); + EXPECT_EQ(DH_SUCCESS, actual); +} + +/** + * @tc.name: InitVideoEncoder_004 + * @tc.desc: Verify the InitVideoEncoder function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, InitVideoEncoder_004, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_MPEG4; + + int32_t actual = encoder->InitVideoEncoder(configParam); + EXPECT_EQ(DH_SUCCESS, actual); +} + /** * @tc.name: SetEncoderFormat_001 * @tc.desc: Verify the SetEncoderFormat function. @@ -179,9 +225,6 @@ HWTEST_F(ImageSourceEncoderTest, InitVideoEncoder_002, TestSize.Level1) HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_001, TestSize.Level1) { VideoParam configParam; - configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H264; - configParam.videoFormat_ = VIDEO_DATA_FORMAT_YUVI420; - int32_t actual = encoder->SetEncoderFormat(configParam); EXPECT_EQ(ERR_DH_SCREEN_TRANS_NULL_VALUE, actual); } @@ -195,10 +238,96 @@ HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_001, TestSize.Level1) HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_002, TestSize.Level1) { VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H264; + int32_t actual = encoder->InitVideoEncoder(configParam); configParam.codecType_ = -1; + actual = encoder->SetEncoderFormat(configParam); + EXPECT_EQ(ERR_DH_SCREEN_TRANS_ILLEGAL_PARAM, actual); +} - int32_t actual = encoder->SetEncoderFormat(configParam); - EXPECT_EQ(ERR_DH_SCREEN_TRANS_NULL_VALUE, actual); +/** + * @tc.name: SetEncoderFormat_003 + * @tc.desc: Verify the SetEncoderFormat function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_003, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H264; + configParam.videoFormat_ = VIDEO_DATA_FORMAT_YUVI420; + int32_t actual = encoder->InitVideoEncoder(configParam); + actual = encoder->SetEncoderFormat(configParam); + + EXPECT_EQ(DH_SUCCESS, actual); +} + +/** + * @tc.name: SetEncoderFormat_004 + * @tc.desc: Verify the SetEncoderFormat function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_004, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_H265; + configParam.videoFormat_ = VIDEO_DATA_FORMAT_NV12; + int32_t actual = encoder->InitVideoEncoder(configParam); + actual = encoder->SetEncoderFormat(configParam); + + EXPECT_EQ(DH_SUCCESS, actual); } + +/** + * @tc.name: SetEncoderFormat_005 + * @tc.desc: Verify the SetEncoderFormat function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_005, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_MPEG4; + configParam.videoFormat_ = VIDEO_DATA_FORMAT_NV21; + int32_t actual = encoder->InitVideoEncoder(configParam); + actual = encoder->SetEncoderFormat(configParam); + + EXPECT_EQ(DH_SUCCESS, actual); +} + +/** + * @tc.name: SetEncoderFormat_006 + * @tc.desc: Verify the SetEncoderFormat function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_006, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_MPEG4; + configParam.videoFormat_ = VIDEO_DATA_FORMAT_RGBA8888; + int32_t actual = encoder->InitVideoEncoder(configParam); + actual = encoder->SetEncoderFormat(configParam); + + EXPECT_EQ(DH_SUCCESS, actual); +} + +/** + * @tc.name: SetEncoderFormat_007 + * @tc.desc: Verify the SetEncoderFormat function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ImageSourceEncoderTest, SetEncoderFormat_007, TestSize.Level1) +{ + VideoParam configParam; + configParam.codecType_ = VIDEO_CODEC_TYPE_VIDEO_MPEG4; + configParam.videoFormat_ = -1; + int32_t actual = encoder->InitVideoEncoder(configParam); + actual = encoder->SetEncoderFormat(configParam); + EXPECT_EQ(ERR_DH_SCREEN_TRANS_ILLEGAL_PARAM, actual); +} + } // DistributedHardware } // OHOS \ No newline at end of file diff --git a/services/screentransport/test/unittest/screensourcetrans/src/screen_source_trans_test.cpp b/services/screentransport/test/unittest/screensourcetrans/src/screen_source_trans_test.cpp index 344bc5c7..03523632 100644 --- a/services/screentransport/test/unittest/screensourcetrans/src/screen_source_trans_test.cpp +++ b/services/screentransport/test/unittest/screensourcetrans/src/screen_source_trans_test.cpp @@ -48,6 +48,35 @@ HWTEST_F(ScreenSourceTransTest, SetUp_001, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_TRANS_NULL_VALUE, actual); } +/** + * @tc.name: SetUp_002 + * @tc.desc: Verify the SetUp function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ScreenSourceTransTest, SetUp_002, TestSize.Level1) +{ + VideoParam localParam; + localParam.SetCodecType(VIDEO_CODEC_TYPE_VIDEO_H264); + localParam.SetVideoFormat(VIDEO_DATA_FORMAT_YUVI420); + localParam.SetVideoHeight(100); + localParam.SetVideoWidth(100); + localParam.SetScreenHeight(100); + localParam.SetScreenWidth(100); + VideoParam remoteParam; + remoteParam.SetCodecType(VIDEO_CODEC_TYPE_VIDEO_H264); + remoteParam.SetVideoFormat(VIDEO_DATA_FORMAT_YUVI420); + remoteParam.SetVideoHeight(100); + remoteParam.SetVideoWidth(100); + remoteParam.SetScreenHeight(100); + remoteParam.SetScreenWidth(100); + std::string peerDevId = "peerDevId"; + + int32_t actual = trans->SetUp(localParam, remoteParam, peerDevId); + + EXPECT_EQ(-1, actual); +} + /** * @tc.name: InitScreenTrans_001 * @tc.desc: Verify the InitScreenTrans function. @@ -398,6 +427,21 @@ HWTEST_F(ScreenSourceTransTest, OnSessionOpened_001, TestSize.Level1) EXPECT_EQ(false, trans->isChannelReady_); } +/** + * @tc.name: OnSessionOpened_002 + * @tc.desc: Verify the OnSessionOpened function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ScreenSourceTransTest, OnSessionOpened_002, TestSize.Level1) +{ + trans->imageProcessor_ = nullptr; + + trans->OnSessionOpened(); + + EXPECT_EQ(false, trans->isChannelReady_); +} + /** * @tc.name: OnSessionClosed_001 * @tc.desc: Verify the OnSessionClosed function. @@ -422,7 +466,25 @@ HWTEST_F(ScreenSourceTransTest, OnSessionClosed_001, TestSize.Level1) HWTEST_F(ScreenSourceTransTest, OnImageProcessDone_001, TestSize.Level1) { std::shared_ptr data = nullptr; - int32_t queueSize = trans->dataQueue_.size(); + uint32_t queueSize = trans->dataQueue_.size(); + trans->OnImageProcessDone(data); + + EXPECT_NE(queueSize, trans->dataQueue_.size()); +} + +/** + * @tc.name: OnImageProcessDone_002 + * @tc.desc: Verify the OnImageProcessDone function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(ScreenSourceTransTest, OnImageProcessDone_002, TestSize.Level1) +{ + std::shared_ptr data = nullptr; + uint32_t queueSize = trans->dataQueue_.size(); + for (uint32_t i = 0; i < ScreenSourceTrans::DATA_QUEUE_MAX_SIZE + 1; i++) { + trans->dataQueue_.push(data); + } trans->OnImageProcessDone(data); EXPECT_NE(queueSize, trans->dataQueue_.size()); diff --git a/services/softbusadapter/test/unittest/BUILD.gn b/services/softbusadapter/test/unittest/BUILD.gn index 9aa6673b..04045d27 100644 --- a/services/softbusadapter/test/unittest/BUILD.gn +++ b/services/softbusadapter/test/unittest/BUILD.gn @@ -57,7 +57,12 @@ ohos_unittest("SoftBusAdapterTest") { "//third_party/googletest:gtest_main", ] - external_deps = [ "c_utils:utils" ] + external_deps = [ + "access_token:libaccesstoken_sdk", + "access_token:libnativetoken", + "access_token:libtoken_setproc", + "c_utils:utils", + ] } group("soft_bus_adapter_test") { diff --git a/services/softbusadapter/test/unittest/src/softbus_adapter_test.cpp b/services/softbusadapter/test/unittest/src/softbus_adapter_test.cpp index a50bf7a9..6295a832 100644 --- a/services/softbusadapter/test/unittest/src/softbus_adapter_test.cpp +++ b/services/softbusadapter/test/unittest/src/softbus_adapter_test.cpp @@ -15,6 +15,10 @@ #include "softbus_adapter_test.h" +#include "accesstoken_kit.h" +#include "nativetoken_kit.h" +#include "token_setproc.h" + using namespace testing::ext; namespace OHOS { @@ -23,10 +27,88 @@ void SoftbusAdapterTest::SetUpTestCase(void) {} void SoftbusAdapterTest::TearDownTestCase(void) {} -void SoftbusAdapterTest::SetUp(void) {} +void SoftbusAdapterTest::SetUp(void) +{ + uint64_t tokenId; + const char *perms[2]; + perms[0] = OHOS_PERMISSION_DISTRIBUTED_SOFTBUS_CENTER; + perms[1] = OHOS_PERMISSION_DISTRIBUTED_DATASYNC; + NativeTokenInfoParams infoInstance = { + .dcapsNum = 0, + .permsNum = 2, + .aclsNum = 0, + .dcaps = NULL, + .perms = perms, + .acls = NULL, + .processName = "softbus_adapter_test", + .aplStr = "system_basic", + }; + tokenId = GetAccessTokenId(&infoInstance); + SetSelfTokenID(tokenId); + OHOS::Security::AccessToken::AccessTokenKit::ReloadNativeTokenInfo(); +} void SoftbusAdapterTest::TearDown(void) {} +static int32_t ScreenOnSoftbusSessionOpened(int32_t sessionId, int32_t result) +{ + return 0; +} + +static void ScreenOnSoftbusSessionClosed(int32_t sessionId) {} + +static void ScreenOnBytesReceived(int32_t sessionId, const void *data, uint32_t dataLen) {} + +static void ScreenOnStreamReceived(int32_t sessionId, const StreamData *data, const StreamData *ext, + const StreamFrameInfo *frameInfo) {} + +static void ScreenOnMessageReceived(int sessionId, const void *data, unsigned int dataLen) {} + +static void ScreenOnQosEvent(int sessionId, int eventId, int tvCount, const QosTv *tvList) {} + +/** + * @tc.name: CreateSoftbusSessionServer_001 + * @tc.desc: Verify the CreateSoftbusSessionServer function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, CreateSoftbusSessionServer_001, TestSize.Level1) +{ + softbusAdapter.sessListener_.OnSessionOpened = ScreenOnSoftbusSessionOpened; + softbusAdapter.sessListener_.OnSessionClosed = ScreenOnSoftbusSessionClosed; + softbusAdapter.sessListener_.OnBytesReceived = ScreenOnBytesReceived; + softbusAdapter.sessListener_.OnStreamReceived = ScreenOnStreamReceived; + softbusAdapter.sessListener_.OnMessageReceived = ScreenOnMessageReceived; + softbusAdapter.sessListener_.OnQosEvent = ScreenOnQosEvent; + + std::string pkgname = PKG_NAME; + std::string sessionName = DATA_SESSION_NAME; + std::string peerDevId = "peerDevId"; + + int32_t actual = softbusAdapter.CreateSoftbusSessionServer(pkgname, sessionName, peerDevId); + EXPECT_EQ(DH_SUCCESS, actual); + softbusAdapter.RemoveSoftbusSessionServer(pkgname, sessionName, peerDevId); +} + +/** + * @tc.name: CreateSoftbusSessionServer_002 + * @tc.desc: Verify the CreateSoftbusSessionServer function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, CreateSoftbusSessionServer_002, TestSize.Level1) +{ + softbusAdapter.mapSessionSet_.clear(); + std::string pkgname = PKG_NAME; + std::string sessionName = DATA_SESSION_NAME; + std::string peerDevId = "peerDevId"; + softbusAdapter.mapSessionSet_[sessionName].insert(peerDevId); + + int32_t actual = softbusAdapter.CreateSoftbusSessionServer(pkgname, sessionName, peerDevId); + EXPECT_EQ(DH_SUCCESS, actual); + softbusAdapter.RemoveSoftbusSessionServer(pkgname, sessionName, peerDevId); +} + /** * @tc.name: RegisterSoftbusListener_001 * @tc.desc: Verify the RegisterSoftbusListener function. @@ -35,7 +117,7 @@ void SoftbusAdapterTest::TearDown(void) {} */ HWTEST_F(SoftbusAdapterTest, RegisterSoftbusListener_001, TestSize.Level1) { - std::shared_ptr listener = std::make_shared();; + std::shared_ptr listener = std::make_shared(); std::string sessionName = DATA_SESSION_NAME; std::string peerDevId = "testDevId"; @@ -54,7 +136,7 @@ HWTEST_F(SoftbusAdapterTest, RegisterSoftbusListener_001, TestSize.Level1) */ HWTEST_F(SoftbusAdapterTest, RegisterSoftbusListener_002, TestSize.Level1) { - std::shared_ptr listener = std::make_shared();; + std::shared_ptr listener = std::make_shared(); std::string sessionName = DATA_SESSION_NAME; std::string peerDevId = "testDevId"; @@ -65,6 +147,22 @@ HWTEST_F(SoftbusAdapterTest, RegisterSoftbusListener_002, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_ADAPTER_REGISTER_SOFTBUS_LISTENER_FAIL, actual); } +/** + * @tc.name: RegisterSoftbusListener_003 + * @tc.desc: Verify the RegisterSoftbusListener function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, RegisterSoftbusListener_003, TestSize.Level1) +{ + std::shared_ptr listener = nullptr; + std::string sessionName = DATA_SESSION_NAME; + std::string peerDevId = "testDevId"; + + int32_t actual = softbusAdapter.RegisterSoftbusListener(listener, sessionName, peerDevId); + EXPECT_EQ(ERR_DH_SCREEN_ADAPTER_REGISTER_SOFTBUS_LISTENER_FAIL, actual); +} + /** * @tc.name: UnRegisterSoftbusListener_001 * @tc.desc: Verify the UnRegisterSoftbusListener function. @@ -98,6 +196,23 @@ HWTEST_F(SoftbusAdapterTest, RemoveSoftbusSessionServer_001, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_TRANS_ILLEGAL_OPERATION, actual); } +/** + * @tc.name: RemoveSoftbusSessionServer_002 + * @tc.desc: Verify the RemoveSoftbusSessionServer function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, RemoveSoftbusSessionServer_002, TestSize.Level1) +{ + std::string pkgname = PKG_NAME; + std::string sessionName = DATA_SESSION_NAME; + std::string peerDevId = "peerDevId"; + softbusAdapter.mapSessionSet_[sessionName].insert("peerDevIds"); + + int32_t actual = softbusAdapter.RemoveSoftbusSessionServer(pkgname, sessionName, peerDevId); + EXPECT_EQ(ERR_DH_SCREEN_TRANS_ILLEGAL_OPERATION, actual); +} + /** * @tc.name: OpenSoftbusSession_001 * @tc.desc: Verify the OpenSoftbusSession function. @@ -123,7 +238,7 @@ HWTEST_F(SoftbusAdapterTest, OpenSoftbusSession_001, TestSize.Level1) */ HWTEST_F(SoftbusAdapterTest, OpenSoftbusSession_002, TestSize.Level1) { - std::string mySessionName = DATA_SESSION_NAME; + std::string mySessionName = "mySessionName"; std::string peerSessionName = DATA_SESSION_NAME; std::string peerDevId = "testDevId"; @@ -234,6 +349,22 @@ HWTEST_F(SoftbusAdapterTest, OnSoftbusSessionOpened_001, TestSize.Level1) EXPECT_EQ(ERR_DH_SCREEN_TRANS_ERROR, actual); } +/** + * @tc.name: OnSoftbusSessionOpened_002 + * @tc.desc: Verify the OnSoftbusSessionOpened function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, OnSoftbusSessionOpened_002, TestSize.Level1) +{ + int32_t sessionId = 0; + int32_t result = -1; + + int32_t actual = softbusAdapter.OnSoftbusSessionOpened(sessionId, result); + + EXPECT_EQ(ERR_DH_SCREEN_ADAPTER_OPEN_SESSION_FAIL, actual); +} + /** * @tc.name: OnSoftbusSessionClosed_001 * @tc.desc: Verify the OnSoftbusSessionClosed function. @@ -266,5 +397,19 @@ HWTEST_F(SoftbusAdapterTest, OnSoftbusSessionClosed_002, TestSize.Level1) softbusAdapter.OnSoftbusSessionClosed(sessionId); } + +/** + * @tc.name: GetSoftbusListenerById_001 + * @tc.desc: Verify the GetSoftbusListenerById function. + * @tc.type: FUNC + * @tc.require: Issue Number + */ +HWTEST_F(SoftbusAdapterTest, GetSoftbusListenerById_001, TestSize.Level1) +{ + int32_t sessionId = 0; + softbusAdapter.mapSessListeners_[sessionId] = nullptr; + std::shared_ptr listener = softbusAdapter.GetSoftbusListenerById(sessionId); + EXPECT_EQ(nullptr, listener); +} } // DistributedHardware } // OHOS \ No newline at end of file -- Gitee