1 // Copyright 2015 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "net/base/address_family.h"
6
7 #include "net/base/ip_address.h"
8 #include "net/base/sys_addrinfo.h"
9 #include "testing/gtest/include/gtest/gtest.h"
10
11 namespace net {
12 namespace {
13
TEST(AddressFamilyTest,GetAddressFamily)14 TEST(AddressFamilyTest, GetAddressFamily) {
15 IPAddress address;
16 EXPECT_EQ(ADDRESS_FAMILY_UNSPECIFIED, GetAddressFamily(address));
17 EXPECT_TRUE(address.AssignFromIPLiteral("192.168.0.1"));
18 EXPECT_EQ(ADDRESS_FAMILY_IPV4, GetAddressFamily(address));
19 EXPECT_TRUE(address.AssignFromIPLiteral("1:abcd::3:4:ff"));
20 EXPECT_EQ(ADDRESS_FAMILY_IPV6, GetAddressFamily(address));
21 }
22
TEST(AddressFamilyTest,ToAddressFamily)23 TEST(AddressFamilyTest, ToAddressFamily) {
24 EXPECT_EQ(ADDRESS_FAMILY_IPV4, ToAddressFamily(AF_INET));
25 EXPECT_EQ(ADDRESS_FAMILY_IPV6, ToAddressFamily(AF_INET6));
26 EXPECT_EQ(ADDRESS_FAMILY_UNSPECIFIED, ToAddressFamily(AF_UNSPEC));
27 }
28
29 } // namespace
30 } // namespace net
31