| 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 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 170 #if defined(WEBRTC_WIN) | 170 #if defined(WEBRTC_WIN) |
| 171 closesocket(fd); | 171 closesocket(fd); |
| 172 #else | 172 #else |
| 173 close(fd); | 173 close(fd); |
| 174 #endif | 174 #endif |
| 175 } | 175 } |
| 176 delete (*it); | 176 delete (*it); |
| 177 } | 177 } |
| 178 } | 178 } |
| 179 | 179 |
| 180 // Test that UpdateNetworks succeeds. | 180 // Test StartUpdating() and StopUpdating(). network_permission_state starts with |
| 181 // UNKNOWN and changes to ALLOWED until no outstanding StartUpdating. |
| 181 TEST_F(NetworkTest, TestUpdateNetworks) { | 182 TEST_F(NetworkTest, TestUpdateNetworks) { |
| 182 BasicNetworkManager manager; | 183 BasicNetworkManager manager; |
| 183 manager.SignalNetworksChanged.connect( | 184 manager.SignalNetworksChanged.connect( |
| 184 static_cast<NetworkTest*>(this), &NetworkTest::OnNetworksChanged); | 185 static_cast<NetworkTest*>(this), &NetworkTest::OnNetworksChanged); |
| 186 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_UNKNOWN); |
| 185 manager.StartUpdating(); | 187 manager.StartUpdating(); |
| 186 Thread::Current()->ProcessMessages(0); | 188 Thread::Current()->ProcessMessages(0); |
| 187 EXPECT_TRUE(callback_called_); | 189 EXPECT_TRUE(callback_called_); |
| 190 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_ALLOWED); |
| 188 callback_called_ = false; | 191 callback_called_ = false; |
| 189 // Callback should be triggered immediately when StartUpdating | 192 // Callback should be triggered immediately when StartUpdating |
| 190 // is called, after network update signal is already sent. | 193 // is called, after network update signal is already sent. |
| 191 manager.StartUpdating(); | 194 manager.StartUpdating(); |
| 192 EXPECT_TRUE(manager.started()); | 195 EXPECT_TRUE(manager.started()); |
| 193 Thread::Current()->ProcessMessages(0); | 196 Thread::Current()->ProcessMessages(0); |
| 194 EXPECT_TRUE(callback_called_); | 197 EXPECT_TRUE(callback_called_); |
| 195 manager.StopUpdating(); | 198 manager.StopUpdating(); |
| 199 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_ALLOWED); |
| 196 EXPECT_TRUE(manager.started()); | 200 EXPECT_TRUE(manager.started()); |
| 197 manager.StopUpdating(); | 201 manager.StopUpdating(); |
| 202 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_UNKNOWN); |
| 198 EXPECT_FALSE(manager.started()); | 203 EXPECT_FALSE(manager.started()); |
| 199 manager.StopUpdating(); | 204 manager.StopUpdating(); |
| 205 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_UNKNOWN); |
| 200 EXPECT_FALSE(manager.started()); | 206 EXPECT_FALSE(manager.started()); |
| 201 callback_called_ = false; | 207 callback_called_ = false; |
| 202 // Callback should be triggered immediately after StartUpdating is called | 208 // Callback should be triggered immediately after StartUpdating is called |
| 203 // when start_count_ is reset to 0. | 209 // when start_count_ is reset to 0. |
| 204 manager.StartUpdating(); | 210 manager.StartUpdating(); |
| 205 Thread::Current()->ProcessMessages(0); | 211 Thread::Current()->ProcessMessages(0); |
| 212 EXPECT_EQ(manager.network_permission_state(), NetworkManager::STATE_ALLOWED); |
| 206 EXPECT_TRUE(callback_called_); | 213 EXPECT_TRUE(callback_called_); |
| 207 } | 214 } |
| 208 | 215 |
| 209 // Verify that MergeNetworkList() merges network lists properly. | 216 // Verify that MergeNetworkList() merges network lists properly. |
| 210 TEST_F(NetworkTest, TestBasicMergeNetworkList) { | 217 TEST_F(NetworkTest, TestBasicMergeNetworkList) { |
| 211 Network ipv4_network1("test_eth0", "Test Network Adapter 1", | 218 Network ipv4_network1("test_eth0", "Test Network Adapter 1", |
| 212 IPAddress(0x12345600U), 24); | 219 IPAddress(0x12345600U), 24); |
| 213 Network ipv4_network2("test_eth1", "Test Network Adapter 2", | 220 Network ipv4_network2("test_eth1", "Test Network Adapter 2", |
| 214 IPAddress(0x00010000U), 16); | 221 IPAddress(0x00010000U), 16); |
| 215 ipv4_network1.AddIP(IPAddress(0x12345678)); | 222 ipv4_network1.AddIP(IPAddress(0x12345678)); |
| (...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 773 EXPECT_EQ(ipv6_network.GetBestIP(), static_cast<IPAddress>(ip)); | 780 EXPECT_EQ(ipv6_network.GetBestIP(), static_cast<IPAddress>(ip)); |
| 774 | 781 |
| 775 // Add global dynamic temporary one. | 782 // Add global dynamic temporary one. |
| 776 ipstr = "2401:fa00:4:1000:be30:5bff:fee5:c6"; | 783 ipstr = "2401:fa00:4:1000:be30:5bff:fee5:c6"; |
| 777 ASSERT_TRUE(IPFromString(ipstr, IPV6_ADDRESS_FLAG_TEMPORARY, &ip)); | 784 ASSERT_TRUE(IPFromString(ipstr, IPV6_ADDRESS_FLAG_TEMPORARY, &ip)); |
| 778 ipv6_network.AddIP(ip); | 785 ipv6_network.AddIP(ip); |
| 779 EXPECT_EQ(ipv6_network.GetBestIP(), static_cast<IPAddress>(ip)); | 786 EXPECT_EQ(ipv6_network.GetBestIP(), static_cast<IPAddress>(ip)); |
| 780 } | 787 } |
| 781 | 788 |
| 782 } // namespace rtc | 789 } // namespace rtc |
| OLD | NEW |