1 #include <arpa/inet.h> 2 #include <endian.h> 3 #include <gtest/gtest.h> 4 using namespace testing::ext; 5 6 class EnDianTest : public testing::Test { SetUp()7 void SetUp() override {} TearDown()8 void TearDown() override {} 9 }; 10 11 /** 12 * @tc.name: htons_001 13 * @tc.desc: Convert a 16 bit host byte order integer to a network byte order. 14 * @tc.type: FUNC 15 **/ 16 HWTEST_F(EnDianTest, htons_001, TestSize.Level1) 17 { 18 constexpr uint16_t le16 = 0x9876; 19 constexpr uint16_t be16 = 0x7698; 20 uint16_t result = htons(le16); 21 EXPECT_EQ(be16, result); 22 } 23 24 /** 25 * @tc.name: htonl_001 26 * @tc.desc: Convert a 32 bit host byte order integer to a network byte order. 27 * @tc.type: FUNC 28 **/ 29 HWTEST_F(EnDianTest, htonl_001, TestSize.Level1) 30 { 31 constexpr uint32_t le32 = 0x98765432; 32 constexpr uint32_t be32 = 0x32547698; 33 uint32_t result = htonl(le32); 34 EXPECT_EQ(be32, result); 35 } 36 37 /** 38 * @tc.name: ntohs_001 39 * @tc.desc: Convert a 16 bit integer from network byte order to host byte order. 40 * @tc.type: FUNC 41 **/ 42 HWTEST_F(EnDianTest, ntohs_001, TestSize.Level1) 43 { 44 constexpr uint16_t be16 = 0x7698; 45 constexpr uint16_t le16 = 0x9876; 46 uint16_t result = ntohs(be16); 47 EXPECT_EQ(le16, result); 48 } 49 50 /** 51 * @tc.name: ntohl_001 52 * @tc.desc: Convert a 32 bit integer from network byte order to host byte order. 53 * @tc.type: FUNC 54 **/ 55 HWTEST_F(EnDianTest, ntohl_001, TestSize.Level1) 56 { 57 constexpr uint32_t be32 = 0x32547698; 58 constexpr uint32_t le32 = 0x98765432; 59 uint32_t result = ntohl(be32); 60 EXPECT_EQ(le32, result); 61 }