1 /* 2 * Copyright (c) 2021-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 #include "net_packet.h" 16 #include <gtest/gtest.h> 17 18 namespace { 19 using namespace testing::ext; 20 using namespace OHOS::MMI; 21 class NetPacketTest : public testing::Test { 22 public: SetUpTestCase(void)23 static void SetUpTestCase(void) {} TearDownTestCase(void)24 static void TearDownTestCase(void) {} 25 }; 26 27 HWTEST_F(NetPacketTest, construct_001, TestSize.Level1) 28 { 29 MmiMessageId idMsg = MmiMessageId::INVALID; 30 NetPacket pkt(idMsg); 31 } 32 33 HWTEST_F(NetPacketTest, construct_002, TestSize.Level1) 34 { 35 MmiMessageId idMsg = MmiMessageId::INVALID; 36 NetPacket pkt(idMsg); 37 NetPacket packTmp(pkt); 38 } 39 40 HWTEST_F(NetPacketTest, construct_003, TestSize.Level1) 41 { 42 MmiMessageId idMsg = static_cast<MmiMessageId>(-2002); 43 NetPacket pkt(idMsg); 44 NetPacket packTmp(pkt); 45 } 46 47 HWTEST_F(NetPacketTest, GetSize_001, TestSize.Level1) 48 { 49 MmiMessageId idMsg = MmiMessageId::INVALID; 50 NetPacket pkt(idMsg); 51 size_t retResult = pkt.GetSize(); 52 EXPECT_TRUE(retResult == 0); 53 } 54 55 HWTEST_F(NetPacketTest, GetSize_002, TestSize.Level1) 56 { 57 MmiMessageId idMsg = static_cast<MmiMessageId>(-1001); 58 NetPacket pkt(idMsg); 59 size_t retResult = pkt.GetSize(); 60 EXPECT_TRUE(retResult == 0); 61 } 62 63 HWTEST_F(NetPacketTest, GetSize_003, TestSize.Level1) 64 { 65 MmiMessageId idMsg = static_cast<MmiMessageId>(65535); 66 NetPacket pkt(idMsg); 67 size_t retResult = pkt.GetSize(); 68 EXPECT_TRUE(retResult == 0); 69 } 70 71 HWTEST_F(NetPacketTest, GetData_001, TestSize.Level1) 72 { 73 MmiMessageId idMsg = MmiMessageId::INVALID; 74 NetPacket pkt(idMsg); 75 const char *retResult = pkt.GetData(); 76 EXPECT_TRUE(retResult != nullptr); 77 } 78 79 HWTEST_F(NetPacketTest, GetData_002, TestSize.Level1) 80 { 81 MmiMessageId idMsg = static_cast<MmiMessageId>(-3003); 82 83 NetPacket pkt(idMsg); 84 const char *retResult = pkt.GetData(); 85 EXPECT_TRUE(retResult != nullptr); 86 } 87 88 HWTEST_F(NetPacketTest, GetData_003, TestSize.Level1) 89 { 90 MmiMessageId idMsg = static_cast<MmiMessageId>(65535); 91 92 NetPacket pkt(idMsg); 93 const char *retResult = pkt.GetData(); 94 EXPECT_TRUE(retResult != nullptr); 95 } 96 97 HWTEST_F(NetPacketTest, GetMsgId_001, TestSize.Level1) 98 { 99 MmiMessageId idMsg = static_cast<MmiMessageId>(22); 100 101 NetPacket pkt(idMsg); 102 const MmiMessageId retResult = pkt.GetMsgId(); 103 EXPECT_TRUE(retResult == idMsg); 104 } 105 106 HWTEST_F(NetPacketTest, GetMsgId_002, TestSize.Level1) 107 { 108 MmiMessageId idMsg = static_cast<MmiMessageId>(-33); 109 110 NetPacket pkt(idMsg); 111 const MmiMessageId retResult = pkt.GetMsgId(); 112 EXPECT_TRUE(retResult == idMsg); 113 } 114 115 HWTEST_F(NetPacketTest, GetMsgId_003, TestSize.Level1) 116 { 117 MmiMessageId idMsg = static_cast<MmiMessageId>(65535); 118 119 NetPacket pkt(idMsg); 120 const MmiMessageId retResult = pkt.GetMsgId(); 121 EXPECT_TRUE(retResult == idMsg); 122 } 123 124 HWTEST_F(NetPacketTest, ReadAndWrite, TestSize.Level1) 125 { 126 int32_t p1 = 112; 127 std::string p2 = "test111"; 128 NetPacket pkt(MmiMessageId::REGISTER_APP_INFO); 129 pkt << p1 << p2; 130 131 int32_t r1 = 0; 132 std::string r2; 133 pkt >> r1 >> r2; 134 EXPECT_EQ(p1, r1); 135 EXPECT_EQ(p2, r2); 136 } 137 138 HWTEST_F(NetPacketTest, WriteError, TestSize.Level1) 139 { 140 int32_t p1 = 112; 141 std::string p2 = "test111"; 142 struct TestData { 143 int32_t xx; 144 char szTest[MAX_STREAM_BUF_SIZE]; 145 }; 146 TestData data = {333, "test111"}; 147 NetPacket pkt(MmiMessageId::REGISTER_APP_INFO); 148 pkt << p1 << p2; 149 EXPECT_FALSE(pkt.ChkRWError()); 150 pkt << data; 151 EXPECT_TRUE(pkt.ChkRWError()); 152 } 153 154 HWTEST_F(NetPacketTest, ReadError, TestSize.Level1) 155 { 156 int32_t p1 = 112; 157 std::string p2 = "test111"; 158 NetPacket pkt(MmiMessageId::REGISTER_APP_INFO); 159 pkt << p1 << p2; 160 EXPECT_FALSE(pkt.ChkRWError()); 161 162 int32_t r1 = 0; 163 std::string r2; 164 pkt >> r1 >> r2; 165 EXPECT_FALSE(pkt.ChkRWError()); 166 EXPECT_EQ(p1, r1); 167 EXPECT_EQ(p2, r2); 168 int32_t r3; 169 pkt >> r3; 170 EXPECT_TRUE(pkt.ChkRWError()); 171 } 172 } // namespace 173