1 /*
2 * Copyright (c) 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 <gtest/gtest.h>
17 #include "avsession_manager_impl.h"
18
19 using namespace testing::ext;
20
21 namespace OHOS {
22 namespace AVSession {
23 class AVSessionManagerImplTest : public testing::Test {
24 public:
25 static void SetUpTestCase();
26 static void TearDownTestCase();
27 void SetUp() override;
28 void TearDown() override;
29 };
30
SetUpTestCase()31 void AVSessionManagerImplTest::SetUpTestCase()
32 {}
33
TearDownTestCase()34 void AVSessionManagerImplTest::TearDownTestCase()
35 {}
36
SetUp()37 void AVSessionManagerImplTest::SetUp()
38 {}
39
TearDown()40 void AVSessionManagerImplTest::TearDown()
41 {}
42
43 /**
44 * @tc.name: OnPlaybackStateChange001
45 * @tc.desc: test OnPlaybackStateChange
46 * @tc.type: FUNC
47 * @tc.require:
48 */
49 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange001, TestSize.Level1)
50 {
51 AVSessionManagerImpl impl;
52 AppExecFwk::ElementName elementName;
53 elementName.SetBundleName("xiaoming");
54 std::shared_ptr<AVSession> ptr = impl.CreateSession("", 0, elementName);
55 EXPECT_EQ(ptr, nullptr);
56 }
57
58 /**
59 * @tc.name: OnPlaybackStateChange002
60 * @tc.desc: test OnPlaybackStateChange
61 * @tc.type: FUNC
62 * @tc.require:
63 */
64 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange002, TestSize.Level1)
65 {
66 AVSessionManagerImpl impl;
67 AppExecFwk::ElementName elementName;
68 std::shared_ptr<AVSession> ptr = impl.CreateSession("xiaoming", 0, elementName);
69 EXPECT_EQ(ptr, nullptr);
70 }
71
72 /**
73 * @tc.name: OnPlaybackStateChange003
74 * @tc.desc: test OnPlaybackStateChange
75 * @tc.type: FUNC
76 * @tc.require:
77 */
78 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange003, TestSize.Level1)
79 {
80 AVSessionManagerImpl impl;
81 AppExecFwk::ElementName elementName;
82 std::shared_ptr<AVSession> ptr = impl.CreateSession("", 0, elementName);
83 EXPECT_EQ(ptr, nullptr);
84 }
85
86 /**
87 * @tc.name: OnPlaybackStateChange004
88 * @tc.desc: test OnPlaybackStateChange
89 * @tc.type: FUNC
90 * @tc.require:
91 */
92 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange004, TestSize.Level1)
93 {
94 AVSessionManagerImpl impl;
95 AppExecFwk::ElementName elementName;
96 elementName.SetBundleName("xiaoming");
97 std::shared_ptr<AVSession> ptr = impl.CreateSession("xiaoming", 0, elementName);
98 EXPECT_EQ(ptr, nullptr);
99 }
100
101 /**
102 * @tc.name: OnPlaybackStateChange005
103 * @tc.desc: test OnPlaybackStateChange
104 * @tc.type: FUNC
105 * @tc.require:
106 */
107 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange005, TestSize.Level1)
108 {
109 AVSessionManagerImpl impl;
110 AppExecFwk::ElementName elementName;
111 elementName.SetBundleName("xiaoming");
112 elementName.SetAbilityName("xiaoqiang");
113 std::shared_ptr<AVSession> session = nullptr;
114 int32_t result = impl.CreateSession("", 0, elementName, session);
115 EXPECT_EQ(result, ERR_INVALID_PARAM);
116 }
117
118 /**
119 * @tc.name: OnPlaybackStateChange006
120 * @tc.desc: test OnPlaybackStateChange
121 * @tc.type: FUNC
122 * @tc.require:
123 */
124 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange006, TestSize.Level1)
125 {
126 AVSessionManagerImpl impl;
127 AppExecFwk::ElementName elementName;
128 elementName.SetAbilityName("xiaoqiang");
129 std::shared_ptr<AVSession> session = nullptr;
130 int32_t result = impl.CreateSession("xiaoming", 0, elementName, session);
131 EXPECT_EQ(result, ERR_INVALID_PARAM);
132 }
133
134 /**
135 * @tc.name: OnPlaybackStateChange007
136 * @tc.desc: test OnPlaybackStateChange
137 * @tc.type: FUNC
138 * @tc.require:
139 */
140 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange007, TestSize.Level1)
141 {
142 AVSessionManagerImpl impl;
143 AppExecFwk::ElementName elementName;
144 elementName.SetBundleName("xiaoming");
145 std::shared_ptr<AVSession> session = nullptr;
146 int32_t result = impl.CreateSession("xiaoming", 0, elementName, session);
147 EXPECT_EQ(result, ERR_INVALID_PARAM);
148 }
149
150 /**
151 * @tc.name: OnPlaybackStateChange008
152 * @tc.desc: test OnPlaybackStateChange
153 * @tc.type: FUNC
154 * @tc.require:
155 */
156 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange008, TestSize.Level1)
157 {
158 AVSessionManagerImpl impl;
159 AppExecFwk::ElementName elementName;
160 elementName.SetBundleName("xiaoming");
161 elementName.SetAbilityName("xiaoqiang");
162 std::shared_ptr<AVSession> session = nullptr;
163 int32_t result = impl.CreateSession("xiaoming", AVSession::SESSION_TYPE_INVALID, elementName, session);
164 EXPECT_EQ(result, ERR_INVALID_PARAM);
165 }
166
167 /**
168 * @tc.name: OnPlaybackStateChange009
169 * @tc.desc: test OnPlaybackStateChange
170 * @tc.type: FUNC
171 * @tc.require:
172 */
173 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange009, TestSize.Level1)
174 {
175 AVSessionManagerImpl impl;
176 AppExecFwk::ElementName elementName;
177 elementName.SetBundleName("xiaoming");
178 elementName.SetAbilityName("xiaoqiang");
179 std::shared_ptr<AVSession> session = nullptr;
180 int32_t result = impl.CreateSession("xiaoming", AVSession::SESSION_TYPE_AUDIO, elementName, session);
181 EXPECT_NE(result, ERR_INVALID_PARAM);
182 }
183
184 /**
185 * @tc.name: OnPlaybackStateChange010
186 * @tc.desc: test OnPlaybackStateChange
187 * @tc.type: FUNC
188 * @tc.require:
189 */
190 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange010, TestSize.Level1)
191 {
192 AVSessionManagerImpl impl;
193 AppExecFwk::ElementName elementName;
194 elementName.SetBundleName("xiaoming");
195 elementName.SetAbilityName("xiaoqiang");
196 std::shared_ptr<AVSession> session = nullptr;
197 int32_t result = impl.CreateSession("xiaoming", AVSession::SESSION_TYPE_VIDEO, elementName, session);
198 EXPECT_NE(result, ERR_INVALID_PARAM);
199 }
200
201 /**
202 * @tc.name: OnPlaybackStateChange011
203 * @tc.desc: test OnPlaybackStateChange
204 * @tc.type: FUNC
205 * @tc.require:
206 */
207 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange011, TestSize.Level1)
208 {
209 AVSessionManagerImpl impl;
210 AppExecFwk::ElementName elementName;
211 elementName.SetBundleName("xiaoming");
212 elementName.SetAbilityName("xiaoqiang");
213 std::shared_ptr<AVSession> session = nullptr;
214 int32_t result = impl.CreateSession("xiaoming", AVSession::SESSION_TYPE_VOICE_CALL, elementName, session);
215 EXPECT_NE(result, ERR_INVALID_PARAM);
216 }
217
218 /**
219 * @tc.name: OnPlaybackStateChange012
220 * @tc.desc: test OnPlaybackStateChange
221 * @tc.type: FUNC
222 * @tc.require:
223 */
224 HWTEST_F(AVSessionManagerImplTest, OnPlaybackStateChange012, TestSize.Level1)
225 {
226 AVSessionManagerImpl impl;
227 AppExecFwk::ElementName elementName;
228 elementName.SetBundleName("xiaoming");
229 elementName.SetAbilityName("xiaoqiang");
230 std::shared_ptr<AVSession> session = nullptr;
231 int32_t result = impl.CreateSession("xiaoming", AVSession::SESSION_TYPE_VIDEO_CALL, elementName, session);
232 EXPECT_NE(result, ERR_INVALID_PARAM);
233 }
234
235 /**
236 * @tc.name: CreateController001
237 * @tc.desc: test CreateController
238 * @tc.type: FUNC
239 * @tc.require:
240 */
241 HWTEST_F(AVSessionManagerImplTest, CreateController001, TestSize.Level1)
242 {
243 AVSessionManagerImpl impl;
244 std::shared_ptr<AVSessionController> controller = nullptr;
245 int32_t result = impl.CreateController("", controller);
246 EXPECT_EQ(result, ERR_INVALID_PARAM);
247 }
248
249 } // namespace AVSession
250 } // namespace OHOS