1 /*
2 * Copyright (c) 2023 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 <gtest/gtest.h>
17 #include "iremote_object_mocker.h"
18 #include "mock_message_parcel.h"
19 #include "session_manager_service_recover_proxy.h"
20
21
22 using namespace testing;
23 using namespace testing::ext;
24
25
26 namespace OHOS {
27 namespace Rosen {
28 class SessionManagerServiceRecoverProxyTest : public testing::Test {
29 public:
30 static void SetUpTestCase();
31 static void TearDownTestCase();
32 void SetUp() override;
33 void TearDown() override;
34 sptr<IRemoteObject> iRemoteObjectMocker_;
35 sptr<SessionManagerServiceRecoverProxy> sessionManagerServiceRecoverProxy_;
36 };
37
SetUpTestCase()38 void SessionManagerServiceRecoverProxyTest::SetUpTestCase() {}
39
TearDownTestCase()40 void SessionManagerServiceRecoverProxyTest::TearDownTestCase() {}
41
SetUp()42 void SessionManagerServiceRecoverProxyTest::SetUp() {}
43
TearDown()44 void SessionManagerServiceRecoverProxyTest::TearDown() {}
45
46 namespace {
47 /**
48 * @tc.name: OnSessionManagerServiceRecover01
49 * @tc.desc: normal function
50 * @tc.type: FUNC
51 */
52 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnSessionManagerServiceRecover01, Function | SmallTest | Level2)
53 {
54 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
55 ASSERT_NE(iRemoteObjectMocker, nullptr);
56 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
57 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
58 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
59 ASSERT_NE(sessionManagerService, nullptr);
60 sessionManagerServiceRecoverProxy_->OnSessionManagerServiceRecover(sessionManagerService);
61 }
62
63 /**
64 * @tc.name: OnSessionManagerServiceRecover02
65 * @tc.desc: normal function
66 * @tc.type: FUNC
67 */
68 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnSessionManagerServiceRecover02, Function | SmallTest | Level2)
69 {
70 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
71 ASSERT_NE(iRemoteObjectMocker, nullptr);
72 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
73 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
74 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
75 ASSERT_NE(sessionManagerService, nullptr);
76 MockMessageParcel::SetWriteInterfaceTokenErrorFlag(true);
77 sessionManagerServiceRecoverProxy_->OnSessionManagerServiceRecover(sessionManagerService);
78 MockMessageParcel::ClearAllErrorFlag();
79 }
80
81 /**
82 * @tc.name: OnSessionManagerServiceRecover03
83 * @tc.desc: normal function
84 * @tc.type: FUNC
85 */
86 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnSessionManagerServiceRecover03, Function | SmallTest | Level2)
87 {
88 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
89 ASSERT_NE(iRemoteObjectMocker, nullptr);
90 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
91 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
92 sptr<IRemoteObject> sessionManagerService = nullptr;
93 sessionManagerServiceRecoverProxy_->OnSessionManagerServiceRecover(sessionManagerService);
94 }
95
96 /**
97 * @tc.name: OnSessionManagerServiceRecover04
98 * @tc.desc: normal function
99 * @tc.type: FUNC
100 */
101 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnSessionManagerServiceRecover04, Function | SmallTest | Level2)
102 {
103 sptr<MockIRemoteObject> mockIRemoteObject = new (std::nothrow) MockIRemoteObject();
104 ASSERT_NE(mockIRemoteObject, nullptr);
105 mockIRemoteObject->sendRequestResult_ = 1;
106 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(mockIRemoteObject);
107 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
108 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
109 ASSERT_NE(sessionManagerService, nullptr);
110 sessionManagerServiceRecoverProxy_->OnSessionManagerServiceRecover(sessionManagerService);
111 }
112
113 /**
114 * @tc.name: OnWMSConnectionChanged01
115 * @tc.desc: normal function
116 * @tc.type: FUNC
117 */
118 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged01, Function | SmallTest | Level2)
119 {
120 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
121 ASSERT_NE(iRemoteObjectMocker, nullptr);
122 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
123 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
124 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
125 ASSERT_NE(sessionManagerService, nullptr);
126 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, 0, true, sessionManagerService);
127 }
128
129 /**
130 * @tc.name: OnWMSConnectionChanged02
131 * @tc.desc: normal function
132 * @tc.type: FUNC
133 */
134 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged02, Function | SmallTest | Level2)
135 {
136 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
137 ASSERT_NE(iRemoteObjectMocker, nullptr);
138 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
139 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
140 MockMessageParcel::SetWriteInterfaceTokenErrorFlag(true);
141 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
142 ASSERT_NE(sessionManagerService, nullptr);
143 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, 0, true, sessionManagerService);
144 MockMessageParcel::ClearAllErrorFlag();
145 }
146
147 /**
148 * @tc.name: OnWMSConnectionChanged03
149 * @tc.desc: normal function
150 * @tc.type: FUNC
151 */
152 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged03, Function | SmallTest | Level2)
153 {
154 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
155 ASSERT_NE(iRemoteObjectMocker, nullptr);
156 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
157 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
158 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
159 ASSERT_NE(sessionManagerService, nullptr);
160 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(-1, 0, true, sessionManagerService);
161 }
162
163 /**
164 * @tc.name: OnWMSConnectionChanged04
165 * @tc.desc: normal function
166 * @tc.type: FUNC
167 */
168 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged04, Function | SmallTest | Level2)
169 {
170 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
171 ASSERT_NE(iRemoteObjectMocker, nullptr);
172 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
173 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
174 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
175 ASSERT_NE(sessionManagerService, nullptr);
176 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, -1, true, sessionManagerService);
177 }
178
179 /**
180 * @tc.name: OnWMSConnectionChanged05
181 * @tc.desc: normal function
182 * @tc.type: FUNC
183 */
184 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged05, Function | SmallTest | Level2)
185 {
186 sptr<IRemoteObject> iRemoteObjectMocker = new (std::nothrow) IRemoteObjectMocker();
187 ASSERT_NE(iRemoteObjectMocker, nullptr);
188 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(iRemoteObjectMocker);
189 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
190 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
191 ASSERT_NE(sessionManagerService, nullptr);
192 MockMessageParcel::SetWriteBoolErrorFlag(true);
193 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, 1, true, sessionManagerService);
194 MockMessageParcel::ClearAllErrorFlag();
195 }
196
197 /**
198 * @tc.name: OnWMSConnectionChanged06
199 * @tc.desc: normal function
200 * @tc.type: FUNC
201 */
202 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged06, Function | SmallTest | Level2)
203 {
204 sptr<MockIRemoteObject> mockIRemoteObject = new (std::nothrow) MockIRemoteObject();
205 ASSERT_NE(mockIRemoteObject, nullptr);
206 mockIRemoteObject->sendRequestResult_ = 1;
207 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(mockIRemoteObject);
208 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
209 sptr<IRemoteObject> sessionManagerService = nullptr;
210 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, 1, true, sessionManagerService);
211 }
212
213 /**
214 * @tc.name: OnWMSConnectionChanged07
215 * @tc.desc: normal function
216 * @tc.type: FUNC
217 */
218 HWTEST_F(SessionManagerServiceRecoverProxyTest, OnWMSConnectionChanged07, Function | SmallTest | Level2)
219 {
220 sptr<MockIRemoteObject> mockIRemoteObject = new (std::nothrow) MockIRemoteObject();
221 ASSERT_NE(mockIRemoteObject, nullptr);
222 mockIRemoteObject->sendRequestResult_ = 1;
223 sessionManagerServiceRecoverProxy_ = new (std::nothrow) SessionManagerServiceRecoverProxy(mockIRemoteObject);
224 ASSERT_NE(sessionManagerServiceRecoverProxy_, nullptr);
225 sptr<IRemoteObject> sessionManagerService = new (std::nothrow) IRemoteObjectMocker();
226 ASSERT_NE(sessionManagerService, nullptr);
227 sessionManagerServiceRecoverProxy_->OnWMSConnectionChanged(1, 1, true, sessionManagerService);
228 }
229 }
230 }
231 }