| Index: webrtc/p2p/client/portallocator_unittest.cc
|
| diff --git a/webrtc/p2p/client/portallocator_unittest.cc b/webrtc/p2p/client/portallocator_unittest.cc
|
| index 8735eb0c5ae83c543184e1f9027fa46a6779ad58..075e631d230bf39ad0dbb97ba063e3708fa5b654 100644
|
| --- a/webrtc/p2p/client/portallocator_unittest.cc
|
| +++ b/webrtc/p2p/client/portallocator_unittest.cc
|
| @@ -1211,6 +1211,53 @@ TEST_F(PortAllocatorTest,
|
| EXPECT_TRUE_WAIT(candidate_allocation_done_, kDefaultAllocationTimeout);
|
| }
|
|
|
| +// Test that when adapter enumeration is disabled, even with
|
| +// PORTALLOCATOR_ENABLE_LOCALHOST_CANDIDATE specified, for endpoints not behind
|
| +// a NAT, there is only a single STUN candidate because a STUN server is
|
| +// specified.
|
| +TEST_F(PortAllocatorTest,
|
| + TestAdapterEnumerationDisabledWithoutNat_LocalhostFlagSpecified) {
|
| + AddInterfaceAsDefault(kClientAddr);
|
| + allocator_->set_flags(allocator().flags() |
|
| + cricket::PORTALLOCATOR_ENABLE_SHARED_UFRAG |
|
| + cricket::PORTALLOCATOR_DISABLE_ADAPTER_ENUMERATION |
|
| + cricket::PORTALLOCATOR_DISABLE_RELAY |
|
| + cricket::PORTALLOCATOR_DISABLE_TCP |
|
| + cricket::PORTALLOCATOR_ENABLE_LOCALHOST_CANDIDATE |
|
| + cricket::PORTALLOCATOR_ENABLE_SHARED_SOCKET);
|
| + EXPECT_TRUE(CreateSession(cricket::ICE_CANDIDATE_COMPONENT_RTP));
|
| + session_->StartGettingPorts();
|
| + EXPECT_TRUE_WAIT(1U == ports_.size(), kDefaultAllocationTimeout);
|
| + EXPECT_PRED5(CheckCandidate, candidates_[0],
|
| + cricket::ICE_CANDIDATE_COMPONENT_RTP, "stun", "udp",
|
| + kClientAddr);
|
| + EXPECT_TRUE_WAIT(candidate_allocation_done_, kDefaultAllocationTimeout);
|
| +}
|
| +
|
| +// Test that when adapter enumeration is disabled, with
|
| +// PORTALLOCATOR_ENABLE_LOCALHOST_CANDIDATE specified, a localhost candidate
|
| +// is generated because no STUN/TURN servers are specified.
|
| +TEST_F(PortAllocatorTest,
|
| + TestAdapterEnumerationDisabledWithoutNat_LocalhostCandidate) {
|
| + AddInterfaceAsDefault(kClientAddr);
|
| + ResetWithNoServers();
|
| + allocator_->set_flags(allocator().flags() |
|
| + cricket::PORTALLOCATOR_ENABLE_SHARED_UFRAG |
|
| + cricket::PORTALLOCATOR_DISABLE_ADAPTER_ENUMERATION |
|
| + cricket::PORTALLOCATOR_DISABLE_RELAY |
|
| + cricket::PORTALLOCATOR_DISABLE_TCP |
|
| + cricket::PORTALLOCATOR_ENABLE_LOCALHOST_CANDIDATE |
|
| + cricket::PORTALLOCATOR_ENABLE_SHARED_SOCKET);
|
| + EXPECT_TRUE(CreateSession(cricket::ICE_CANDIDATE_COMPONENT_RTP));
|
| + session_->StartGettingPorts();
|
| + EXPECT_TRUE_WAIT(1U == ports_.size(), kDefaultAllocationTimeout);
|
| + EXPECT_EQ(candidates_.size(), 1u);
|
| + EXPECT_PRED5(CheckCandidate, candidates_[0],
|
| + cricket::ICE_CANDIDATE_COMPONENT_RTP, "local", "udp",
|
| + rtc::SocketAddress(rtc::GetLoopbackIP(AF_INET), 0));
|
| + EXPECT_TRUE_WAIT(candidate_allocation_done_, kDefaultAllocationTimeout);
|
| +}
|
| +
|
| class AllocationSequenceForTest : public cricket::AllocationSequence {
|
| public:
|
| AllocationSequenceForTest(cricket::BasicPortAllocatorSession* session,
|
|
|