1c29fa5a6Sopenharmony_ci/*
2c29fa5a6Sopenharmony_ci * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
3c29fa5a6Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4c29fa5a6Sopenharmony_ci * you may not use this file except in compliance with the License.
5c29fa5a6Sopenharmony_ci * You may obtain a copy of the License at
6c29fa5a6Sopenharmony_ci *
7c29fa5a6Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0
8c29fa5a6Sopenharmony_ci *
9c29fa5a6Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10c29fa5a6Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11c29fa5a6Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12c29fa5a6Sopenharmony_ci * See the License for the specific language governing permissions and
13c29fa5a6Sopenharmony_ci * limitations under the License.
14c29fa5a6Sopenharmony_ci */
15c29fa5a6Sopenharmony_ci
16c29fa5a6Sopenharmony_ci#include <gtest/gtest.h>
17c29fa5a6Sopenharmony_ci
18c29fa5a6Sopenharmony_ci#include "mmi_log.h"
19c29fa5a6Sopenharmony_ci#include "proto.h"
20c29fa5a6Sopenharmony_ci#include "uds_server.h"
21c29fa5a6Sopenharmony_ci
22c29fa5a6Sopenharmony_ci#undef MMI_LOG_TAG
23c29fa5a6Sopenharmony_ci#define MMI_LOG_TAG "UDSServerTest"
24c29fa5a6Sopenharmony_cinamespace OHOS {
25c29fa5a6Sopenharmony_cinamespace MMI {
26c29fa5a6Sopenharmony_cinamespace {
27c29fa5a6Sopenharmony_ciusing namespace testing::ext;
28c29fa5a6Sopenharmony_ciconst std::string PROGRAM_NAME = "uds_server_test";
29c29fa5a6Sopenharmony_ciconstexpr int32_t MODULE_TYPE = 1;
30c29fa5a6Sopenharmony_ciconstexpr int32_t UDS_FD = -1;
31c29fa5a6Sopenharmony_ciconstexpr int32_t UDS_UID = 100;
32c29fa5a6Sopenharmony_ciconstexpr int32_t UDS_PID = 100;
33c29fa5a6Sopenharmony_ci} // namespace
34c29fa5a6Sopenharmony_ci
35c29fa5a6Sopenharmony_ciclass UDSServerTest : public testing::Test {
36c29fa5a6Sopenharmony_cipublic:
37c29fa5a6Sopenharmony_ci    static void SetUpTestCase(void) {}
38c29fa5a6Sopenharmony_ci    static void TearDownTestCase(void) {}
39c29fa5a6Sopenharmony_ci};
40c29fa5a6Sopenharmony_ci
41c29fa5a6Sopenharmony_ciclass UDSServerUnitTest : public UDSServer {
42c29fa5a6Sopenharmony_cipublic:
43c29fa5a6Sopenharmony_ci    void SetFd(int32_t fd)
44c29fa5a6Sopenharmony_ci    {
45c29fa5a6Sopenharmony_ci        fd_ = fd;
46c29fa5a6Sopenharmony_ci    }
47c29fa5a6Sopenharmony_ci};
48c29fa5a6Sopenharmony_ci
49c29fa5a6Sopenharmony_ci/**
50c29fa5a6Sopenharmony_ci * @tc.name: SendMsg_001
51c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SendMsg_001
52c29fa5a6Sopenharmony_ci * @tc.type: FUNC
53c29fa5a6Sopenharmony_ci * @tc.require:
54c29fa5a6Sopenharmony_ci */
55c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SendMsg_001, TestSize.Level1)
56c29fa5a6Sopenharmony_ci{
57c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
58c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
59c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
60c29fa5a6Sopenharmony_ci    int32_t fd = 1000;
61c29fa5a6Sopenharmony_ci    UDSServer serObj;
62c29fa5a6Sopenharmony_ci    bool retResult = serObj.SendMsg(fd, pkt);
63c29fa5a6Sopenharmony_ci    EXPECT_FALSE(retResult);
64c29fa5a6Sopenharmony_ci}
65c29fa5a6Sopenharmony_ci
66c29fa5a6Sopenharmony_ci/**
67c29fa5a6Sopenharmony_ci * @tc.name: SendMsg_002
68c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SendMsg_002
69c29fa5a6Sopenharmony_ci * @tc.type: FUNC
70c29fa5a6Sopenharmony_ci * @tc.require:
71c29fa5a6Sopenharmony_ci */
72c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SendMsg_002, TestSize.Level1)
73c29fa5a6Sopenharmony_ci{
74c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
75c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
76c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
77c29fa5a6Sopenharmony_ci
78c29fa5a6Sopenharmony_ci    int32_t fd = -1001;
79c29fa5a6Sopenharmony_ci    UDSServer serObj;
80c29fa5a6Sopenharmony_ci    bool retResult = serObj.SendMsg(fd, pkt);
81c29fa5a6Sopenharmony_ci    ASSERT_FALSE(retResult);
82c29fa5a6Sopenharmony_ci}
83c29fa5a6Sopenharmony_ci
84c29fa5a6Sopenharmony_ci/**
85c29fa5a6Sopenharmony_ci * @tc.name: SendMsg_003
86c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SendMsg_003
87c29fa5a6Sopenharmony_ci * @tc.type: FUNC
88c29fa5a6Sopenharmony_ci * @tc.require:
89c29fa5a6Sopenharmony_ci */
90c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SendMsg_003, TestSize.Level1)
91c29fa5a6Sopenharmony_ci{
92c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
93c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
94c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
95c29fa5a6Sopenharmony_ci
96c29fa5a6Sopenharmony_ci    int32_t fd = 3333;
97c29fa5a6Sopenharmony_ci    UDSServer serObj;
98c29fa5a6Sopenharmony_ci    bool retResult = serObj.SendMsg(fd, pkt);
99c29fa5a6Sopenharmony_ci    ASSERT_FALSE(retResult);
100c29fa5a6Sopenharmony_ci}
101c29fa5a6Sopenharmony_ci
102c29fa5a6Sopenharmony_ci/**
103c29fa5a6Sopenharmony_ci * @tc.name: Multicast
104c29fa5a6Sopenharmony_ci * @tc.desc: Test the function Multicast
105c29fa5a6Sopenharmony_ci * @tc.type: FUNC
106c29fa5a6Sopenharmony_ci * @tc.require:
107c29fa5a6Sopenharmony_ci */
108c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, Multicast, TestSize.Level1)
109c29fa5a6Sopenharmony_ci{
110c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
111c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
112c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
113c29fa5a6Sopenharmony_ci    std::vector<int32_t> fds;
114c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(fds.push_back(1));
115c29fa5a6Sopenharmony_ci
116c29fa5a6Sopenharmony_ci    UDSServer serObj;
117c29fa5a6Sopenharmony_ci    serObj.Multicast(fds, pkt);
118c29fa5a6Sopenharmony_ci}
119c29fa5a6Sopenharmony_ci
120c29fa5a6Sopenharmony_ci/**
121c29fa5a6Sopenharmony_ci * @tc.name: Stop_001
122c29fa5a6Sopenharmony_ci * @tc.desc: Test the function Stop_001
123c29fa5a6Sopenharmony_ci * @tc.type: FUNC
124c29fa5a6Sopenharmony_ci * @tc.require:
125c29fa5a6Sopenharmony_ci */
126c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, Stop_001, TestSize.Level1)
127c29fa5a6Sopenharmony_ci{
128c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
129c29fa5a6Sopenharmony_ci    UDSServer serObj;
130c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(serObj.UdsStop());
131c29fa5a6Sopenharmony_ci}
132c29fa5a6Sopenharmony_ci
133c29fa5a6Sopenharmony_ci/**
134c29fa5a6Sopenharmony_ci * @tc.name: GetSession_001
135c29fa5a6Sopenharmony_ci * @tc.desc: Test the function GetSession_001
136c29fa5a6Sopenharmony_ci * @tc.type: FUNC
137c29fa5a6Sopenharmony_ci * @tc.require:
138c29fa5a6Sopenharmony_ci */
139c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, GetSession_001, TestSize.Level1)
140c29fa5a6Sopenharmony_ci{
141c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
142c29fa5a6Sopenharmony_ci    UDSServer UDS_server;
143c29fa5a6Sopenharmony_ci    int32_t fd = 0;
144c29fa5a6Sopenharmony_ci    auto retResult = UDS_server.GetSession(fd);
145c29fa5a6Sopenharmony_ci    EXPECT_TRUE(retResult == nullptr);
146c29fa5a6Sopenharmony_ci}
147c29fa5a6Sopenharmony_ci
148c29fa5a6Sopenharmony_ci/**
149c29fa5a6Sopenharmony_ci * @tc.name: GetSession_002
150c29fa5a6Sopenharmony_ci * @tc.desc: Test the function GetSession_002
151c29fa5a6Sopenharmony_ci * @tc.type: FUNC
152c29fa5a6Sopenharmony_ci * @tc.require:
153c29fa5a6Sopenharmony_ci */
154c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, GetSession_002, TestSize.Level1)
155c29fa5a6Sopenharmony_ci{
156c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
157c29fa5a6Sopenharmony_ci    UDSServer UDS_server;
158c29fa5a6Sopenharmony_ci    int32_t fd = 1000000;
159c29fa5a6Sopenharmony_ci    auto retResult = UDS_server.GetSession(fd);
160c29fa5a6Sopenharmony_ci    EXPECT_TRUE(retResult == nullptr);
161c29fa5a6Sopenharmony_ci}
162c29fa5a6Sopenharmony_ci
163c29fa5a6Sopenharmony_ci/**
164c29fa5a6Sopenharmony_ci * @tc.name: GetSession_003
165c29fa5a6Sopenharmony_ci * @tc.desc: Test the function GetSession_003
166c29fa5a6Sopenharmony_ci * @tc.type: FUNC
167c29fa5a6Sopenharmony_ci * @tc.require:
168c29fa5a6Sopenharmony_ci */
169c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, GetSession_003, TestSize.Level1)
170c29fa5a6Sopenharmony_ci{
171c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
172c29fa5a6Sopenharmony_ci    UDSServer UDS_server;
173c29fa5a6Sopenharmony_ci    int32_t fd = -1;
174c29fa5a6Sopenharmony_ci    auto retResult = UDS_server.GetSession(fd);
175c29fa5a6Sopenharmony_ci    EXPECT_TRUE(retResult == nullptr);
176c29fa5a6Sopenharmony_ci}
177c29fa5a6Sopenharmony_ci
178c29fa5a6Sopenharmony_ci/**
179c29fa5a6Sopenharmony_ci * @tc.name: UdsStop_001
180c29fa5a6Sopenharmony_ci * @tc.desc: Test the function UdsStop
181c29fa5a6Sopenharmony_ci * @tc.type: FUNC
182c29fa5a6Sopenharmony_ci * @tc.require:
183c29fa5a6Sopenharmony_ci */
184c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UdsStop_001, TestSize.Level1)
185c29fa5a6Sopenharmony_ci{
186c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
187c29fa5a6Sopenharmony_ci    UDSServer udsServer;
188c29fa5a6Sopenharmony_ci    const std::string programName = "program";
189c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
190c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
191c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
192c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
193c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
194c29fa5a6Sopenharmony_ci    int32_t tokenType = 1;
195c29fa5a6Sopenharmony_ci
196c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
197c29fa5a6Sopenharmony_ci    udsServer.UdsStop();
198c29fa5a6Sopenharmony_ci}
199c29fa5a6Sopenharmony_ci
200c29fa5a6Sopenharmony_ci/**
201c29fa5a6Sopenharmony_ci * @tc.name: GetClientPid_001
202c29fa5a6Sopenharmony_ci * @tc.desc: Test the function GetClientPid
203c29fa5a6Sopenharmony_ci * @tc.type: FUNC
204c29fa5a6Sopenharmony_ci * @tc.require:
205c29fa5a6Sopenharmony_ci */
206c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, GetClientPid_001, TestSize.Level1)
207c29fa5a6Sopenharmony_ci{
208c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
209c29fa5a6Sopenharmony_ci    UDSServer udsServer;
210c29fa5a6Sopenharmony_ci    int32_t fd = 1;
211c29fa5a6Sopenharmony_ci    int32_t pid1 = 0;
212c29fa5a6Sopenharmony_ci    const std::string programName = "program";
213c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
214c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
215c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
216c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
217c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
218c29fa5a6Sopenharmony_ci    int32_t tokenType = 1;
219c29fa5a6Sopenharmony_ci
220c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
221c29fa5a6Sopenharmony_ci    pid1 = udsServer.GetClientPid(fd);
222c29fa5a6Sopenharmony_ci    EXPECT_EQ(pid1, INVALID_PID);
223c29fa5a6Sopenharmony_ci}
224c29fa5a6Sopenharmony_ci
225c29fa5a6Sopenharmony_ci/**
226c29fa5a6Sopenharmony_ci * @tc.name: AddSocketPairInfo_001
227c29fa5a6Sopenharmony_ci * @tc.desc: Test the function AddSocketPairInfo
228c29fa5a6Sopenharmony_ci * @tc.type: FUNC
229c29fa5a6Sopenharmony_ci * @tc.require:
230c29fa5a6Sopenharmony_ci */
231c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddSocketPairInfo_001, TestSize.Level1)
232c29fa5a6Sopenharmony_ci{
233c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
234c29fa5a6Sopenharmony_ci    UDSServer udsServer;
235c29fa5a6Sopenharmony_ci    const std::string programName = "program";
236c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
237c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
238c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
239c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
240c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
241c29fa5a6Sopenharmony_ci    int32_t tokenType = 1;
242c29fa5a6Sopenharmony_ci    int32_t ret = 0;
243c29fa5a6Sopenharmony_ci
244c29fa5a6Sopenharmony_ci    ret = udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
245c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
246c29fa5a6Sopenharmony_ci}
247c29fa5a6Sopenharmony_ci
248c29fa5a6Sopenharmony_ci/**
249c29fa5a6Sopenharmony_ci * @tc.name: SetFdProperty_001
250c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SetFdProperty
251c29fa5a6Sopenharmony_ci * @tc.type: FUNC
252c29fa5a6Sopenharmony_ci * @tc.require:
253c29fa5a6Sopenharmony_ci */
254c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SetFdProperty_001, TestSize.Level1)
255c29fa5a6Sopenharmony_ci{
256c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
257c29fa5a6Sopenharmony_ci    UDSServer udsServer;
258c29fa5a6Sopenharmony_ci    int32_t ret = RET_ERR;
259c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_NATIVE;
260c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
261c29fa5a6Sopenharmony_ci    const std::string programName = "program";
262c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
263c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
264c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
265c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
266c29fa5a6Sopenharmony_ci
267c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
268c29fa5a6Sopenharmony_ci    ret = udsServer.SetFdProperty(tokenType, serverFd, toReturnClientFd);
269c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
270c29fa5a6Sopenharmony_ci}
271c29fa5a6Sopenharmony_ci
272c29fa5a6Sopenharmony_ci/**
273c29fa5a6Sopenharmony_ci * @tc.name: SetFdProperty_002
274c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SetFdProperty
275c29fa5a6Sopenharmony_ci * @tc.type: FUNC
276c29fa5a6Sopenharmony_ci * @tc.require:
277c29fa5a6Sopenharmony_ci */
278c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SetFdProperty_002, TestSize.Level1)
279c29fa5a6Sopenharmony_ci{
280c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
281c29fa5a6Sopenharmony_ci    UDSServer udsServer;
282c29fa5a6Sopenharmony_ci    int32_t ret = RET_ERR;
283c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
284c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
285c29fa5a6Sopenharmony_ci    const std::string programName = "program";
286c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
287c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
288c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
289c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
290c29fa5a6Sopenharmony_ci
291c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
292c29fa5a6Sopenharmony_ci    ret = udsServer.SetFdProperty(tokenType, serverFd, toReturnClientFd);
293c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
294c29fa5a6Sopenharmony_ci}
295c29fa5a6Sopenharmony_ci
296c29fa5a6Sopenharmony_ci/**
297c29fa5a6Sopenharmony_ci * @tc.name: Dump_001
298c29fa5a6Sopenharmony_ci * @tc.desc: Test the function Dump
299c29fa5a6Sopenharmony_ci * @tc.type: FUNC
300c29fa5a6Sopenharmony_ci * @tc.require:
301c29fa5a6Sopenharmony_ci */
302c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, Dump_001, TestSize.Level1)
303c29fa5a6Sopenharmony_ci{
304c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
305c29fa5a6Sopenharmony_ci    UDSServer udsServer;
306c29fa5a6Sopenharmony_ci    int32_t fd = 1;
307c29fa5a6Sopenharmony_ci    const std::vector<std::string> args = {"help"};
308c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
309c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
310c29fa5a6Sopenharmony_ci    const std::string programName = "program";
311c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
312c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
313c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
314c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
315c29fa5a6Sopenharmony_ci
316c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
317c29fa5a6Sopenharmony_ci    udsServer.Dump(fd, args);
318c29fa5a6Sopenharmony_ci}
319c29fa5a6Sopenharmony_ci
320c29fa5a6Sopenharmony_ci/**
321c29fa5a6Sopenharmony_ci * @tc.name: OnConnected_001
322c29fa5a6Sopenharmony_ci * @tc.desc: Test the function OnConnected
323c29fa5a6Sopenharmony_ci * @tc.type: FUNC
324c29fa5a6Sopenharmony_ci * @tc.require:
325c29fa5a6Sopenharmony_ci */
326c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnConnected_001, TestSize.Level1)
327c29fa5a6Sopenharmony_ci{
328c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
329c29fa5a6Sopenharmony_ci    UDSServer udsServer;
330c29fa5a6Sopenharmony_ci    SessionPtr sess;
331c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
332c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
333c29fa5a6Sopenharmony_ci    const std::string programName = "program";
334c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
335c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
336c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
337c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
338c29fa5a6Sopenharmony_ci
339c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
340c29fa5a6Sopenharmony_ci    udsServer.OnConnected(sess);
341c29fa5a6Sopenharmony_ci}
342c29fa5a6Sopenharmony_ci
343c29fa5a6Sopenharmony_ci/**
344c29fa5a6Sopenharmony_ci * @tc.name: SetRecvFun_001
345c29fa5a6Sopenharmony_ci * @tc.desc: Test the function SetRecvFun
346c29fa5a6Sopenharmony_ci * @tc.type: FUNC
347c29fa5a6Sopenharmony_ci * @tc.require:
348c29fa5a6Sopenharmony_ci */
349c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SetRecvFun_001, TestSize.Level1)
350c29fa5a6Sopenharmony_ci{
351c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
352c29fa5a6Sopenharmony_ci    UDSServer udsServer;
353c29fa5a6Sopenharmony_ci    MsgServerFunCallback fun{ nullptr };
354c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
355c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
356c29fa5a6Sopenharmony_ci    const std::string programName = "program";
357c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
358c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
359c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
360c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
361c29fa5a6Sopenharmony_ci
362c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
363c29fa5a6Sopenharmony_ci    udsServer.SetRecvFun(fun);
364c29fa5a6Sopenharmony_ci}
365c29fa5a6Sopenharmony_ci
366c29fa5a6Sopenharmony_ci/**
367c29fa5a6Sopenharmony_ci * @tc.name: OnEpollRecv_001
368c29fa5a6Sopenharmony_ci * @tc.desc: Test the function OnEpollRecv
369c29fa5a6Sopenharmony_ci * @tc.type: FUNC
370c29fa5a6Sopenharmony_ci * @tc.require:
371c29fa5a6Sopenharmony_ci */
372c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnEpollRecv_001, TestSize.Level1)
373c29fa5a6Sopenharmony_ci{
374c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
375c29fa5a6Sopenharmony_ci    UDSServer udsServer;
376c29fa5a6Sopenharmony_ci    int32_t size = 100;
377c29fa5a6Sopenharmony_ci    epoll_event ev;
378c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
379c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
380c29fa5a6Sopenharmony_ci    const std::string programName = "program";
381c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
382c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
383c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
384c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
385c29fa5a6Sopenharmony_ci
386c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
387c29fa5a6Sopenharmony_ci    int32_t fd = epoll_create(size);
388c29fa5a6Sopenharmony_ci    udsServer.OnEpollRecv(fd, ev);
389c29fa5a6Sopenharmony_ci}
390c29fa5a6Sopenharmony_ci
391c29fa5a6Sopenharmony_ci/**
392c29fa5a6Sopenharmony_ci * @tc.name: OnEpollRecv_002
393c29fa5a6Sopenharmony_ci * @tc.desc: Test the function OnEpollRecv
394c29fa5a6Sopenharmony_ci * @tc.type: FUNC
395c29fa5a6Sopenharmony_ci * @tc.require:
396c29fa5a6Sopenharmony_ci */
397c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnEpollRecv_002, TestSize.Level1)
398c29fa5a6Sopenharmony_ci{
399c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
400c29fa5a6Sopenharmony_ci    UDSServer udsServer;
401c29fa5a6Sopenharmony_ci    epoll_event ev;
402c29fa5a6Sopenharmony_ci    int32_t fd = -1;
403c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
404c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
405c29fa5a6Sopenharmony_ci    const std::string programName = "program";
406c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
407c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
408c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
409c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
410c29fa5a6Sopenharmony_ci
411c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
412c29fa5a6Sopenharmony_ci    udsServer.OnEpollRecv(fd, ev);
413c29fa5a6Sopenharmony_ci}
414c29fa5a6Sopenharmony_ci
415c29fa5a6Sopenharmony_ci/**
416c29fa5a6Sopenharmony_ci * @tc.name: AddEpollEvent_001
417c29fa5a6Sopenharmony_ci * @tc.desc: Test the function AddEpollEvent
418c29fa5a6Sopenharmony_ci * @tc.type: FUNC
419c29fa5a6Sopenharmony_ci * @tc.require:
420c29fa5a6Sopenharmony_ci */
421c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddEpollEvent_001, TestSize.Level1)
422c29fa5a6Sopenharmony_ci{
423c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
424c29fa5a6Sopenharmony_ci    UDSServer udsServer;
425c29fa5a6Sopenharmony_ci    std::shared_ptr<mmi_epoll_event> epollEvent=std::make_shared<mmi_epoll_event>();
426c29fa5a6Sopenharmony_ci    int32_t fd = 1;
427c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
428c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
429c29fa5a6Sopenharmony_ci    const std::string programName = "program";
430c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
431c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
432c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
433c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
434c29fa5a6Sopenharmony_ci
435c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
436c29fa5a6Sopenharmony_ci    udsServer.AddEpollEvent(fd, epollEvent);
437c29fa5a6Sopenharmony_ci}
438c29fa5a6Sopenharmony_ci
439c29fa5a6Sopenharmony_ci/**
440c29fa5a6Sopenharmony_ci * @tc.name: DumpSession_001
441c29fa5a6Sopenharmony_ci * @tc.desc: Test the function DumpSession
442c29fa5a6Sopenharmony_ci * @tc.type: FUNC
443c29fa5a6Sopenharmony_ci * @tc.require:
444c29fa5a6Sopenharmony_ci */
445c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, DumpSession_001, TestSize.Level1)
446c29fa5a6Sopenharmony_ci{
447c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
448c29fa5a6Sopenharmony_ci    UDSServer udsServer;
449c29fa5a6Sopenharmony_ci    const std::string title = "test_title";
450c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
451c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
452c29fa5a6Sopenharmony_ci    const std::string programName = "program";
453c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
454c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
455c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
456c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
457c29fa5a6Sopenharmony_ci
458c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
459c29fa5a6Sopenharmony_ci    udsServer.DumpSession(title);
460c29fa5a6Sopenharmony_ci}
461c29fa5a6Sopenharmony_ci
462c29fa5a6Sopenharmony_ci/**
463c29fa5a6Sopenharmony_ci * @tc.name: AddSession_001
464c29fa5a6Sopenharmony_ci * @tc.desc: Test the function AddSession
465c29fa5a6Sopenharmony_ci * @tc.type: FUNC
466c29fa5a6Sopenharmony_ci * @tc.require:
467c29fa5a6Sopenharmony_ci */
468c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddSession_001, TestSize.Level1)
469c29fa5a6Sopenharmony_ci{
470c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
471c29fa5a6Sopenharmony_ci    UDSServer udsServer;
472c29fa5a6Sopenharmony_ci    SessionPtr sess = nullptr;
473c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
474c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
475c29fa5a6Sopenharmony_ci    const std::string programName = "program";
476c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
477c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
478c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
479c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
480c29fa5a6Sopenharmony_ci
481c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
482c29fa5a6Sopenharmony_ci    sess = std::make_shared<UDSSession>(programName, moduleType, serverFd, uid, pid);
483c29fa5a6Sopenharmony_ci    udsServer.AddSession(sess);
484c29fa5a6Sopenharmony_ci}
485c29fa5a6Sopenharmony_ci
486c29fa5a6Sopenharmony_ci/**
487c29fa5a6Sopenharmony_ci * @tc.name: DelSession_001
488c29fa5a6Sopenharmony_ci * @tc.desc: Test the function DelSession
489c29fa5a6Sopenharmony_ci * @tc.type: FUNC
490c29fa5a6Sopenharmony_ci * @tc.require:
491c29fa5a6Sopenharmony_ci */
492c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, DelSession_001, TestSize.Level1)
493c29fa5a6Sopenharmony_ci{
494c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
495c29fa5a6Sopenharmony_ci    UDSServer udsServer;
496c29fa5a6Sopenharmony_ci    int32_t fd = -1;
497c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
498c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
499c29fa5a6Sopenharmony_ci    const std::string programName = "program";
500c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
501c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
502c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
503c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
504c29fa5a6Sopenharmony_ci
505c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
506c29fa5a6Sopenharmony_ci    udsServer.DelSession(fd);
507c29fa5a6Sopenharmony_ci}
508c29fa5a6Sopenharmony_ci
509c29fa5a6Sopenharmony_ci/**
510c29fa5a6Sopenharmony_ci * @tc.name: DelSession_002
511c29fa5a6Sopenharmony_ci * @tc.desc: Test the function DelSession
512c29fa5a6Sopenharmony_ci * @tc.type: FUNC
513c29fa5a6Sopenharmony_ci * @tc.require:
514c29fa5a6Sopenharmony_ci */
515c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, DelSession_002, TestSize.Level1)
516c29fa5a6Sopenharmony_ci{
517c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
518c29fa5a6Sopenharmony_ci    UDSServer udsServer;
519c29fa5a6Sopenharmony_ci    int32_t fd = 1;
520c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
521c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
522c29fa5a6Sopenharmony_ci    const std::string programName = "program";
523c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
524c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
525c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
526c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
527c29fa5a6Sopenharmony_ci
528c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
529c29fa5a6Sopenharmony_ci    udsServer.DelSession(fd);
530c29fa5a6Sopenharmony_ci}
531c29fa5a6Sopenharmony_ci
532c29fa5a6Sopenharmony_ci/**
533c29fa5a6Sopenharmony_ci * @tc.name: NotifySessionDeleted_001
534c29fa5a6Sopenharmony_ci * @tc.desc: Test the function NotifySessionDeleted
535c29fa5a6Sopenharmony_ci * @tc.type: FUNC
536c29fa5a6Sopenharmony_ci * @tc.require:
537c29fa5a6Sopenharmony_ci */
538c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, NotifySessionDeleted_001, TestSize.Level1)
539c29fa5a6Sopenharmony_ci{
540c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
541c29fa5a6Sopenharmony_ci    UDSServer udsServer;
542c29fa5a6Sopenharmony_ci    SessionPtr sess = nullptr;
543c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_SHELL;
544c29fa5a6Sopenharmony_ci    int32_t serverFd = 1;
545c29fa5a6Sopenharmony_ci    const std::string programName = "program";
546c29fa5a6Sopenharmony_ci    const int32_t moduleType = 1;
547c29fa5a6Sopenharmony_ci    const int32_t uid = 2;
548c29fa5a6Sopenharmony_ci    const int32_t pid = 10;
549c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 1;
550c29fa5a6Sopenharmony_ci
551c29fa5a6Sopenharmony_ci    udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
552c29fa5a6Sopenharmony_ci    sess = std::make_shared<UDSSession>(programName, moduleType, serverFd, uid, pid);
553c29fa5a6Sopenharmony_ci    udsServer.NotifySessionDeleted(sess);
554c29fa5a6Sopenharmony_ci}
555c29fa5a6Sopenharmony_ci
556c29fa5a6Sopenharmony_ci/**
557c29fa5a6Sopenharmony_ci * @tc.name: GetClientPid_002
558c29fa5a6Sopenharmony_ci * @tc.desc: Test the scenario of obtaining the client process ID
559c29fa5a6Sopenharmony_ci * @tc.type: FUNC
560c29fa5a6Sopenharmony_ci * @tc.require:
561c29fa5a6Sopenharmony_ci */
562c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, GetClientPid_002, TestSize.Level1)
563c29fa5a6Sopenharmony_ci{
564c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
565c29fa5a6Sopenharmony_ci    UDSServer udsServer;
566c29fa5a6Sopenharmony_ci    int32_t fd = 123;
567c29fa5a6Sopenharmony_ci    auto ret = udsServer.GetClientPid(fd);
568c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
569c29fa5a6Sopenharmony_ci}
570c29fa5a6Sopenharmony_ci
571c29fa5a6Sopenharmony_ci/**
572c29fa5a6Sopenharmony_ci * @tc.name: AddSocketPairInfo_002
573c29fa5a6Sopenharmony_ci * @tc.desc: Test the scenario of adding socket pair information
574c29fa5a6Sopenharmony_ci * @tc.type: FUNC
575c29fa5a6Sopenharmony_ci * @tc.require:
576c29fa5a6Sopenharmony_ci */
577c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddSocketPairInfo_002, TestSize.Level1)
578c29fa5a6Sopenharmony_ci{
579c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
580c29fa5a6Sopenharmony_ci    UDSServer udsServer;
581c29fa5a6Sopenharmony_ci    std::string programName = "program";
582c29fa5a6Sopenharmony_ci    int32_t moduleType = 1;
583c29fa5a6Sopenharmony_ci    int32_t uid = 2;
584c29fa5a6Sopenharmony_ci    int32_t pid = 10;
585c29fa5a6Sopenharmony_ci    int32_t serverFd = 123;
586c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 456;
587c29fa5a6Sopenharmony_ci    int32_t tokenType = 1;
588c29fa5a6Sopenharmony_ci    auto ret = udsServer.AddSocketPairInfo(programName, moduleType, uid, pid, serverFd, toReturnClientFd, tokenType);
589c29fa5a6Sopenharmony_ci    if (serverFd != -1) {
590c29fa5a6Sopenharmony_ci        close(serverFd);
591c29fa5a6Sopenharmony_ci    }
592c29fa5a6Sopenharmony_ci    if (toReturnClientFd != -1) {
593c29fa5a6Sopenharmony_ci        close(toReturnClientFd);
594c29fa5a6Sopenharmony_ci    }
595c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
596c29fa5a6Sopenharmony_ci}
597c29fa5a6Sopenharmony_ci
598c29fa5a6Sopenharmony_ci/**
599c29fa5a6Sopenharmony_ci * @tc.name: SetFdProperty_003
600c29fa5a6Sopenharmony_ci * @tc.desc: Test the scenario of setting file descriptor properties
601c29fa5a6Sopenharmony_ci * @tc.type: FUNC
602c29fa5a6Sopenharmony_ci * @tc.require:
603c29fa5a6Sopenharmony_ci */
604c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SetFdProperty_003, TestSize.Level1)
605c29fa5a6Sopenharmony_ci{
606c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
607c29fa5a6Sopenharmony_ci    UDSServer udsServer;
608c29fa5a6Sopenharmony_ci    int32_t tokenType = TokenType::TOKEN_NATIVE;
609c29fa5a6Sopenharmony_ci    int32_t serverFd = 123;
610c29fa5a6Sopenharmony_ci    int32_t toReturnClientFd = 456;
611c29fa5a6Sopenharmony_ci    auto ret = udsServer.SetFdProperty(tokenType, serverFd, toReturnClientFd);
612c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_ERR);
613c29fa5a6Sopenharmony_ci}
614c29fa5a6Sopenharmony_ci
615c29fa5a6Sopenharmony_ci/**
616c29fa5a6Sopenharmony_ci * @tc.name: Dump_002
617c29fa5a6Sopenharmony_ci * @tc.desc: Test the Dump functionality of UDSServer
618c29fa5a6Sopenharmony_ci * @tc.type: FUNC
619c29fa5a6Sopenharmony_ci * @tc.require:
620c29fa5a6Sopenharmony_ci */
621c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, Dump_002, TestSize.Level1)
622c29fa5a6Sopenharmony_ci{
623c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
624c29fa5a6Sopenharmony_ci    UDSServer udsServer;
625c29fa5a6Sopenharmony_ci    int32_t fd = 1;
626c29fa5a6Sopenharmony_ci    std::vector<std::string> args = {"help"};
627c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.Dump(fd, args));
628c29fa5a6Sopenharmony_ci}
629c29fa5a6Sopenharmony_ci
630c29fa5a6Sopenharmony_ci/**
631c29fa5a6Sopenharmony_ci * @tc.name: OnConnected_002
632c29fa5a6Sopenharmony_ci * @tc.desc: Test the OnConnected function of UDSServer
633c29fa5a6Sopenharmony_ci * @tc.type: FUNC
634c29fa5a6Sopenharmony_ci * @tc.require:
635c29fa5a6Sopenharmony_ci */
636c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnConnected_002, TestSize.Level1)
637c29fa5a6Sopenharmony_ci{
638c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
639c29fa5a6Sopenharmony_ci    UDSServer udsServer;
640c29fa5a6Sopenharmony_ci    SessionPtr sess = nullptr;
641c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnConnected(sess));
642c29fa5a6Sopenharmony_ci}
643c29fa5a6Sopenharmony_ci
644c29fa5a6Sopenharmony_ci/**
645c29fa5a6Sopenharmony_ci * @tc.name: OnDisconnected_001
646c29fa5a6Sopenharmony_ci * @tc.desc: Test the OnDisconnected function of UDSServer
647c29fa5a6Sopenharmony_ci * @tc.type: FUNC
648c29fa5a6Sopenharmony_ci * @tc.require:
649c29fa5a6Sopenharmony_ci */
650c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnDisconnected_001, TestSize.Level1)
651c29fa5a6Sopenharmony_ci{
652c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
653c29fa5a6Sopenharmony_ci    UDSServer udsServer;
654c29fa5a6Sopenharmony_ci    SessionPtr sess = nullptr;
655c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnConnected(sess));
656c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnDisconnected(sess));
657c29fa5a6Sopenharmony_ci}
658c29fa5a6Sopenharmony_ci
659c29fa5a6Sopenharmony_ci/**
660c29fa5a6Sopenharmony_ci * @tc.name: AddEpoll_001
661c29fa5a6Sopenharmony_ci * @tc.desc: Test the AddEpoll function of UDSServer
662c29fa5a6Sopenharmony_ci * @tc.type: FUNC
663c29fa5a6Sopenharmony_ci * @tc.require:
664c29fa5a6Sopenharmony_ci */
665c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddEpoll_001, TestSize.Level1)
666c29fa5a6Sopenharmony_ci{
667c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
668c29fa5a6Sopenharmony_ci    UDSServer udsServer;
669c29fa5a6Sopenharmony_ci    EpollEventType type = EPOLL_EVENT_BEGIN;
670c29fa5a6Sopenharmony_ci    int32_t fd = 1;
671c29fa5a6Sopenharmony_ci    auto ret = udsServer.AddEpoll(type, fd);
672c29fa5a6Sopenharmony_ci    EXPECT_EQ(ret, RET_OK);
673c29fa5a6Sopenharmony_ci}
674c29fa5a6Sopenharmony_ci
675c29fa5a6Sopenharmony_ci/**
676c29fa5a6Sopenharmony_ci * @tc.name: SetRecvFun_002
677c29fa5a6Sopenharmony_ci * @tc.desc: Test the SetRecvFun function of UDSServer
678c29fa5a6Sopenharmony_ci * @tc.type: FUNC
679c29fa5a6Sopenharmony_ci * @tc.require:
680c29fa5a6Sopenharmony_ci */
681c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, SetRecvFun_002, TestSize.Level1)
682c29fa5a6Sopenharmony_ci{
683c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
684c29fa5a6Sopenharmony_ci    UDSServer udsServer;
685c29fa5a6Sopenharmony_ci    MsgServerFunCallback fun{ nullptr };
686c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.SetRecvFun(fun));
687c29fa5a6Sopenharmony_ci}
688c29fa5a6Sopenharmony_ci
689c29fa5a6Sopenharmony_ci/**
690c29fa5a6Sopenharmony_ci * @tc.name: ReleaseSession_002
691c29fa5a6Sopenharmony_ci * @tc.desc: Test the ReleaseSession function of UDSServer
692c29fa5a6Sopenharmony_ci * @tc.type: FUNC
693c29fa5a6Sopenharmony_ci * @tc.require:
694c29fa5a6Sopenharmony_ci */
695c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, ReleaseSession_002, TestSize.Level1)
696c29fa5a6Sopenharmony_ci{
697c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
698c29fa5a6Sopenharmony_ci    UDSServer udsServer;
699c29fa5a6Sopenharmony_ci    int32_t fd = 1;
700c29fa5a6Sopenharmony_ci    epoll_event ev;
701c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.ReleaseSession(fd, ev));
702c29fa5a6Sopenharmony_ci}
703c29fa5a6Sopenharmony_ci
704c29fa5a6Sopenharmony_ci/**
705c29fa5a6Sopenharmony_ci * @tc.name: OnPacket_001
706c29fa5a6Sopenharmony_ci * @tc.desc: Test the OnPacket function of UDSServer
707c29fa5a6Sopenharmony_ci * @tc.type: FUNC
708c29fa5a6Sopenharmony_ci * @tc.require:
709c29fa5a6Sopenharmony_ci */
710c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnPacket_001, TestSize.Level1)
711c29fa5a6Sopenharmony_ci{
712c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
713c29fa5a6Sopenharmony_ci    UDSServer udsServer;
714c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
715c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
716c29fa5a6Sopenharmony_ci    int32_t fd = 1;
717c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnPacket(fd, pkt));
718c29fa5a6Sopenharmony_ci}
719c29fa5a6Sopenharmony_ci
720c29fa5a6Sopenharmony_ci/**
721c29fa5a6Sopenharmony_ci * @tc.name: OnEpollRecv_003
722c29fa5a6Sopenharmony_ci * @tc.desc: Test the OnEpollRecv function of UDSServer
723c29fa5a6Sopenharmony_ci * @tc.type: FUNC
724c29fa5a6Sopenharmony_ci * @tc.require:
725c29fa5a6Sopenharmony_ci */
726c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnEpollRecv_003, TestSize.Level1)
727c29fa5a6Sopenharmony_ci{
728c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
729c29fa5a6Sopenharmony_ci    UDSServer udsServer;
730c29fa5a6Sopenharmony_ci    int32_t fd = -1;
731c29fa5a6Sopenharmony_ci    epoll_event ev;
732c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnEpollRecv(fd, ev));
733c29fa5a6Sopenharmony_ci}
734c29fa5a6Sopenharmony_ci
735c29fa5a6Sopenharmony_ci/**
736c29fa5a6Sopenharmony_ci * @tc.name: OnEpollEvent_001
737c29fa5a6Sopenharmony_ci * @tc.desc: Test the OnEpollEvent function of UDSServer
738c29fa5a6Sopenharmony_ci * @tc.type: FUNC
739c29fa5a6Sopenharmony_ci * @tc.require:
740c29fa5a6Sopenharmony_ci */
741c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, OnEpollEvent_001, TestSize.Level1)
742c29fa5a6Sopenharmony_ci{
743c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
744c29fa5a6Sopenharmony_ci    UDSServer udsServer;
745c29fa5a6Sopenharmony_ci    epoll_event ev;
746c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.OnEpollEvent(ev));
747c29fa5a6Sopenharmony_ci}
748c29fa5a6Sopenharmony_ci
749c29fa5a6Sopenharmony_ci/**
750c29fa5a6Sopenharmony_ci * @tc.name: AddEpollEvent_002
751c29fa5a6Sopenharmony_ci * @tc.desc: Test the AddEpollEvent function of UDSServer
752c29fa5a6Sopenharmony_ci * @tc.type: FUNC
753c29fa5a6Sopenharmony_ci * @tc.require:
754c29fa5a6Sopenharmony_ci */
755c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddEpollEvent_002, TestSize.Level1)
756c29fa5a6Sopenharmony_ci{
757c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
758c29fa5a6Sopenharmony_ci    UDSServer udsServer;
759c29fa5a6Sopenharmony_ci    int32_t fd = 1;
760c29fa5a6Sopenharmony_ci    std::shared_ptr<mmi_epoll_event> epollEvent=std::make_shared<mmi_epoll_event>();
761c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.AddEpollEvent(fd, epollEvent));
762c29fa5a6Sopenharmony_ci}
763c29fa5a6Sopenharmony_ci
764c29fa5a6Sopenharmony_ci/**
765c29fa5a6Sopenharmony_ci * @tc.name: RemoveEpollEvent_001
766c29fa5a6Sopenharmony_ci * @tc.desc: Test the RemoveEpollEvent function of UDSServer
767c29fa5a6Sopenharmony_ci * @tc.type: FUNC
768c29fa5a6Sopenharmony_ci * @tc.require:
769c29fa5a6Sopenharmony_ci */
770c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, RemoveEpollEvent_001, TestSize.Level1)
771c29fa5a6Sopenharmony_ci{
772c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
773c29fa5a6Sopenharmony_ci    UDSServer udsServer;
774c29fa5a6Sopenharmony_ci    int32_t fd = 1;
775c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.RemoveEpollEvent(fd));
776c29fa5a6Sopenharmony_ci}
777c29fa5a6Sopenharmony_ci
778c29fa5a6Sopenharmony_ci/**
779c29fa5a6Sopenharmony_ci * @tc.name: DumpSession_002
780c29fa5a6Sopenharmony_ci * @tc.desc: The DumpSession function of UDSServer properly outputs session information
781c29fa5a6Sopenharmony_ci * @tc.type: FUNC
782c29fa5a6Sopenharmony_ci * @tc.require:
783c29fa5a6Sopenharmony_ci */
784c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, DumpSession_002, TestSize.Level1)
785c29fa5a6Sopenharmony_ci{
786c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
787c29fa5a6Sopenharmony_ci    UDSServer udsServer;
788c29fa5a6Sopenharmony_ci    std::string title = "test_title";
789c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.DumpSession(title));
790c29fa5a6Sopenharmony_ci}
791c29fa5a6Sopenharmony_ci
792c29fa5a6Sopenharmony_ci/**
793c29fa5a6Sopenharmony_ci * @tc.name: AddSession_002
794c29fa5a6Sopenharmony_ci * @tc.desc: The AddSession function of UDSServer properly adds a session
795c29fa5a6Sopenharmony_ci * @tc.type: FUNC
796c29fa5a6Sopenharmony_ci * @tc.require:
797c29fa5a6Sopenharmony_ci */
798c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, AddSession_002, TestSize.Level1)
799c29fa5a6Sopenharmony_ci{
800c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
801c29fa5a6Sopenharmony_ci    UDSServer udsServer;
802c29fa5a6Sopenharmony_ci    SessionPtr sess = nullptr;
803c29fa5a6Sopenharmony_ci    bool ret = udsServer.AddSession(sess);
804c29fa5a6Sopenharmony_ci    EXPECT_FALSE(ret);
805c29fa5a6Sopenharmony_ci}
806c29fa5a6Sopenharmony_ci
807c29fa5a6Sopenharmony_ci/**
808c29fa5a6Sopenharmony_ci * @tc.name: DelSession_003
809c29fa5a6Sopenharmony_ci * @tc.desc: The DelSession function of UDSServer properly deletes a session
810c29fa5a6Sopenharmony_ci * @tc.type: FUNC
811c29fa5a6Sopenharmony_ci * @tc.require:
812c29fa5a6Sopenharmony_ci */
813c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, DelSession_003, TestSize.Level1)
814c29fa5a6Sopenharmony_ci{
815c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
816c29fa5a6Sopenharmony_ci    UDSServer udsServer;
817c29fa5a6Sopenharmony_ci    int32_t fd = -1;
818c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.DelSession(fd));
819c29fa5a6Sopenharmony_ci    int32_t fds = 1;
820c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.DelSession(fds));
821c29fa5a6Sopenharmony_ci}
822c29fa5a6Sopenharmony_ci
823c29fa5a6Sopenharmony_ci/**
824c29fa5a6Sopenharmony_ci * @tc.name: NotifySessionDeleted_002
825c29fa5a6Sopenharmony_ci * @tc.desc: Test the NotifySessionDeleted function of UDSServer
826c29fa5a6Sopenharmony_ci * @tc.type: FUNC
827c29fa5a6Sopenharmony_ci * @tc.require:
828c29fa5a6Sopenharmony_ci */
829c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, NotifySessionDeleted_002, TestSize.Level1)
830c29fa5a6Sopenharmony_ci{
831c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
832c29fa5a6Sopenharmony_ci    UDSServer udsServer;
833c29fa5a6Sopenharmony_ci    SessionPtr ses = nullptr;
834c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.NotifySessionDeleted(ses));
835c29fa5a6Sopenharmony_ci}
836c29fa5a6Sopenharmony_ci
837c29fa5a6Sopenharmony_ci/**
838c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_GetClientFd
839c29fa5a6Sopenharmony_ci * @tc.desc: Test Get Client Fd
840c29fa5a6Sopenharmony_ci * @tc.type: FUNC
841c29fa5a6Sopenharmony_ci * @tc.require:
842c29fa5a6Sopenharmony_ci */
843c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_GetClientFd, TestSize.Level1)
844c29fa5a6Sopenharmony_ci{
845c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
846c29fa5a6Sopenharmony_ci    UDSServer udsServer;
847c29fa5a6Sopenharmony_ci    int32_t pid = 1000;
848c29fa5a6Sopenharmony_ci    int32_t fd = 150;
849c29fa5a6Sopenharmony_ci    udsServer.idxPidMap_.insert(std::make_pair(pid, fd));
850c29fa5a6Sopenharmony_ci    ASSERT_EQ(udsServer.GetClientFd(pid), fd);
851c29fa5a6Sopenharmony_ci}
852c29fa5a6Sopenharmony_ci
853c29fa5a6Sopenharmony_ci/**
854c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_GetClientPid
855c29fa5a6Sopenharmony_ci * @tc.desc: Test Get Client Pid
856c29fa5a6Sopenharmony_ci * @tc.type: FUNC
857c29fa5a6Sopenharmony_ci * @tc.require:
858c29fa5a6Sopenharmony_ci */
859c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_GetClientPid, TestSize.Level1)
860c29fa5a6Sopenharmony_ci{
861c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
862c29fa5a6Sopenharmony_ci    UDSServer udsServer;
863c29fa5a6Sopenharmony_ci    int32_t fd = 150;
864c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, UDS_FD, UDS_UID, UDS_PID);
865c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(fd, session));
866c29fa5a6Sopenharmony_ci    ASSERT_EQ(udsServer.GetClientPid(fd), UDS_PID);
867c29fa5a6Sopenharmony_ci}
868c29fa5a6Sopenharmony_ci
869c29fa5a6Sopenharmony_ci/**
870c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_SendMsg
871c29fa5a6Sopenharmony_ci * @tc.desc: Test Send Msg
872c29fa5a6Sopenharmony_ci * @tc.type: FUNC
873c29fa5a6Sopenharmony_ci * @tc.require:
874c29fa5a6Sopenharmony_ci */
875c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_SendMsg, TestSize.Level1)
876c29fa5a6Sopenharmony_ci{
877c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
878c29fa5a6Sopenharmony_ci    UDSServer udsServer;
879c29fa5a6Sopenharmony_ci    int32_t fd = 150;
880c29fa5a6Sopenharmony_ci    MmiMessageId msgId = MmiMessageId::INVALID;
881c29fa5a6Sopenharmony_ci    NetPacket pkt(msgId);
882c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, UDS_FD, UDS_UID, UDS_PID);
883c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(fd, session));
884c29fa5a6Sopenharmony_ci    ASSERT_FALSE(udsServer.SendMsg(fd, pkt));
885c29fa5a6Sopenharmony_ci}
886c29fa5a6Sopenharmony_ci
887c29fa5a6Sopenharmony_ci/**
888c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_GetSession
889c29fa5a6Sopenharmony_ci * @tc.desc: Test Get Session
890c29fa5a6Sopenharmony_ci * @tc.type: FUNC
891c29fa5a6Sopenharmony_ci * @tc.require:
892c29fa5a6Sopenharmony_ci */
893c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_GetSession, TestSize.Level1)
894c29fa5a6Sopenharmony_ci{
895c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
896c29fa5a6Sopenharmony_ci    UDSServer udsServer;
897c29fa5a6Sopenharmony_ci    int32_t fd = 150;
898c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, UDS_FD, UDS_UID, UDS_PID);
899c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(fd, session));
900c29fa5a6Sopenharmony_ci    ASSERT_EQ(udsServer.GetSession(fd), session);
901c29fa5a6Sopenharmony_ci}
902c29fa5a6Sopenharmony_ci
903c29fa5a6Sopenharmony_ci/**
904c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_GetSessionByPid
905c29fa5a6Sopenharmony_ci * @tc.desc: Test Get Session By Pid
906c29fa5a6Sopenharmony_ci * @tc.type: FUNC
907c29fa5a6Sopenharmony_ci * @tc.require:
908c29fa5a6Sopenharmony_ci */
909c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_GetSessionByPid, TestSize.Level1)
910c29fa5a6Sopenharmony_ci{
911c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
912c29fa5a6Sopenharmony_ci    UDSServer udsServer;
913c29fa5a6Sopenharmony_ci    int32_t fd = 150;
914c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, UDS_FD, UDS_UID, UDS_PID);
915c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(fd, session));
916c29fa5a6Sopenharmony_ci    udsServer.idxPidMap_.insert(std::make_pair(UDS_PID, fd));
917c29fa5a6Sopenharmony_ci    ASSERT_EQ(udsServer.GetSessionByPid(UDS_PID), session);
918c29fa5a6Sopenharmony_ci}
919c29fa5a6Sopenharmony_ci
920c29fa5a6Sopenharmony_ci/**
921c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_AddSession
922c29fa5a6Sopenharmony_ci * @tc.desc: Test Add Session
923c29fa5a6Sopenharmony_ci * @tc.type: FUNC
924c29fa5a6Sopenharmony_ci * @tc.require:
925c29fa5a6Sopenharmony_ci */
926c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_AddSession, TestSize.Level1)
927c29fa5a6Sopenharmony_ci{
928c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
929c29fa5a6Sopenharmony_ci    UDSServer udsServer;
930c29fa5a6Sopenharmony_ci    int32_t udsSessionFd = 100;
931c29fa5a6Sopenharmony_ci    int32_t udsSessionPid = -1;
932c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, udsSessionFd, UDS_UID, udsSessionPid);
933c29fa5a6Sopenharmony_ci    ASSERT_FALSE(udsServer.AddSession(session));
934c29fa5a6Sopenharmony_ci
935c29fa5a6Sopenharmony_ci    udsSessionPid = 1000;
936c29fa5a6Sopenharmony_ci    SessionPtr sess = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, udsSessionFd, UDS_UID, udsSessionPid);
937c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(udsSessionFd, sess));
938c29fa5a6Sopenharmony_ci    ASSERT_TRUE(udsServer.AddSession(sess));
939c29fa5a6Sopenharmony_ci    SessionPtr sessPtr = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, udsSessionFd, UDS_UID, udsSessionPid);
940c29fa5a6Sopenharmony_ci    for (int32_t i = 0; i < MAX_SESSON_ALARM + 1; ++i) {
941c29fa5a6Sopenharmony_ci        udsServer.sessionsMap_.insert(std::make_pair(i, sessPtr));
942c29fa5a6Sopenharmony_ci    }
943c29fa5a6Sopenharmony_ci    ASSERT_TRUE(udsServer.AddSession(sessPtr));
944c29fa5a6Sopenharmony_ci}
945c29fa5a6Sopenharmony_ci
946c29fa5a6Sopenharmony_ci/**
947c29fa5a6Sopenharmony_ci * @tc.name: UDSServerTest_DelSession
948c29fa5a6Sopenharmony_ci * @tc.desc: Test Delete Session
949c29fa5a6Sopenharmony_ci * @tc.type: FUNC
950c29fa5a6Sopenharmony_ci * @tc.require:
951c29fa5a6Sopenharmony_ci */
952c29fa5a6Sopenharmony_ciHWTEST_F(UDSServerTest, UDSServerTest_DelSession, TestSize.Level1)
953c29fa5a6Sopenharmony_ci{
954c29fa5a6Sopenharmony_ci    CALL_TEST_DEBUG;
955c29fa5a6Sopenharmony_ci    UDSServer udsServer;
956c29fa5a6Sopenharmony_ci    int32_t fd = 100;
957c29fa5a6Sopenharmony_ci    SessionPtr session = std::make_shared<UDSSession>(PROGRAM_NAME, MODULE_TYPE, UDS_FD, UDS_UID, UDS_PID);
958c29fa5a6Sopenharmony_ci    udsServer.sessionsMap_.insert(std::make_pair(fd, session));
959c29fa5a6Sopenharmony_ci    udsServer.idxPidMap_.insert(std::make_pair(UDS_PID, fd));
960c29fa5a6Sopenharmony_ci    ASSERT_NO_FATAL_FAILURE(udsServer.DelSession(fd));
961c29fa5a6Sopenharmony_ci}
962c29fa5a6Sopenharmony_ci} // namespace MMI
963c29fa5a6Sopenharmony_ci} // namespace OHOS
964