OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2012 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 1418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1429 kMaxWaitForStatsMs); | 1429 kMaxWaitForStatsMs); |
1430 | 1430 |
1431 MediaStreamTrackInterface* local_video_track = | 1431 MediaStreamTrackInterface* local_video_track = |
1432 local_streams->at(0)->GetVideoTracks()[0]; | 1432 local_streams->at(0)->GetVideoTracks()[0]; |
1433 EXPECT_TRUE_WAIT( | 1433 EXPECT_TRUE_WAIT( |
1434 initializing_client()->GetBytesSentStats(local_video_track) > 0, | 1434 initializing_client()->GetBytesSentStats(local_video_track) > 0, |
1435 kMaxWaitForStatsMs); | 1435 kMaxWaitForStatsMs); |
1436 } | 1436 } |
1437 | 1437 |
1438 // Test that DTLS 1.0 is used if both sides only support DTLS 1.0. | 1438 // Test that DTLS 1.0 is used if both sides only support DTLS 1.0. |
1439 // Disabled due to new BoringSSLL version, see webrtc:5634 | 1439 TEST_F(P2PTestConductor, GetDtls12None) { |
1440 TEST_F(P2PTestConductor, DISABLED_GetDtls12None) { | |
1441 PeerConnectionFactory::Options init_options; | 1440 PeerConnectionFactory::Options init_options; |
1442 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; | 1441 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; |
1443 PeerConnectionFactory::Options recv_options; | 1442 PeerConnectionFactory::Options recv_options; |
1444 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; | 1443 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; |
1445 ASSERT_TRUE( | 1444 ASSERT_TRUE( |
1446 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); | 1445 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); |
1447 rtc::scoped_refptr<webrtc::FakeMetricsObserver> | 1446 rtc::scoped_refptr<webrtc::FakeMetricsObserver> |
1448 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); | 1447 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); |
1449 initializing_client()->pc()->RegisterUMAObserver(init_observer); | 1448 initializing_client()->pc()->RegisterUMAObserver(init_observer); |
1450 LocalP2PTest(); | 1449 LocalP2PTest(); |
1451 | 1450 |
1452 EXPECT_EQ_WAIT(rtc::SSLStreamAdapter::SslCipherSuiteToName( | 1451 EXPECT_TRUE_WAIT(rtc::SSLStreamAdapter::IsAcceptableCipher( |
1453 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | 1452 initializing_client()->GetDtlsCipherStats(), |
1454 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT)), | 1453 rtc::KT_DEFAULT), |
1455 initializing_client()->GetDtlsCipherStats(), | 1454 kMaxWaitForStatsMs); |
1456 kMaxWaitForStatsMs); | |
1457 EXPECT_EQ(1, init_observer->GetEnumCounter( | |
1458 webrtc::kEnumCounterAudioSslCipher, | |
1459 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | |
1460 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT))); | |
1461 | |
1462 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), | 1455 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), |
1463 initializing_client()->GetSrtpCipherStats(), | 1456 initializing_client()->GetSrtpCipherStats(), |
1464 kMaxWaitForStatsMs); | 1457 kMaxWaitForStatsMs); |
1465 EXPECT_EQ(1, | 1458 EXPECT_EQ(1, |
1466 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, | 1459 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, |
1467 kDefaultSrtpCryptoSuite)); | 1460 kDefaultSrtpCryptoSuite)); |
1468 } | 1461 } |
1469 | 1462 |
1470 // Test that DTLS 1.2 is used if both ends support it. | 1463 // Test that DTLS 1.2 is used if both ends support it. |
1471 TEST_F(P2PTestConductor, GetDtls12Both) { | 1464 TEST_F(P2PTestConductor, GetDtls12Both) { |
1472 PeerConnectionFactory::Options init_options; | 1465 PeerConnectionFactory::Options init_options; |
1473 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; | 1466 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; |
1474 PeerConnectionFactory::Options recv_options; | 1467 PeerConnectionFactory::Options recv_options; |
1475 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; | 1468 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; |
1476 ASSERT_TRUE( | 1469 ASSERT_TRUE( |
1477 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); | 1470 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); |
1478 rtc::scoped_refptr<webrtc::FakeMetricsObserver> | 1471 rtc::scoped_refptr<webrtc::FakeMetricsObserver> |
1479 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); | 1472 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); |
1480 initializing_client()->pc()->RegisterUMAObserver(init_observer); | 1473 initializing_client()->pc()->RegisterUMAObserver(init_observer); |
1481 LocalP2PTest(); | 1474 LocalP2PTest(); |
1482 | 1475 |
1483 EXPECT_EQ_WAIT(rtc::SSLStreamAdapter::SslCipherSuiteToName( | 1476 EXPECT_TRUE_WAIT(rtc::SSLStreamAdapter::IsAcceptableCipher( |
1484 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | 1477 initializing_client()->GetDtlsCipherStats(), |
1485 rtc::SSL_PROTOCOL_DTLS_12, rtc::KT_DEFAULT)), | 1478 rtc::KT_DEFAULT), |
1486 initializing_client()->GetDtlsCipherStats(), | 1479 kMaxWaitForStatsMs); |
1487 kMaxWaitForStatsMs); | |
1488 EXPECT_EQ(1, init_observer->GetEnumCounter( | |
1489 webrtc::kEnumCounterAudioSslCipher, | |
1490 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | |
1491 rtc::SSL_PROTOCOL_DTLS_12, rtc::KT_DEFAULT))); | |
1492 | |
1493 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), | 1480 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), |
1494 initializing_client()->GetSrtpCipherStats(), | 1481 initializing_client()->GetSrtpCipherStats(), |
1495 kMaxWaitForStatsMs); | 1482 kMaxWaitForStatsMs); |
1496 EXPECT_EQ(1, | 1483 EXPECT_EQ(1, |
1497 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, | 1484 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, |
1498 kDefaultSrtpCryptoSuite)); | 1485 kDefaultSrtpCryptoSuite)); |
1499 } | 1486 } |
1500 | 1487 |
1501 // Test that DTLS 1.0 is used if the initator supports DTLS 1.2 and the | 1488 // Test that DTLS 1.0 is used if the initator supports DTLS 1.2 and the |
1502 // received supports 1.0. | 1489 // received supports 1.0. |
1503 // Disabled due to new BoringSSLL version, see webrtc:5634 | 1490 TEST_F(P2PTestConductor, GetDtls12Init) { |
1504 TEST_F(P2PTestConductor, DISABLED_GetDtls12Init) { | |
1505 PeerConnectionFactory::Options init_options; | 1491 PeerConnectionFactory::Options init_options; |
1506 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; | 1492 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; |
1507 PeerConnectionFactory::Options recv_options; | 1493 PeerConnectionFactory::Options recv_options; |
1508 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; | 1494 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; |
1509 ASSERT_TRUE( | 1495 ASSERT_TRUE( |
1510 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); | 1496 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); |
1511 rtc::scoped_refptr<webrtc::FakeMetricsObserver> | 1497 rtc::scoped_refptr<webrtc::FakeMetricsObserver> |
1512 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); | 1498 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); |
1513 initializing_client()->pc()->RegisterUMAObserver(init_observer); | 1499 initializing_client()->pc()->RegisterUMAObserver(init_observer); |
1514 LocalP2PTest(); | 1500 LocalP2PTest(); |
1515 | 1501 |
1516 EXPECT_EQ_WAIT(rtc::SSLStreamAdapter::SslCipherSuiteToName( | 1502 EXPECT_TRUE_WAIT(rtc::SSLStreamAdapter::IsAcceptableCipher( |
1517 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | 1503 initializing_client()->GetDtlsCipherStats(), |
1518 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT)), | 1504 rtc::KT_DEFAULT), |
1519 initializing_client()->GetDtlsCipherStats(), | 1505 kMaxWaitForStatsMs); |
1520 kMaxWaitForStatsMs); | |
1521 EXPECT_EQ(1, init_observer->GetEnumCounter( | |
1522 webrtc::kEnumCounterAudioSslCipher, | |
1523 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | |
1524 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT))); | |
1525 | |
1526 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), | 1506 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), |
1527 initializing_client()->GetSrtpCipherStats(), | 1507 initializing_client()->GetSrtpCipherStats(), |
1528 kMaxWaitForStatsMs); | 1508 kMaxWaitForStatsMs); |
1529 EXPECT_EQ(1, | 1509 EXPECT_EQ(1, |
1530 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, | 1510 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, |
1531 kDefaultSrtpCryptoSuite)); | 1511 kDefaultSrtpCryptoSuite)); |
1532 } | 1512 } |
1533 | 1513 |
1534 // Test that DTLS 1.0 is used if the initator supports DTLS 1.0 and the | 1514 // Test that DTLS 1.0 is used if the initator supports DTLS 1.0 and the |
1535 // received supports 1.2. | 1515 // received supports 1.2. |
1536 // Disabled due to new BoringSSLL version, see webrtc:5634 | 1516 TEST_F(P2PTestConductor, GetDtls12Recv) { |
1537 TEST_F(P2PTestConductor, DISABLED_GetDtls12Recv) { | |
1538 PeerConnectionFactory::Options init_options; | 1517 PeerConnectionFactory::Options init_options; |
1539 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; | 1518 init_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_10; |
1540 PeerConnectionFactory::Options recv_options; | 1519 PeerConnectionFactory::Options recv_options; |
1541 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; | 1520 recv_options.ssl_max_version = rtc::SSL_PROTOCOL_DTLS_12; |
1542 ASSERT_TRUE( | 1521 ASSERT_TRUE( |
1543 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); | 1522 CreateTestClients(nullptr, &init_options, nullptr, &recv_options)); |
1544 rtc::scoped_refptr<webrtc::FakeMetricsObserver> | 1523 rtc::scoped_refptr<webrtc::FakeMetricsObserver> |
1545 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); | 1524 init_observer = new rtc::RefCountedObject<webrtc::FakeMetricsObserver>(); |
1546 initializing_client()->pc()->RegisterUMAObserver(init_observer); | 1525 initializing_client()->pc()->RegisterUMAObserver(init_observer); |
1547 LocalP2PTest(); | 1526 LocalP2PTest(); |
1548 | 1527 |
1549 EXPECT_EQ_WAIT(rtc::SSLStreamAdapter::SslCipherSuiteToName( | 1528 EXPECT_TRUE_WAIT(rtc::SSLStreamAdapter::IsAcceptableCipher( |
1550 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | 1529 initializing_client()->GetDtlsCipherStats(), |
1551 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT)), | 1530 rtc::KT_DEFAULT), |
1552 initializing_client()->GetDtlsCipherStats(), | 1531 kMaxWaitForStatsMs); |
1553 kMaxWaitForStatsMs); | |
1554 EXPECT_EQ(1, init_observer->GetEnumCounter( | |
1555 webrtc::kEnumCounterAudioSslCipher, | |
1556 rtc::SSLStreamAdapter::GetDefaultSslCipherForTest( | |
1557 rtc::SSL_PROTOCOL_DTLS_10, rtc::KT_DEFAULT))); | |
1558 | |
1559 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), | 1532 EXPECT_EQ_WAIT(rtc::SrtpCryptoSuiteToName(kDefaultSrtpCryptoSuite), |
1560 initializing_client()->GetSrtpCipherStats(), | 1533 initializing_client()->GetSrtpCipherStats(), |
1561 kMaxWaitForStatsMs); | 1534 kMaxWaitForStatsMs); |
1562 EXPECT_EQ(1, | 1535 EXPECT_EQ(1, |
1563 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, | 1536 init_observer->GetEnumCounter(webrtc::kEnumCounterAudioSrtpCipher, |
1564 kDefaultSrtpCryptoSuite)); | 1537 kDefaultSrtpCryptoSuite)); |
1565 } | 1538 } |
1566 | 1539 |
1567 // This test sets up a call between two parties with audio, video and an RTP | 1540 // This test sets up a call between two parties with audio, video and an RTP |
1568 // data channel. | 1541 // data channel. |
(...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2006 PeerConnectionInterface::IceServer server; | 1979 PeerConnectionInterface::IceServer server; |
2007 server.urls.push_back("turn:hostname"); | 1980 server.urls.push_back("turn:hostname"); |
2008 server.urls.push_back("turn:hostname2"); | 1981 server.urls.push_back("turn:hostname2"); |
2009 servers.push_back(server); | 1982 servers.push_back(server); |
2010 EXPECT_TRUE(webrtc::ParseIceServers(servers, &stun_servers_, &turn_servers_)); | 1983 EXPECT_TRUE(webrtc::ParseIceServers(servers, &stun_servers_, &turn_servers_)); |
2011 EXPECT_EQ(2U, turn_servers_.size()); | 1984 EXPECT_EQ(2U, turn_servers_.size()); |
2012 EXPECT_NE(turn_servers_[0].priority, turn_servers_[1].priority); | 1985 EXPECT_NE(turn_servers_[0].priority, turn_servers_[1].priority); |
2013 } | 1986 } |
2014 | 1987 |
2015 #endif // if !defined(THREAD_SANITIZER) | 1988 #endif // if !defined(THREAD_SANITIZER) |
OLD | NEW |