1 /*
2 * Copyright (c) 2022 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #define private public
17 #include "dscreen_source_callback_test.h"
18 #undef private
19
20 using namespace testing;
21 using namespace testing::ext;
22
23 namespace OHOS {
24 namespace DistributedHardware {
SetUpTestCase(void)25 void DScreenSourceCallbackTest::SetUpTestCase(void) {}
26
TearDownTestCase(void)27 void DScreenSourceCallbackTest::TearDownTestCase(void) {}
28
SetUp(void)29 void DScreenSourceCallbackTest::SetUp(void)
30 {
31 dScreenSourceCallback_ = new DScreenSourceCallback();
32 }
33
TearDown(void)34 void DScreenSourceCallbackTest::TearDown(void)
35 {
36 dScreenSourceCallback_ = nullptr;
37 }
38
39 /**
40 * @tc.name: OnNotifyRegResult_001
41 * @tc.desc: Verify the OnNotifyRegResult function.
42 * @tc.type: FUNC
43 * @tc.require: Issue Number
44 */
45 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_001, TestSize.Level1)
46 {
47 const std::string devId = "devId";
48 const std::string dhId = "dhId";
49 const std::string reqId = "reqIdReg";
50 int32_t status = 0;
51 const std::string data = "data";
52 std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
53 dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
54 int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
55 dScreenSourceCallback_->PopRegRegisterCallback(reqId);
56 EXPECT_EQ(DH_SUCCESS, ret);
57 }
58
59 /**
60 * @tc.name: OnNotifyRegResult_002
61 * @tc.desc: Verify the OnNotifyRegResult function.
62 * @tc.type: FUNC
63 * @tc.require: Issue Number
64 */
65 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_002, TestSize.Level1)
66 {
67 const std::string devId = "devId";
68 const std::string dhId = "dhId";
69 const std::string reqId = "reqId";
70 int32_t status = 0;
71 const std::string data = "data";
72 int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
73 EXPECT_EQ(ERR_DH_SCREEN_SA_REGISTERCALLBACK_NOT_FOUND, ret);
74 }
75
76 /**
77 * @tc.name: OnNotifyRegResult_003
78 * @tc.desc: Verify the OnNotifyRegResult function.
79 * @tc.type: FUNC
80 * @tc.require: Issue Number
81 */
82 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_003, TestSize.Level1)
83 {
84 const std::string devId = "devId";
85 const std::string dhId = "dhId";
86 const std::string reqId = "reqIdReg";
87 int32_t status = 0;
88 const std::string data = "data";
89 std::shared_ptr<RegisterCallback> callback = nullptr;
90 dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
91 int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
92 dScreenSourceCallback_->PopRegRegisterCallback(reqId);
93 EXPECT_EQ(ERR_DH_SCREEN_SA_REGISTERCALLBACK_NOT_FOUND, ret);
94 }
95
96 /**
97 * @tc.name: OnNotifyUnregResult_001
98 * @tc.desc: Verify the OnNotifyUnregResult function.
99 * @tc.type: FUNC
100 * @tc.require: Issue Number
101 */
102 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_001, TestSize.Level1)
103 {
104 const std::string devId = "devId";
105 const std::string dhId = "dhId";
106 const std::string reqId = "reqIdUnreg";
107 int32_t status = 0;
108 const std::string data = "data";
109 std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
110 dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
111 int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
112 dScreenSourceCallback_->PopUnregisterCallback(reqId);
113 EXPECT_EQ(DH_SUCCESS, ret);
114 }
115
116 /**
117 * @tc.name: OnNotifyUnregResult_002
118 * @tc.desc: Verify the OnNotifyUnregResult function.
119 * @tc.type: FUNC
120 * @tc.require: Issue Number
121 */
122 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_002, TestSize.Level1)
123 {
124 const std::string devId = "devId";
125 const std::string dhId = "dhId";
126 const std::string reqId = "reqId";
127 int32_t status = 0;
128 const std::string data = "data";
129 int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
130 EXPECT_EQ(ERR_DH_SCREEN_SA_UNREGISTERCALLBACK_NOT_FOUND, ret);
131 }
132
133 /**
134 * @tc.name: OnNotifyUnregResult_003
135 * @tc.desc: Verify the OnNotifyUnregResult function.
136 * @tc.type: FUNC
137 * @tc.require: Issue Number
138 */
139 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_003, TestSize.Level1)
140 {
141 const std::string devId = "devId";
142 const std::string dhId = "dhId";
143 const std::string reqId = "reqIdUnreg";
144 int32_t status = 0;
145 const std::string data = "data";
146 std::shared_ptr<UnregisterCallback> callback = nullptr;
147 dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
148 int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
149 dScreenSourceCallback_->PopUnregisterCallback(reqId);
150 EXPECT_EQ(ERR_DH_SCREEN_SA_UNREGISTERCALLBACK_NOT_FOUND, ret);
151 }
152
153 /**
154 * @tc.name: PushRegRegisterCallback_001
155 * @tc.desc: Verify the PushRegRegisterCallback function.
156 * @tc.type: FUNC
157 * @tc.require: Issue Number
158 */
159 HWTEST_F(DScreenSourceCallbackTest, PushRegRegisterCallback_001, TestSize.Level1)
160 {
161 const std::string reqId = "reqIdReg";
162 std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
163 int32_t sizeFront = dScreenSourceCallback_->registerCallbackMap_.size();
164 dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
165 int32_t sizeEnd = dScreenSourceCallback_->registerCallbackMap_.size();
166 dScreenSourceCallback_->PopRegRegisterCallback(reqId);
167 EXPECT_GT(sizeEnd, sizeFront);
168 }
169
170 /**
171 * @tc.name: PopRegRegisterCallback_001
172 * @tc.desc: Verify the PopRegRegisterCallback function.
173 * @tc.type: FUNC
174 * @tc.require: Issue Number
175 */
176 HWTEST_F(DScreenSourceCallbackTest, PopRegRegisterCallback_001, TestSize.Level1)
177 {
178 const std::string reqId = "reqId";
179 std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
180 dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
181 int32_t sizeFront = dScreenSourceCallback_->registerCallbackMap_.size();
182 dScreenSourceCallback_->PopRegRegisterCallback(reqId);
183 int32_t sizeEnd = dScreenSourceCallback_->registerCallbackMap_.size();
184 EXPECT_GT(sizeFront, sizeEnd);
185 }
186
187
188 /**
189 * @tc.name: PushRegRegisterCallback_001
190 * @tc.desc: Verify the PushRegRegisterCallback function.
191 * @tc.type: FUNC
192 * @tc.require: Issue Number
193 */
194 HWTEST_F(DScreenSourceCallbackTest, PushUnregRegisterCallback_001, TestSize.Level1)
195 {
196 const std::string reqId = "reqIdUnreg";
197 std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
198 int32_t sizeFront = dScreenSourceCallback_->unregisterCallbackMap_.size();
199 dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
200 int32_t sizeEnd = dScreenSourceCallback_->unregisterCallbackMap_.size();
201 dScreenSourceCallback_->PopUnregisterCallback(reqId);
202 EXPECT_GT(sizeEnd, sizeFront);
203 }
204
205 /**
206 * @tc.name: PopRegRegisterCallback_001
207 * @tc.desc: Verify the PopRegRegisterCallback function.
208 * @tc.type: FUNC
209 * @tc.require: Issue Number
210 */
211 HWTEST_F(DScreenSourceCallbackTest, PopUnregRegisterCallback_001, TestSize.Level1)
212 {
213 const std::string reqId = "reqId";
214 std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
215 dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
216 int32_t sizeFront = dScreenSourceCallback_->unregisterCallbackMap_.size();
217 dScreenSourceCallback_->PopUnregisterCallback(reqId);
218 int32_t sizeEnd = dScreenSourceCallback_->unregisterCallbackMap_.size();
219 EXPECT_GT(sizeFront, sizeEnd);
220 }
221 }
222 }