Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(344)

Unified Diff: webrtc/base/network_unittest.cc

Issue 1471203002: GetDefaultLocalAddress should return false when the address is invalid (Closed) Base URL: https://chromium.googlesource.com/external/webrtc@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/base/network.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/base/network_unittest.cc
diff --git a/webrtc/base/network_unittest.cc b/webrtc/base/network_unittest.cc
index 5324e86e2caa637a8d00ccdd87f52bc8d8de5463..cfba62b30695f00fe44c5bc8149b34433feb70b3 100644
--- a/webrtc/base/network_unittest.cc
+++ b/webrtc/base/network_unittest.cc
@@ -100,6 +100,7 @@ class NetworkTest : public testing::Test, public sigslot::has_slots<> {
class TestBasicNetworkManager : public BasicNetworkManager {
public:
using BasicNetworkManager::QueryDefaultLocalAddress;
+ using BasicNetworkManager::set_default_local_addresses;
};
// Test that the Network ctor works properly.
@@ -848,9 +849,17 @@ TEST_F(NetworkTest, TestNetworkMonitoring) {
NetworkMonitorFactory::ReleaseFactory(factory);
}
-TEST_F(NetworkTest, DefaultPrivateAddress) {
+TEST_F(NetworkTest, DefaultLocalAddress) {
TestBasicNetworkManager manager;
manager.StartUpdating();
+ IPAddress ip;
+
+ // GetDefaultLocalAddress should return false when not set.
+ EXPECT_FALSE(manager.GetDefaultLocalAddress(AF_INET, &ip));
+ EXPECT_FALSE(manager.GetDefaultLocalAddress(AF_INET6, &ip));
+
+ // Make sure we can query default local address when an address for such
+ // address family exists.
std::vector<Network*> networks;
manager.GetNetworks(&networks);
for (auto& network : networks) {
@@ -860,6 +869,14 @@ TEST_F(NetworkTest, DefaultPrivateAddress) {
EXPECT_TRUE(manager.QueryDefaultLocalAddress(AF_INET6) != IPAddress());
}
}
+
+ // GetDefaultLocalAddress should return the valid default address after set.
+ manager.set_default_local_addresses(GetLoopbackIP(AF_INET),
+ GetLoopbackIP(AF_INET6));
+ EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET, &ip));
+ EXPECT_EQ(ip, GetLoopbackIP(AF_INET));
+ EXPECT_TRUE(manager.GetDefaultLocalAddress(AF_INET6, &ip));
+ EXPECT_EQ(ip, GetLoopbackIP(AF_INET6));
manager.StopUpdating();
}
« no previous file with comments | « webrtc/base/network.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698