address_family_unittest.cc 1000 B

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