• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 }