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
18 #include "vpn_data_bean.h"
19
20 namespace OHOS {
21 namespace NetManagerStandard {
22 namespace {
23 using namespace testing::ext;
24 } // namespace
25
26 class VpnDataBeanTest : public testing::Test {
27 public:
28 static void SetUpTestCase();
29 static void TearDownTestCase();
30 void SetUp();
31 void TearDown();
32 };
33
SetUpTestCase()34 void VpnDataBeanTest::SetUpTestCase() {}
35
TearDownTestCase()36 void VpnDataBeanTest::TearDownTestCase() {}
37
SetUp()38 void VpnDataBeanTest::SetUp() {}
39
TearDown()40 void VpnDataBeanTest::TearDown() {}
41
42 HWTEST_F(VpnDataBeanTest, ConvertVpnBeanToSysVpnConfig001, TestSize.Level1)
43 {
44 sptr<VpnDataBean> bean = nullptr;
45 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
46 bean = new (std::nothrow) VpnDataBean();
47 ASSERT_NE(bean, nullptr);
48 bean->vpnType_ = -1;
49 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
50 bean->vpnType_ = VpnType::L2TP_IPSEC_RSA;
51 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
52 bean->vpnType_ = VpnType::IKEV2_IPSEC_MSCHAPv2;
53 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
54 bean->vpnType_ = VpnType::IKEV2_IPSEC_PSK;
55 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
56 bean->vpnType_ = VpnType::IPSEC_XAUTH_PSK;
57 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
58 bean->vpnType_ = VpnType::IPSEC_XAUTH_RSA;
59 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
60 bean->vpnType_ = VpnType::IPSEC_HYBRID_RSA;
61 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
62 bean->vpnType_ = VpnType::OPENVPN;
63 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
64 bean->vpnType_ = VpnType::L2TP_IPSEC_PSK;
65 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
66 bean->vpnType_ = VpnType::IKEV2_IPSEC_RSA;
67 EXPECT_NE(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
68 bean->vpnType_ = -1;
69 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToSysVpnConfig(bean), nullptr);
70 }
71
72 HWTEST_F(VpnDataBeanTest, ConvertVpnBeanToIpsecVpnConfig001, TestSize.Level1)
73 {
74 sptr<VpnDataBean> bean = nullptr;
75 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToIpsecVpnConfig(bean), nullptr);
76 }
77
78 HWTEST_F(VpnDataBeanTest, ConvertVpnBeanToL2tpVpnConfig001, TestSize.Level1)
79 {
80 sptr<VpnDataBean> bean = nullptr;
81 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToL2tpVpnConfig(bean), nullptr);
82 }
83
84 HWTEST_F(VpnDataBeanTest, ConvertSysVpnConfigToVpnBean001, TestSize.Level1)
85 {
86 sptr<SysVpnConfig> config = nullptr;
87 EXPECT_EQ(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
88 config = new (std::nothrow) IpsecVpnConfig();
89 config->vpnType_ = VpnType::IKEV2_IPSEC_MSCHAPv2;
90 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
91 config->vpnType_ = VpnType::IKEV2_IPSEC_PSK;
92 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
93 config->vpnType_ = VpnType::IKEV2_IPSEC_RSA;
94 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
95 config->vpnType_ = VpnType::IPSEC_XAUTH_PSK;
96 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
97 config->vpnType_ = VpnType::IPSEC_XAUTH_RSA;
98 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
99 config->vpnType_ = VpnType::IPSEC_HYBRID_RSA;
100 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
101 config = nullptr;
102 config = new (std::nothrow) L2tpVpnConfig();
103 ASSERT_NE(config, nullptr);
104 config->vpnType_ = VpnType::L2TP_IPSEC_PSK;
105 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
106 config->vpnType_ = VpnType::L2TP_IPSEC_RSA;
107 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
108 config->vpnType_ = -1;
109 EXPECT_NE(VpnDataBean::ConvertSysVpnConfigToVpnBean(config), nullptr);
110 }
111
112 HWTEST_F(VpnDataBeanTest, ConvertCommonVpnConfigToVpnBean001, TestSize.Level1)
113 {
114 sptr<VpnDataBean> bean = nullptr;
115 sptr<SysVpnConfig> config = nullptr;
116 VpnDataBean::ConvertCommonVpnConfigToVpnBean(config, bean);
117 bean = new (std::nothrow) VpnDataBean();
118 ASSERT_NE(bean, nullptr);
119 std::string testId = "testConvertCommonVpnConfigToVpnBean";
120 bean->vpnId_ = testId;
121 VpnDataBean::ConvertCommonVpnConfigToVpnBean(config, bean);
122 EXPECT_EQ(bean->vpnId_, testId);
123 config = new (std::nothrow) L2tpVpnConfig();
124 ASSERT_NE(config, nullptr);
125 config->vpnId_ = "testConvertCommonVpnConfigToVpnBean1";
126 config->vpnType_ = VpnType::L2TP_IPSEC_PSK;
127 INetAddr ipv4Addr;
128 ipv4Addr.type_ = INetAddr::IPV4;
129 ipv4Addr.family_ = 0x01;
130 ipv4Addr.prefixlen_ = 0x01;
131 ipv4Addr.address_ = "172.17.5.234";
132 ipv4Addr.netMask_ = "255.255.254.0";
133 ipv4Addr.hostName_ = "netAddr";
134 config->addresses_.push_back(ipv4Addr);
135 std::string dnsServer = "192.168.2.0";
136 config->dnsAddresses_.push_back(dnsServer);
137 std::string domain = "openharmony.cn";
138 config->searchDomains_.push_back(domain);
139 VpnDataBean::ConvertCommonVpnConfigToVpnBean(config, bean);
140 EXPECT_EQ(bean->vpnId_, config->vpnId_);
141 }
142
143 HWTEST_F(VpnDataBeanTest, ConvertIpsecVpnConfigToVpnBean001, TestSize.Level1)
144 {
145 sptr<VpnDataBean> bean = nullptr;
146 sptr<IpsecVpnConfig> config = nullptr;
147 VpnDataBean::ConvertIpsecVpnConfigToVpnBean(config, bean);
148 bean = new (std::nothrow) VpnDataBean();
149 ASSERT_NE(bean, nullptr);
150 std::string testId = "ConvertIpsecVpnConfigToVpnBean";
151 bean->vpnId_ = testId;
152 VpnDataBean::ConvertIpsecVpnConfigToVpnBean(config, bean);
153 EXPECT_EQ(bean->vpnId_, testId);
154 }
155
156 HWTEST_F(VpnDataBeanTest, ConvertL2tpVpnConfigToVpnBean001, TestSize.Level1)
157 {
158 sptr<VpnDataBean> bean = nullptr;
159 sptr<L2tpVpnConfig> config = nullptr;
160 VpnDataBean::ConvertL2tpVpnConfigToVpnBean(config, bean);
161 bean = new (std::nothrow) VpnDataBean();
162 ASSERT_NE(bean, nullptr);
163 std::string testId = "ConvertL2tpVpnConfigToVpnBean";
164 bean->vpnId_ = testId;
165 VpnDataBean::ConvertL2tpVpnConfigToVpnBean(config, bean);
166 EXPECT_EQ(bean->vpnId_, testId);
167
168 config = new (std::nothrow) L2tpVpnConfig();
169 ASSERT_NE(config, nullptr);
170 config->vpnId_ = "ConvertL2tpVpnConfigToVpnBean1";
171 config->vpnType_ = VpnType::L2TP_IPSEC_PSK;
172 config->ipsecPreSharedKey_ = "ipsecPreSharedKeyTest";
173 VpnDataBean::ConvertL2tpVpnConfigToVpnBean(config, bean);
174 EXPECT_EQ(bean->ipsecPreSharedKey_, config->ipsecPreSharedKey_);
175 }
176
177 HWTEST_F(VpnDataBeanTest, ConvertVpnBeanToOpenvpnConfig001, TestSize.Level1)
178 {
179 sptr<VpnDataBean> bean = nullptr;
180 EXPECT_EQ(VpnDataBean::ConvertVpnBeanToOpenvpnConfig(bean), nullptr);
181 bean = new (std::nothrow) VpnDataBean();
182 ASSERT_NE(bean, nullptr);
183 bean->vpnType_ = -1;
184 ASSERT_NE(VpnDataBean::ConvertVpnBeanToOpenvpnConfig(bean), nullptr);
185 bean->vpnType_ = VpnType::OPENVPN;
186 ASSERT_NE(VpnDataBean::ConvertVpnBeanToOpenvpnConfig(bean), nullptr);
187 }
188
189 HWTEST_F(VpnDataBeanTest, ConvertOpenvpnConfigToVpnBean001, TestSize.Level1)
190 {
191 sptr<VpnDataBean> bean = nullptr;
192 sptr<OpenvpnConfig> config = nullptr;
193 VpnDataBean::ConvertOpenvpnConfigToVpnBean(config, bean);
194 bean = new (std::nothrow) VpnDataBean();
195 ASSERT_NE(bean, nullptr);
196 std::string testId = "ConvertVpnBeanToOpenvpnConfig";
197 bean->vpnId_ = testId;
198 VpnDataBean::ConvertOpenvpnConfigToVpnBean(config, bean);
199 EXPECT_EQ(bean->vpnId_, testId);
200
201 config = new (std::nothrow) OpenvpnConfig();
202 ASSERT_NE(config, nullptr);
203 config->vpnId_ = "ConverOpenvpnConfigToVpnBean1";
204 config->vpnType_ = VpnType::OPENVPN;
205 config->askpass_ = "askpassTest";
206 VpnDataBean::ConvertOpenvpnConfigToVpnBean(config, bean);
207 EXPECT_EQ(bean->askpass_, config->askpass_);
208 }
209 } // namespace NetManagerStandard
210 } // namespace OHOS