• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022-2024 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 #include "dscreen_source_callback_test.h"
17 
18 using namespace testing;
19 using namespace testing::ext;
20 
21 namespace OHOS {
22 namespace DistributedHardware {
SetUpTestCase(void)23 void DScreenSourceCallbackTest::SetUpTestCase(void) {}
24 
TearDownTestCase(void)25 void DScreenSourceCallbackTest::TearDownTestCase(void) {}
26 
SetUp(void)27 void DScreenSourceCallbackTest::SetUp(void)
28 {
29     dScreenSourceCallback_ = new DScreenSourceCallback();
30 }
31 
TearDown(void)32 void DScreenSourceCallbackTest::TearDown(void)
33 {
34     dScreenSourceCallback_ = nullptr;
35 }
36 
37 /**
38  * @tc.name: OnNotifyRegResult_001
39  * @tc.desc: Verify the OnNotifyRegResult function.
40  * @tc.type: FUNC
41  * @tc.require: Issue Number
42  */
43 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_001, TestSize.Level1)
44 {
45     const std::string devId = "devId";
46     const std::string dhId = "dhId";
47     const std::string reqId = "reqIdReg";
48     int32_t status = 0;
49     const std::string data = "data";
50     std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
51     dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
52     int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
53     dScreenSourceCallback_->PopRegRegisterCallback(reqId);
54     EXPECT_EQ(DH_SUCCESS, ret);
55 }
56 
57 /**
58  * @tc.name: OnNotifyRegResult_002
59  * @tc.desc: Verify the OnNotifyRegResult function.
60  * @tc.type: FUNC
61  * @tc.require: Issue Number
62  */
63 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_002, TestSize.Level1)
64 {
65     const std::string devId = "devId";
66     const std::string dhId = "dhId";
67     const std::string reqId = "reqId";
68     int32_t status = 0;
69     const std::string data = "data";
70     int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
71     EXPECT_EQ(ERR_DH_SCREEN_SA_REGISTERCALLBACK_NOT_FOUND, ret);
72 }
73 
74 /**
75  * @tc.name: OnNotifyRegResult_003
76  * @tc.desc: Verify the OnNotifyRegResult function.
77  * @tc.type: FUNC
78  * @tc.require: Issue Number
79  */
80 HWTEST_F(DScreenSourceCallbackTest, OnNotifyRegResult_003, TestSize.Level1)
81 {
82     const std::string devId = "devId";
83     const std::string dhId = "dhId";
84     const std::string reqId = "reqIdReg";
85     int32_t status = 0;
86     const std::string data = "data";
87     std::shared_ptr<RegisterCallback> callback = nullptr;
88     dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
89     int32_t ret = dScreenSourceCallback_->OnNotifyRegResult(devId, dhId, reqId, status, data);
90     dScreenSourceCallback_->PopRegRegisterCallback(reqId);
91     EXPECT_EQ(ERR_DH_SCREEN_SA_REGISTERCALLBACK_NOT_FOUND, ret);
92 }
93 
94 /**
95  * @tc.name: OnNotifyUnregResult_001
96  * @tc.desc: Verify the OnNotifyUnregResult function.
97  * @tc.type: FUNC
98  * @tc.require: Issue Number
99  */
100 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_001, TestSize.Level1)
101 {
102     const std::string devId = "devId";
103     const std::string dhId = "dhId";
104     const std::string reqId = "reqIdUnreg";
105     int32_t status = 0;
106     const std::string data = "data";
107     std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
108     dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
109     int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
110     dScreenSourceCallback_->PopUnregisterCallback(reqId);
111     EXPECT_EQ(DH_SUCCESS, ret);
112 }
113 
114 /**
115  * @tc.name: OnNotifyUnregResult_002
116  * @tc.desc: Verify the OnNotifyUnregResult function.
117  * @tc.type: FUNC
118  * @tc.require: Issue Number
119  */
120 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_002, TestSize.Level1)
121 {
122     const std::string devId = "devId";
123     const std::string dhId = "dhId";
124     const std::string reqId = "reqId";
125     int32_t status = 0;
126     const std::string data = "data";
127     int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
128     EXPECT_EQ(ERR_DH_SCREEN_SA_UNREGISTERCALLBACK_NOT_FOUND, ret);
129 }
130 
131 /**
132  * @tc.name: OnNotifyUnregResult_003
133  * @tc.desc: Verify the OnNotifyUnregResult function.
134  * @tc.type: FUNC
135  * @tc.require: Issue Number
136  */
137 HWTEST_F(DScreenSourceCallbackTest, OnNotifyUnregResult_003, TestSize.Level1)
138 {
139     const std::string devId = "devId";
140     const std::string dhId = "dhId";
141     const std::string reqId = "reqIdUnreg";
142     int32_t status = 0;
143     const std::string data = "data";
144     std::shared_ptr<UnregisterCallback> callback = nullptr;
145     dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
146     int32_t ret = dScreenSourceCallback_->OnNotifyUnregResult(devId, dhId, reqId, status, data);
147     dScreenSourceCallback_->PopUnregisterCallback(reqId);
148     EXPECT_EQ(ERR_DH_SCREEN_SA_UNREGISTERCALLBACK_NOT_FOUND, ret);
149 }
150 
151 /**
152  * @tc.name: PushRegRegisterCallback_001
153  * @tc.desc: Verify the PushRegRegisterCallback function.
154  * @tc.type: FUNC
155  * @tc.require: Issue Number
156  */
157 HWTEST_F(DScreenSourceCallbackTest, PushRegRegisterCallback_001, TestSize.Level1)
158 {
159     const std::string reqId = "reqIdReg";
160     std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
161     int32_t sizeFront = dScreenSourceCallback_->registerCallbackMap_.size();
162     dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
163     int32_t sizeEnd = dScreenSourceCallback_->registerCallbackMap_.size();
164     dScreenSourceCallback_->PopRegRegisterCallback(reqId);
165     EXPECT_GT(sizeEnd, sizeFront);
166 }
167 
168 /**
169  * @tc.name: PopRegRegisterCallback_001
170  * @tc.desc: Verify the PopRegRegisterCallback function.
171  * @tc.type: FUNC
172  * @tc.require: Issue Number
173  */
174 HWTEST_F(DScreenSourceCallbackTest, PopRegRegisterCallback_001, TestSize.Level1)
175 {
176     const std::string reqId = "reqId";
177     std::shared_ptr<RegisterCallback> callback = std::make_shared<RegisterCallbackTest>();
178     dScreenSourceCallback_->PushRegRegisterCallback(reqId, callback);
179     int32_t sizeFront = dScreenSourceCallback_->registerCallbackMap_.size();
180     dScreenSourceCallback_->PopRegRegisterCallback(reqId);
181     int32_t sizeEnd = dScreenSourceCallback_->registerCallbackMap_.size();
182     EXPECT_GT(sizeFront, sizeEnd);
183 }
184 
185 
186 /**
187  * @tc.name: PushRegRegisterCallback_001
188  * @tc.desc: Verify the PushRegRegisterCallback function.
189  * @tc.type: FUNC
190  * @tc.require: Issue Number
191  */
192 HWTEST_F(DScreenSourceCallbackTest, PushUnregRegisterCallback_001, TestSize.Level1)
193 {
194     const std::string reqId = "reqIdUnreg";
195     std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
196     int32_t sizeFront = dScreenSourceCallback_->unregisterCallbackMap_.size();
197     dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
198     int32_t sizeEnd = dScreenSourceCallback_->unregisterCallbackMap_.size();
199     dScreenSourceCallback_->PopUnregisterCallback(reqId);
200     EXPECT_GT(sizeEnd, sizeFront);
201 }
202 
203 /**
204  * @tc.name: PopRegRegisterCallback_001
205  * @tc.desc: Verify the PopRegRegisterCallback function.
206  * @tc.type: FUNC
207  * @tc.require: Issue Number
208  */
209 HWTEST_F(DScreenSourceCallbackTest, PopUnregRegisterCallback_001, TestSize.Level1)
210 {
211     const std::string reqId = "reqId";
212     std::shared_ptr<UnregisterCallback> callback = std::make_shared<UnregisterCallbackTest>();
213     dScreenSourceCallback_->PushUnregisterCallback(reqId, callback);
214     int32_t sizeFront = dScreenSourceCallback_->unregisterCallbackMap_.size();
215     dScreenSourceCallback_->PopUnregisterCallback(reqId);
216     int32_t sizeEnd = dScreenSourceCallback_->unregisterCallbackMap_.size();
217     EXPECT_GT(sizeFront, sizeEnd);
218 }
219 }  // namespace DistributedHardware
220 }  // namespace OHOS
221