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

Unified Diff: webrtc/p2p/base/port_unittest.cc

Issue 1516613002: Only try to pair protocol matching candidates for creating connections. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc@master
Patch Set: Created 5 years 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
Index: webrtc/p2p/base/port_unittest.cc
diff --git a/webrtc/p2p/base/port_unittest.cc b/webrtc/p2p/base/port_unittest.cc
index 896cef115945a0af61052a17c67413ccdd4355ca..b94fcfb3b380d6d3d00fa224fa653845401bf565 100644
--- a/webrtc/p2p/base/port_unittest.cc
+++ b/webrtc/p2p/base/port_unittest.cc
@@ -141,6 +141,8 @@ class TestPort : public Port {
ICE_TYPE_PREFERENCE_HOST, 0, true);
}
+ virtual bool ProtocolMatch(const std::string& protocol) const { return true; }
pthatcher1 2015/12/11 02:05:36 Shouldn't we use the enum instead of the string?
honghaiz3 2015/12/11 18:36:31 I am using string because candidate.protocol() ret
+
// Exposed for testing candidate building.
void AddCandidateAddress(const rtc::SocketAddress& addr) {
AddAddress(addr, addr, rtc::SocketAddress(), "udp", "", "", Type(),
@@ -2495,3 +2497,24 @@ TEST_F(PortTest, TestControlledToControllingNotDestroyed) {
rtc::Thread::Current()->ProcessMessages(kTimeout);
EXPECT_FALSE(destroyed());
}
+
+TEST_F(PortTest, TestProtocolMatch) {
+ rtc::scoped_ptr<Port> udp_port(CreateUdpPort(kLocalAddr1));
+ EXPECT_TRUE(udp_port->ProtocolMatch(UDP_PROTOCOL_NAME));
+ EXPECT_FALSE(udp_port->ProtocolMatch(TCP_PROTOCOL_NAME));
+
+ rtc::scoped_ptr<Port> stun_port(
+ CreateStunPort(kLocalAddr1, nat_socket_factory1()));
+ EXPECT_TRUE(stun_port->ProtocolMatch(UDP_PROTOCOL_NAME));
+ EXPECT_FALSE(stun_port->ProtocolMatch(TCP_PROTOCOL_NAME));
+
+ rtc::scoped_ptr<Port> tcp_port(CreateTcpPort(kLocalAddr1));
+ EXPECT_TRUE(tcp_port->ProtocolMatch(TCP_PROTOCOL_NAME));
+ EXPECT_TRUE(tcp_port->ProtocolMatch(SSLTCP_PROTOCOL_NAME));
+ EXPECT_FALSE(tcp_port->ProtocolMatch(UDP_PROTOCOL_NAME));
+
+ rtc::scoped_ptr<Port> turn_port(
+ CreateTurnPort(kLocalAddr1, nat_socket_factory1(), PROTO_UDP, PROTO_UDP));
+ EXPECT_TRUE(turn_port->ProtocolMatch(UDP_PROTOCOL_NAME));
+ EXPECT_FALSE(turn_port->ProtocolMatch(TCP_PROTOCOL_NAME));
+}

Powered by Google App Engine
This is Rietveld 408576698