2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-30 05:27:55 +00:00

[2396] Modified IOAddress tests in light of review

This commit is contained in:
Stephen Morris 2012-12-06 11:19:41 +00:00
parent 8bc5490b0e
commit 261a171c3b

View File

@ -86,30 +86,27 @@ TEST(IOAddressTest, fromBytes) {
EXPECT_EQ(addr.toText(), IOAddress("192.0.2.3").toText());
}
TEST(IOAddressTest, toBytes) {
TEST(IOAddressTest, toBytesV4) {
// Address and network byte-order representation of the address.
const char* V4STRING = "192.0.2.1";
uint8_t V4[] = {0xc0, 0x00, 0x02, 0x01};
std::vector<uint8_t> actual = IOAddress(V4STRING).toBytes();
ASSERT_EQ(sizeof(V4), actual.size());
EXPECT_TRUE(std::equal(actual.begin(), actual.end(), V4));
}
TEST(IOAddressTest, toBytesV6) {
// Address and network byte-order representation of the address.
const char* V6STRING = "2001:db8:1::dead:beef";
uint8_t V6[] = {
0x20, 0x01, 0x0d, 0xb8, 0x00, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xde, 0xad, 0xbe, 0xef
};
// Do the V4 check.
IOAddress v4address(V4STRING);
std::vector<uint8_t> v4bytes = v4address.toBytes();
EXPECT_EQ(sizeof(V4), v4bytes.size());
EXPECT_TRUE(std::equal(v4bytes.begin(), v4bytes.end(), &V4[0]));
// Do the same for V6.
IOAddress v6address(V6STRING);
std::vector<uint8_t> v6bytes = v6address.toBytes();
EXPECT_EQ(sizeof(V6), v6bytes.size());
EXPECT_TRUE(std::equal(v6bytes.begin(), v6bytes.end(), &V6[0]));
std::vector<uint8_t> actual = IOAddress(V6STRING).toBytes();
ASSERT_EQ(sizeof(V6), actual.size());
EXPECT_TRUE(std::equal(actual.begin(), actual.end(), V6));
}
TEST(IOAddressTest, isV4) {