1 /*
2 * Copyright (c) 2025 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 #include <gtest/gtest.h>
16
17 #include "general_connection_server_proxy.h"
18 #include "softbus_error_code.h"
19
20 using namespace testing::ext;
21 namespace OHOS {
22 namespace {
23 class ConnectionServerProxyTest : public testing::Test {
24 public:
25 static void SetUpTestCase();
26 static void TearDownTestCase();
27 void SetUp();
28 void TearDown();
29 };
30
SetUpTestCase()31 void ConnectionServerProxyTest::SetUpTestCase() { }
32
TearDownTestCase()33 void ConnectionServerProxyTest::TearDownTestCase() { }
34
SetUp()35 void ConnectionServerProxyTest::SetUp() { }
36
TearDown()37 void ConnectionServerProxyTest::TearDown() { }
38
39 /*
40 * @tc.name: ConnectionServerProxyNotInitTest
41 * @tc.desc: test g_serverProxy is null.
42 * @tc.type: FUNC
43 * @tc.require:
44 */
45 HWTEST_F(ConnectionServerProxyTest, ConnectionServerProxyNotInitTest, TestSize.Level0)
46 {
47 int32_t ret = ServerIpcCreateServer("test", "test");
48 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
49
50 ret = ServerIpcRemoveServer("test", "test");
51 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
52
53 ret = ServerIpcConnect("test", "test", nullptr);
54 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
55
56 ret = ServerIpcDisconnect(0);
57 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
58
59 ret = ServerIpcSend(0, nullptr, 0);
60 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
61
62 ret = ServerIpcGetPeerDeviceId(0, nullptr, 0);
63 ASSERT_EQ(ret, SOFTBUS_NO_INIT);
64 }
65
66 /*
67 * @tc.name: ConnectionServerProxyInitTest001
68 * @tc.desc: test connection server proxy init.
69 * @tc.type: FUNC
70 * @tc.require:
71 */
72 HWTEST_F(ConnectionServerProxyTest, ConnectionServerProxyInitTest001, TestSize.Level0)
73 {
74 int32_t ret = ConnectionServerProxyInit();
75 ASSERT_EQ(ret, SOFTBUS_OK);
76
77 ret = ConnectionServerProxyInit();
78 ASSERT_EQ(ret, SOFTBUS_OK);
79
80 ConnectionServerProxyDeInit(); // g_serverProxy is not null
81 ConnectionServerProxyDeInit(); // g_serverProxy is null
82 }
83
84 /*
85 * @tc.name: ConnectionServerProxyInitTest002
86 * @tc.desc: test g_serverProxy is not null.
87 * @tc.type: FUNC
88 * @tc.require:
89 */
90 HWTEST_F(ConnectionServerProxyTest, ConnectionServerProxyInitTest002, TestSize.Level0)
91 {
92 int32_t ret = ConnectionServerProxyInit();
93 ASSERT_EQ(ret, SOFTBUS_OK);
94
95 ret = ServerIpcCreateServer(nullptr, nullptr);
96 ASSERT_EQ(ret, SOFTBUS_INVALID_PARAM);
97
98 ret = ServerIpcRemoveServer(nullptr, nullptr);
99 ASSERT_EQ(ret, SOFTBUS_INVALID_PARAM);
100
101 ret = ServerIpcConnect(nullptr, nullptr, nullptr);
102 ASSERT_EQ(ret, SOFTBUS_INVALID_PARAM);
103
104 ret = ServerIpcDisconnect(0);
105 ASSERT_NE(ret, SOFTBUS_OK);
106
107 ret = ServerIpcSend(0, nullptr, 0);
108 ASSERT_EQ(ret, SOFTBUS_INVALID_PARAM);
109
110 ret = ServerIpcGetPeerDeviceId(0, nullptr, 0);
111 ASSERT_EQ(ret, SOFTBUS_INVALID_PARAM);
112
113 ConnectionServerProxyDeInit();
114 }
115 }
116 } // namespace OHOS
117