OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/quic/platform/api/quic_endian.h" | 5 #include "net/quic/platform/api/quic_endian.h" |
6 | 6 |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "net/quic/platform/api/quic_test.h" |
8 | 8 |
9 namespace net { | 9 namespace net { |
10 namespace test { | 10 namespace test { |
11 namespace { | 11 namespace { |
12 | 12 |
13 const uint16_t k16BitTestData = 0xaabb; | 13 const uint16_t k16BitTestData = 0xaabb; |
14 const uint16_t k16BitSwappedTestData = 0xbbaa; | 14 const uint16_t k16BitSwappedTestData = 0xbbaa; |
15 const uint32_t k32BitTestData = 0xaabbccdd; | 15 const uint32_t k32BitTestData = 0xaabbccdd; |
16 const uint32_t k32BitSwappedTestData = 0xddccbbaa; | 16 const uint32_t k32BitSwappedTestData = 0xddccbbaa; |
17 const uint64_t k64BitTestData = 0xaabbccdd44332211; | 17 const uint64_t k64BitTestData = 0xaabbccdd44332211; |
18 const uint64_t k64BitSwappedTestData = 0x11223344ddccbbaa; | 18 const uint64_t k64BitSwappedTestData = 0x11223344ddccbbaa; |
19 | 19 |
20 TEST(QuicEndianTest, HostToNet) { | 20 class QuicEndianTest : public QuicTest {}; |
| 21 |
| 22 TEST_F(QuicEndianTest, HostToNet) { |
21 if (QuicEndian::HostIsLittleEndian()) { | 23 if (QuicEndian::HostIsLittleEndian()) { |
22 EXPECT_EQ(k16BitSwappedTestData, QuicEndian::HostToNet16(k16BitTestData)); | 24 EXPECT_EQ(k16BitSwappedTestData, QuicEndian::HostToNet16(k16BitTestData)); |
23 EXPECT_EQ(k32BitSwappedTestData, QuicEndian::HostToNet32(k32BitTestData)); | 25 EXPECT_EQ(k32BitSwappedTestData, QuicEndian::HostToNet32(k32BitTestData)); |
24 EXPECT_EQ(k64BitSwappedTestData, QuicEndian::HostToNet64(k64BitTestData)); | 26 EXPECT_EQ(k64BitSwappedTestData, QuicEndian::HostToNet64(k64BitTestData)); |
25 } else { | 27 } else { |
26 EXPECT_EQ(k16BitTestData, QuicEndian::HostToNet16(k16BitTestData)); | 28 EXPECT_EQ(k16BitTestData, QuicEndian::HostToNet16(k16BitTestData)); |
27 EXPECT_EQ(k32BitTestData, QuicEndian::HostToNet32(k32BitTestData)); | 29 EXPECT_EQ(k32BitTestData, QuicEndian::HostToNet32(k32BitTestData)); |
28 EXPECT_EQ(k64BitTestData, QuicEndian::HostToNet64(k64BitTestData)); | 30 EXPECT_EQ(k64BitTestData, QuicEndian::HostToNet64(k64BitTestData)); |
29 } | 31 } |
30 } | 32 } |
31 | 33 |
32 TEST(QuicEndianTest, NetToHost) { | 34 TEST_F(QuicEndianTest, NetToHost) { |
33 if (QuicEndian::HostIsLittleEndian()) { | 35 if (QuicEndian::HostIsLittleEndian()) { |
34 EXPECT_EQ(k16BitTestData, QuicEndian::NetToHost16(k16BitSwappedTestData)); | 36 EXPECT_EQ(k16BitTestData, QuicEndian::NetToHost16(k16BitSwappedTestData)); |
35 EXPECT_EQ(k32BitTestData, QuicEndian::NetToHost32(k32BitSwappedTestData)); | 37 EXPECT_EQ(k32BitTestData, QuicEndian::NetToHost32(k32BitSwappedTestData)); |
36 EXPECT_EQ(k64BitTestData, QuicEndian::NetToHost64(k64BitSwappedTestData)); | 38 EXPECT_EQ(k64BitTestData, QuicEndian::NetToHost64(k64BitSwappedTestData)); |
37 } else { | 39 } else { |
38 EXPECT_EQ(k16BitSwappedTestData, | 40 EXPECT_EQ(k16BitSwappedTestData, |
39 QuicEndian::NetToHost16(k16BitSwappedTestData)); | 41 QuicEndian::NetToHost16(k16BitSwappedTestData)); |
40 EXPECT_EQ(k32BitSwappedTestData, | 42 EXPECT_EQ(k32BitSwappedTestData, |
41 QuicEndian::NetToHost32(k32BitSwappedTestData)); | 43 QuicEndian::NetToHost32(k32BitSwappedTestData)); |
42 EXPECT_EQ(k64BitSwappedTestData, | 44 EXPECT_EQ(k64BitSwappedTestData, |
43 QuicEndian::NetToHost64(k64BitSwappedTestData)); | 45 QuicEndian::NetToHost64(k64BitSwappedTestData)); |
44 } | 46 } |
45 } | 47 } |
46 | 48 |
47 } // namespace | 49 } // namespace |
48 } // namespace test | 50 } // namespace test |
49 } // namespace net | 51 } // namespace net |
OLD | NEW |