1 /*
2 * Copyright (c) 2022 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 <cstdio>
17
18 #include <gtest/gtest.h>
19
20 #include "sharing_manager.h"
21
22 namespace OHOS {
23 namespace NetsysNative {
24 namespace {
25 using namespace testing::ext;
26 using namespace nmd;
27 } // namespace
28
29 class SharingManagerTest : public testing::Test {
30 public:
31 static void SetUpTestCase();
32 static void TearDownTestCase();
33 void SetUp();
34 void TearDown();
35 static inline std::shared_ptr<SharingManager> sharingManager = nullptr;
36 };
37
SetUpTestCase()38 void SharingManagerTest::SetUpTestCase()
39 {
40 sharingManager = std::make_shared<SharingManager>();
41 }
42
TearDownTestCase()43 void SharingManagerTest::TearDownTestCase() {}
44
SetUp()45 void SharingManagerTest::SetUp() {}
46
TearDown()47 void SharingManagerTest::TearDown() {}
48
49 HWTEST_F(SharingManagerTest, IpEnableForwardingTest, TestSize.Level1)
50 {
51 auto result = sharingManager->IpEnableForwarding("aTestName");
52 ASSERT_EQ(result, 0);
53 }
54
55 HWTEST_F(SharingManagerTest, IpDisableForwarding, TestSize.Level1)
56 {
57 auto result = sharingManager->IpDisableForwarding("aTestName");
58 ASSERT_EQ(result, 0);
59 }
60
61 HWTEST_F(SharingManagerTest, EnableNat001, TestSize.Level1)
62 {
63 auto result = sharingManager->EnableNat("down", "up");
64 ASSERT_EQ(result, 0);
65 }
66
67 HWTEST_F(SharingManagerTest, EnableNat002, TestSize.Level1)
68 {
69 const std::string enableAction = "down";
70 int32_t ret = sharingManager->EnableNat(enableAction, enableAction);
71 ASSERT_EQ(ret, -1);
72 }
73
74 HWTEST_F(SharingManagerTest, DisableNat001, TestSize.Level1)
75 {
76 sharingManager->DisableNat("down", "up");
77 ASSERT_STREQ("0", "0");
78 }
79
80 HWTEST_F(SharingManagerTest, DisableNat002, TestSize.Level1)
81 {
82 const std::string enableAction = "down";
83 int32_t ret = sharingManager->DisableNat(enableAction, enableAction);
84 ASSERT_EQ(ret, -1);
85 }
86
87 HWTEST_F(SharingManagerTest, IpFwdAddInterfaceForward001, TestSize.Level1)
88 {
89 sharingManager->IpfwdAddInterfaceForward("down", "up");
90 ASSERT_STREQ("0", "0");
91 }
92
93 HWTEST_F(SharingManagerTest, IpFwdAddInterfaceForward002, TestSize.Level1)
94 {
95 const std::string enableAction = "down";
96 int32_t ret = sharingManager->IpfwdAddInterfaceForward(enableAction, enableAction);
97 ASSERT_EQ(ret, -1);
98 }
99
100 HWTEST_F(SharingManagerTest, IpFwdRemoveInterfaceForward001, TestSize.Level1)
101 {
102 sharingManager->IpfwdRemoveInterfaceForward("down", "up");
103 ASSERT_STREQ("0", "0");
104 }
105
106 HWTEST_F(SharingManagerTest, IpFwdRemoveInterfaceForward002, TestSize.Level1)
107 {
108 const std::string enableAction = "down";
109 int32_t ret = sharingManager->IpfwdRemoveInterfaceForward(enableAction, enableAction);
110 ASSERT_EQ(ret, -1);
111 }
112 } // namespace NetsysNative
113 } // namespace OHOS