| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 292 EXPECT_TRUE(changed); | 292 EXPECT_TRUE(changed); |
| 293 EXPECT_EQ(stats.ipv6_network_count, 0); | 293 EXPECT_EQ(stats.ipv6_network_count, 0); |
| 294 EXPECT_EQ(stats.ipv4_network_count, 1); | 294 EXPECT_EQ(stats.ipv4_network_count, 1); |
| 295 listenToNetworkInactive(manager); | 295 listenToNetworkInactive(manager); |
| 296 list.clear(); | 296 list.clear(); |
| 297 | 297 |
| 298 manager.GetNetworks(&list); | 298 manager.GetNetworks(&list); |
| 299 EXPECT_EQ(1U, list.size()); | 299 EXPECT_EQ(1U, list.size()); |
| 300 EXPECT_EQ(ipv4_network1.ToString(), list[0]->ToString()); | 300 EXPECT_EQ(ipv4_network1.ToString(), list[0]->ToString()); |
| 301 Network* net1 = list[0]; | 301 Network* net1 = list[0]; |
| 302 uint16_t net_id1 = net1->id(); |
| 303 EXPECT_EQ(1, net_id1); |
| 302 list.clear(); | 304 list.clear(); |
| 303 | 305 |
| 304 // Replace ipv4_network1 with ipv4_network2. | 306 // Replace ipv4_network1 with ipv4_network2. |
| 305 list.push_back(new Network(ipv4_network2)); | 307 list.push_back(new Network(ipv4_network2)); |
| 306 stats = MergeNetworkList(manager, list, &changed); | 308 stats = MergeNetworkList(manager, list, &changed); |
| 307 EXPECT_TRUE(changed); | 309 EXPECT_TRUE(changed); |
| 308 EXPECT_EQ(stats.ipv6_network_count, 0); | 310 EXPECT_EQ(stats.ipv6_network_count, 0); |
| 309 EXPECT_EQ(stats.ipv4_network_count, 1); | 311 EXPECT_EQ(stats.ipv4_network_count, 1); |
| 310 EXPECT_EQ(1, num_networks_inactive_); | 312 EXPECT_EQ(1, num_networks_inactive_); |
| 311 list.clear(); | 313 list.clear(); |
| 312 num_networks_inactive_ = 0; | 314 num_networks_inactive_ = 0; |
| 313 | 315 |
| 314 manager.GetNetworks(&list); | 316 manager.GetNetworks(&list); |
| 315 EXPECT_EQ(1U, list.size()); | 317 EXPECT_EQ(1U, list.size()); |
| 316 EXPECT_EQ(ipv4_network2.ToString(), list[0]->ToString()); | 318 EXPECT_EQ(ipv4_network2.ToString(), list[0]->ToString()); |
| 317 Network* net2 = list[0]; | 319 Network* net2 = list[0]; |
| 320 uint16_t net_id2 = net2->id(); |
| 321 // Network id will increase. |
| 322 EXPECT_LT(net_id1, net_id2); |
| 318 list.clear(); | 323 list.clear(); |
| 319 | 324 |
| 320 // Add Network2 back. | 325 // Add Network2 back. |
| 321 list.push_back(new Network(ipv4_network1)); | 326 list.push_back(new Network(ipv4_network1)); |
| 322 list.push_back(new Network(ipv4_network2)); | 327 list.push_back(new Network(ipv4_network2)); |
| 323 stats = MergeNetworkList(manager, list, &changed); | 328 stats = MergeNetworkList(manager, list, &changed); |
| 324 EXPECT_TRUE(changed); | 329 EXPECT_TRUE(changed); |
| 325 EXPECT_EQ(stats.ipv6_network_count, 0); | 330 EXPECT_EQ(stats.ipv6_network_count, 0); |
| 326 EXPECT_EQ(stats.ipv4_network_count, 2); | 331 EXPECT_EQ(stats.ipv4_network_count, 2); |
| 327 EXPECT_EQ(0, num_networks_inactive_); | 332 EXPECT_EQ(0, num_networks_inactive_); |
| 328 list.clear(); | 333 list.clear(); |
| 329 | 334 |
| 330 // Verify that we get previous instances of Network objects. | 335 // Verify that we get previous instances of Network objects. |
| 331 manager.GetNetworks(&list); | 336 manager.GetNetworks(&list); |
| 332 EXPECT_EQ(2U, list.size()); | 337 EXPECT_EQ(2U, list.size()); |
| 333 EXPECT_TRUE((net1 == list[0] && net2 == list[1]) || | 338 EXPECT_TRUE((net1 == list[0] && net2 == list[1]) || |
| 334 (net1 == list[1] && net2 == list[0])); | 339 (net1 == list[1] && net2 == list[0])); |
| 340 EXPECT_TRUE((net_id1 == list[0]->id() && net_id2 == list[1]->id()) || |
| 341 (net_id1 == list[1]->id() && net_id2 == list[0]->id())); |
| 335 list.clear(); | 342 list.clear(); |
| 336 | 343 |
| 337 // Call MergeNetworkList() again and verify that we don't get update | 344 // Call MergeNetworkList() again and verify that we don't get update |
| 338 // notification. | 345 // notification. |
| 339 list.push_back(new Network(ipv4_network2)); | 346 list.push_back(new Network(ipv4_network2)); |
| 340 list.push_back(new Network(ipv4_network1)); | 347 list.push_back(new Network(ipv4_network1)); |
| 341 stats = MergeNetworkList(manager, list, &changed); | 348 stats = MergeNetworkList(manager, list, &changed); |
| 342 EXPECT_FALSE(changed); | 349 EXPECT_FALSE(changed); |
| 343 EXPECT_EQ(stats.ipv6_network_count, 0); | 350 EXPECT_EQ(stats.ipv6_network_count, 0); |
| 344 EXPECT_EQ(stats.ipv4_network_count, 2); | 351 EXPECT_EQ(stats.ipv4_network_count, 2); |
| 345 EXPECT_EQ(0, num_networks_inactive_); | 352 EXPECT_EQ(0, num_networks_inactive_); |
| 346 list.clear(); | 353 list.clear(); |
| 347 | 354 |
| 348 // Verify that we get previous instances of Network objects. | 355 // Verify that we get previous instances of Network objects. |
| 349 manager.GetNetworks(&list); | 356 manager.GetNetworks(&list); |
| 350 EXPECT_EQ(2U, list.size()); | 357 EXPECT_EQ(2U, list.size()); |
| 351 EXPECT_TRUE((net1 == list[0] && net2 == list[1]) || | 358 EXPECT_TRUE((net1 == list[0] && net2 == list[1]) || |
| 352 (net1 == list[1] && net2 == list[0])); | 359 (net1 == list[1] && net2 == list[0])); |
| 360 EXPECT_TRUE((net_id1 == list[0]->id() && net_id2 == list[1]->id()) || |
| 361 (net_id1 == list[1]->id() && net_id2 == list[0]->id())); |
| 353 list.clear(); | 362 list.clear(); |
| 354 } | 363 } |
| 355 | 364 |
| 356 // Sets up some test IPv6 networks and appends them to list. | 365 // Sets up some test IPv6 networks and appends them to list. |
| 357 // Four networks are added - public and link local, for two interfaces. | 366 // Four networks are added - public and link local, for two interfaces. |
| 358 void SetupNetworks(NetworkManager::NetworkList* list) { | 367 void SetupNetworks(NetworkManager::NetworkList* list) { |
| 359 IPAddress ip; | 368 IPAddress ip; |
| 360 IPAddress prefix; | 369 IPAddress prefix; |
| 361 EXPECT_TRUE(IPFromString("abcd::1234:5678:abcd:ef12", &ip)); | 370 EXPECT_TRUE(IPFromString("abcd::1234:5678:abcd:ef12", &ip)); |
| 362 EXPECT_TRUE(IPFromString("abcd::", &prefix)); | 371 EXPECT_TRUE(IPFromString("abcd::", &prefix)); |
| (...skipping 631 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 994 manager.set_default_local_addresses(GetLoopbackIP(AF_INET), | 1003 manager.set_default_local_addresses(GetLoopbackIP(AF_INET), |
| 995 GetLoopbackIP(AF_INET6)); | 1004 GetLoopbackIP(AF_INET6)); |
| 996 EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET, &ip)); | 1005 EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET, &ip)); |
| 997 EXPECT_EQ(ip, GetLoopbackIP(AF_INET)); | 1006 EXPECT_EQ(ip, GetLoopbackIP(AF_INET)); |
| 998 EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET6, &ip)); | 1007 EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET6, &ip)); |
| 999 EXPECT_EQ(ip, GetLoopbackIP(AF_INET6)); | 1008 EXPECT_EQ(ip, GetLoopbackIP(AF_INET6)); |
| 1000 manager.StopUpdating(); | 1009 manager.StopUpdating(); |
| 1001 } | 1010 } |
| 1002 | 1011 |
| 1003 } // namespace rtc | 1012 } // namespace rtc |
| OLD | NEW |