Index: webrtc/video/end_to_end_tests.cc |
diff --git a/webrtc/video/end_to_end_tests.cc b/webrtc/video/end_to_end_tests.cc |
index e406d0fab221a8105b1f3e09923c67e5f816b3cd..8bf22b088780867ac325febba70bcefc72cfb132 100644 |
--- a/webrtc/video/end_to_end_tests.cc |
+++ b/webrtc/video/end_to_end_tests.cc |
@@ -42,9 +42,11 @@ |
#include "webrtc/test/encoder_settings.h" |
#include "webrtc/test/fake_decoder.h" |
#include "webrtc/test/fake_encoder.h" |
+#include "webrtc/test/field_trial.h" |
#include "webrtc/test/frame_generator.h" |
#include "webrtc/test/frame_generator_capturer.h" |
#include "webrtc/test/gtest.h" |
+#include "webrtc/test/gmock.h" |
#include "webrtc/test/null_transport.h" |
#include "webrtc/test/rtcp_packet_parser.h" |
#include "webrtc/test/rtp_rtcp_observer.h" |
@@ -57,9 +59,10 @@ namespace webrtc { |
static const int kSilenceTimeoutMs = 2000; |
-class EndToEndTest : public test::CallTest { |
+class EndToEndTest : public test::CallTest, |
+ public ::testing::WithParamInterface<std::string> { |
public: |
- EndToEndTest() {} |
+ EndToEndTest() : scoped_field_trial_(GetParam()) {} |
virtual ~EndToEndTest() { |
EXPECT_EQ(nullptr, video_send_stream_); |
@@ -128,9 +131,16 @@ class EndToEndTest : public test::CallTest { |
void VerifyNewVideoReceiveStreamsRespectNetworkState( |
MediaType network_to_bring_up, |
Transport* transport); |
+ test::ScopedFieldTrials scoped_field_trial_; |
}; |
-TEST_F(EndToEndTest, ReceiverCanBeStartedTwice) { |
+INSTANTIATE_TEST_CASE_P( |
+ TestWithNewVideoJitterBuffer, |
+ EndToEndTest, |
+ ::testing::Values("WebRTC-NewVideoJitterBuffer/Enabled/", |
+ "WebRTC-NewVideoJitterBuffer/Disabled/")); |
sprang_webrtc
2016/11/28 13:40:44
Define constants for these names and use below as
philipel
2016/11/28 14:21:21
Done.
|
+ |
+TEST_P(EndToEndTest, ReceiverCanBeStartedTwice) { |
CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); |
test::NullTransport transport; |
@@ -145,7 +155,7 @@ TEST_F(EndToEndTest, ReceiverCanBeStartedTwice) { |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, ReceiverCanBeStoppedTwice) { |
+TEST_P(EndToEndTest, ReceiverCanBeStoppedTwice) { |
CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); |
test::NullTransport transport; |
@@ -160,7 +170,7 @@ TEST_F(EndToEndTest, ReceiverCanBeStoppedTwice) { |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, ReceiverCanBeStoppedAndRestarted) { |
+TEST_P(EndToEndTest, ReceiverCanBeStoppedAndRestarted) { |
CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); |
test::NullTransport transport; |
@@ -176,7 +186,7 @@ TEST_F(EndToEndTest, ReceiverCanBeStoppedAndRestarted) { |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, RendersSingleDelayedFrame) { |
+TEST_P(EndToEndTest, RendersSingleDelayedFrame) { |
static const int kWidth = 320; |
static const int kHeight = 240; |
// This constant is chosen to be higher than the timeout in the video_render |
@@ -249,7 +259,7 @@ TEST_F(EndToEndTest, RendersSingleDelayedFrame) { |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, TransmitsFirstFrame) { |
+TEST_P(EndToEndTest, TransmitsFirstFrame) { |
class Renderer : public rtc::VideoSinkInterface<VideoFrame> { |
public: |
Renderer() : event_(false, false) {} |
@@ -352,20 +362,26 @@ class CodecObserver : public test::EndToEndTest, |
int frame_counter_; |
}; |
-TEST_F(EndToEndTest, SendsAndReceivesVP8Rotation90) { |
+TEST_P(EndToEndTest, SendsAndReceivesVP8) { |
+ CodecObserver test(5, kVideoRotation_0, "VP8", VP8Encoder::Create(), |
+ VP8Decoder::Create()); |
+ RunBaseTest(&test); |
+} |
+ |
+TEST_P(EndToEndTest, SendsAndReceivesVP8Rotation90) { |
CodecObserver test(5, kVideoRotation_90, "VP8", VP8Encoder::Create(), |
VP8Decoder::Create()); |
RunBaseTest(&test); |
} |
#if !defined(RTC_DISABLE_VP9) |
-TEST_F(EndToEndTest, SendsAndReceivesVP9) { |
+TEST_P(EndToEndTest, SendsAndReceivesVP9) { |
CodecObserver test(500, kVideoRotation_0, "VP9", VP9Encoder::Create(), |
VP9Decoder::Create()); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, SendsAndReceivesVP9VideoRotation90) { |
+TEST_P(EndToEndTest, SendsAndReceivesVP9VideoRotation90) { |
CodecObserver test(5, kVideoRotation_90, "VP9", VP9Encoder::Create(), |
VP9Decoder::Create()); |
RunBaseTest(&test); |
@@ -373,20 +389,20 @@ TEST_F(EndToEndTest, SendsAndReceivesVP9VideoRotation90) { |
#endif // !defined(RTC_DISABLE_VP9) |
#if defined(WEBRTC_USE_H264) |
-TEST_F(EndToEndTest, SendsAndReceivesH264) { |
+TEST_P(EndToEndTest, SendsAndReceivesH264) { |
CodecObserver test(500, kVideoRotation_0, "H264", H264Encoder::Create(), |
H264Decoder::Create()); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, SendsAndReceivesH264VideoRotation90) { |
+TEST_P(EndToEndTest, SendsAndReceivesH264VideoRotation90) { |
CodecObserver test(5, kVideoRotation_90, "H264", H264Encoder::Create(), |
H264Decoder::Create()); |
RunBaseTest(&test); |
} |
#endif // defined(WEBRTC_USE_H264) |
-TEST_F(EndToEndTest, ReceiverUsesLocalSsrc) { |
+TEST_P(EndToEndTest, ReceiverUsesLocalSsrc) { |
class SyncRtcpObserver : public test::EndToEndTest { |
public: |
SyncRtcpObserver() : EndToEndTest(kDefaultTimeoutMs) {} |
@@ -409,7 +425,7 @@ TEST_F(EndToEndTest, ReceiverUsesLocalSsrc) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReceivesAndRetransmitsNack) { |
+TEST_P(EndToEndTest, ReceivesAndRetransmitsNack) { |
static const int kNumberOfNacksToObserve = 2; |
static const int kLossBurstSize = 2; |
static const int kPacketsBetweenLossBursts = 9; |
@@ -491,7 +507,7 @@ TEST_F(EndToEndTest, ReceivesAndRetransmitsNack) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReceivesNackAndRetransmitsAudio) { |
+TEST_P(EndToEndTest, ReceivesNackAndRetransmitsAudio) { |
class NackObserver : public test::EndToEndTest { |
public: |
NackObserver() |
@@ -562,7 +578,7 @@ TEST_F(EndToEndTest, ReceivesNackAndRetransmitsAudio) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, CanReceiveUlpfec) { |
+TEST_P(EndToEndTest, CanReceiveUlpfec) { |
class UlpfecRenderObserver : public test::EndToEndTest, |
public rtc::VideoSinkInterface<VideoFrame> { |
public: |
@@ -588,8 +604,9 @@ TEST_F(EndToEndTest, CanReceiveUlpfec) { |
if (protected_sequence_numbers_.count(header.sequenceNumber) != 0) { |
// Retransmitted packet, should not count. |
protected_sequence_numbers_.erase(header.sequenceNumber); |
- EXPECT_GT(protected_timestamps_.count(header.timestamp), 0u); |
- protected_timestamps_.erase(header.timestamp); |
+ auto ts_it = protected_timestamps_.find(header.timestamp); |
+ EXPECT_NE(ts_it, protected_timestamps_.end()); |
+ protected_timestamps_.erase(ts_it); |
return SEND_PACKET; |
} |
@@ -655,13 +672,15 @@ TEST_F(EndToEndTest, CanReceiveUlpfec) { |
rtc::CriticalSection crit_; |
std::set<uint32_t> protected_sequence_numbers_ GUARDED_BY(crit_); |
- std::set<uint32_t> protected_timestamps_ GUARDED_BY(crit_); |
+ // Since several packets can have the same timestamp a multiset is used |
+ // instead of a set. |
+ std::multiset<uint32_t> protected_timestamps_ GUARDED_BY(crit_); |
} test; |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, CanReceiveFlexfec) { |
+TEST_P(EndToEndTest, CanReceiveFlexfec) { |
class FlexfecRenderObserver : public test::EndToEndTest, |
public rtc::VideoSinkInterface<VideoFrame> { |
public: |
@@ -745,13 +764,15 @@ TEST_F(EndToEndTest, CanReceiveFlexfec) { |
rtc::CriticalSection crit_; |
std::set<uint32_t> protected_sequence_numbers_ GUARDED_BY(crit_); |
- std::set<uint32_t> protected_timestamps_ GUARDED_BY(crit_); |
+ // Since several packets can have the same timestamp a multiset is used |
+ // instead of a set. |
+ std::multiset<uint32_t> protected_timestamps_ GUARDED_BY(crit_); |
} test; |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReceivedUlpfecPacketsNotNacked) { |
+TEST_P(EndToEndTest, ReceivedUlpfecPacketsNotNacked) { |
class UlpfecNackObserver : public test::EndToEndTest { |
public: |
UlpfecNackObserver() |
@@ -1049,19 +1070,19 @@ void EndToEndTest::DecodesRetransmittedFrame(bool enable_rtx, bool enable_red) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, DecodesRetransmittedFrame) { |
+TEST_P(EndToEndTest, DecodesRetransmittedFrame) { |
DecodesRetransmittedFrame(false, false); |
} |
-TEST_F(EndToEndTest, DecodesRetransmittedFrameOverRtx) { |
+TEST_P(EndToEndTest, DecodesRetransmittedFrameOverRtx) { |
DecodesRetransmittedFrame(true, false); |
} |
-TEST_F(EndToEndTest, DecodesRetransmittedFrameByRed) { |
+TEST_P(EndToEndTest, DecodesRetransmittedFrameByRed) { |
DecodesRetransmittedFrame(false, true); |
} |
-TEST_F(EndToEndTest, DecodesRetransmittedFrameByRedOverRtx) { |
+TEST_P(EndToEndTest, DecodesRetransmittedFrameByRedOverRtx) { |
DecodesRetransmittedFrame(true, true); |
} |
@@ -1145,15 +1166,18 @@ void EndToEndTest::ReceivesPliAndRecovers(int rtp_history_ms) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReceivesPliAndRecoversWithNack) { |
+TEST_P(EndToEndTest, ReceivesPliAndRecoversWithNack) { |
ReceivesPliAndRecovers(1000); |
} |
-TEST_F(EndToEndTest, ReceivesPliAndRecoversWithoutNack) { |
+TEST_P(EndToEndTest, ReceivesPliAndRecoversWithoutNack) { |
+ // This test makes no sense for the new video jitter buffer. |
+ if (GetParam() == "WebRTC-NewVideoJitterBuffer/Enabled/") |
+ return; |
ReceivesPliAndRecovers(0); |
} |
-TEST_F(EndToEndTest, UnknownRtpPacketGivesUnknownSsrcReturnCode) { |
+TEST_P(EndToEndTest, UnknownRtpPacketGivesUnknownSsrcReturnCode) { |
class PacketInputObserver : public PacketReceiver { |
public: |
explicit PacketInputObserver(PacketReceiver* receiver) |
@@ -1285,11 +1309,11 @@ void EndToEndTest::RespectsRtcpMode(RtcpMode rtcp_mode) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, UsesRtcpCompoundMode) { |
+TEST_P(EndToEndTest, UsesRtcpCompoundMode) { |
RespectsRtcpMode(RtcpMode::kCompound); |
} |
-TEST_F(EndToEndTest, UsesRtcpReducedSizeMode) { |
+TEST_P(EndToEndTest, UsesRtcpReducedSizeMode) { |
RespectsRtcpMode(RtcpMode::kReducedSize); |
} |
@@ -1413,7 +1437,7 @@ class MultiStreamTest { |
// Each renderer verifies that it receives the expected resolution, and as soon |
// as every renderer has received a frame, the test finishes. |
-TEST_F(EndToEndTest, SendsAndReceivesMultipleStreams) { |
+TEST_P(EndToEndTest, SendsAndReceivesMultipleStreams) { |
class VideoOutputObserver : public rtc::VideoSinkInterface<VideoFrame> { |
public: |
VideoOutputObserver(const MultiStreamTest::CodecSettings& settings, |
@@ -1478,7 +1502,7 @@ TEST_F(EndToEndTest, SendsAndReceivesMultipleStreams) { |
tester.RunTest(); |
} |
-TEST_F(EndToEndTest, AssignsTransportSequenceNumbers) { |
+TEST_P(EndToEndTest, AssignsTransportSequenceNumbers) { |
static const int kExtensionId = 5; |
class RtpExtensionHeaderObserver : public test::DirectTransport { |
@@ -1745,32 +1769,32 @@ class TransportFeedbackTester : public test::EndToEndTest { |
Call* receiver_call_; |
}; |
-TEST_F(EndToEndTest, VideoReceivesTransportFeedback) { |
+TEST_P(EndToEndTest, VideoReceivesTransportFeedback) { |
TransportFeedbackTester test(true, 1, 0); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, VideoTransportFeedbackNotConfigured) { |
+TEST_P(EndToEndTest, VideoTransportFeedbackNotConfigured) { |
TransportFeedbackTester test(false, 1, 0); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, AudioReceivesTransportFeedback) { |
+TEST_P(EndToEndTest, AudioReceivesTransportFeedback) { |
TransportFeedbackTester test(true, 0, 1); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, AudioTransportFeedbackNotConfigured) { |
+TEST_P(EndToEndTest, AudioTransportFeedbackNotConfigured) { |
TransportFeedbackTester test(false, 0, 1); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, AudioVideoReceivesTransportFeedback) { |
+TEST_P(EndToEndTest, AudioVideoReceivesTransportFeedback) { |
TransportFeedbackTester test(true, 1, 1); |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ObserversEncodedFrames) { |
+TEST_P(EndToEndTest, ObserversEncodedFrames) { |
class EncodedFrameTestObserver : public EncodedFrameObserver { |
public: |
EncodedFrameTestObserver() |
@@ -1845,7 +1869,7 @@ TEST_F(EndToEndTest, ObserversEncodedFrames) { |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, ReceiveStreamSendsRemb) { |
+TEST_P(EndToEndTest, ReceiveStreamSendsRemb) { |
class RembObserver : public test::EndToEndTest { |
public: |
RembObserver() : EndToEndTest(kDefaultTimeoutMs) {} |
@@ -1874,7 +1898,7 @@ TEST_F(EndToEndTest, ReceiveStreamSendsRemb) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, VerifyBandwidthStats) { |
+TEST_P(EndToEndTest, VerifyBandwidthStats) { |
class RtcpObserver : public test::EndToEndTest { |
public: |
RtcpObserver() |
@@ -1920,7 +1944,7 @@ TEST_F(EndToEndTest, VerifyBandwidthStats) { |
// then have the test generate a REMB of 500 kbps and verify that the send BWE |
// is reduced to exactly 500 kbps. Then a REMB of 1000 kbps is generated and the |
// test verifies that the send BWE ramps back up to exactly 1000 kbps. |
-TEST_F(EndToEndTest, RembWithSendSideBwe) { |
+TEST_P(EndToEndTest, RembWithSendSideBwe) { |
class BweObserver : public test::EndToEndTest { |
public: |
BweObserver() |
@@ -2053,7 +2077,7 @@ TEST_F(EndToEndTest, RembWithSendSideBwe) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, VerifyNackStats) { |
+TEST_P(EndToEndTest, VerifyNackStats) { |
static const int kPacketNumberToDrop = 200; |
class NackObserver : public test::EndToEndTest { |
public: |
@@ -2385,21 +2409,21 @@ void EndToEndTest::VerifyHistogramStats(bool use_rtx, |
metrics::NumSamples("WebRTC.Video.ReceivedFecPacketsInPercent")); |
} |
-TEST_F(EndToEndTest, VerifyHistogramStatsWithRtx) { |
+TEST_P(EndToEndTest, VerifyHistogramStatsWithRtx) { |
const bool kEnabledRtx = true; |
const bool kEnabledRed = false; |
const bool kScreenshare = false; |
VerifyHistogramStats(kEnabledRtx, kEnabledRed, kScreenshare); |
} |
-TEST_F(EndToEndTest, VerifyHistogramStatsWithRed) { |
+TEST_P(EndToEndTest, VerifyHistogramStatsWithRed) { |
const bool kEnabledRtx = false; |
const bool kEnabledRed = true; |
const bool kScreenshare = false; |
VerifyHistogramStats(kEnabledRtx, kEnabledRed, kScreenshare); |
} |
-TEST_F(EndToEndTest, VerifyHistogramStatsWithScreenshare) { |
+TEST_P(EndToEndTest, VerifyHistogramStatsWithScreenshare) { |
const bool kEnabledRtx = false; |
const bool kEnabledRed = false; |
const bool kScreenshare = true; |
@@ -2607,7 +2631,7 @@ void EndToEndTest::TestSendsSetSsrcs(size_t num_ssrcs, |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReportsSetEncoderRates) { |
+TEST_P(EndToEndTest, ReportsSetEncoderRates) { |
class EncoderRateStatsTest : public test::EndToEndTest, |
public test::FakeEncoder { |
public: |
@@ -2687,7 +2711,7 @@ TEST_F(EndToEndTest, ReportsSetEncoderRates) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, GetStats) { |
+TEST_P(EndToEndTest, GetStats) { |
sprang_webrtc
2016/11/28 13:40:44
Add the new histogram to this test.
philipel
2016/11/28 14:21:21
KeyFramesReceivedInPermille is tested in EndToEndT
|
static const int kStartBitrateBps = 3000000; |
static const int kExpectedRenderDelayMs = 20; |
@@ -3028,18 +3052,22 @@ TEST_F(EndToEndTest, GetStats) { |
ReceiveStreamRenderer receive_stream_renderer_; |
} test; |
+ // TODO(philipel): Implement statistics for the new video jitter buffer. |
+ if (GetParam() == "WebRTC-NewVideoJitterBuffer/Enabled/") |
+ return; |
+ |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, ReceiverReferenceTimeReportEnabled) { |
+TEST_P(EndToEndTest, ReceiverReferenceTimeReportEnabled) { |
TestXrReceiverReferenceTimeReport(true); |
} |
-TEST_F(EndToEndTest, ReceiverReferenceTimeReportDisabled) { |
+TEST_P(EndToEndTest, ReceiverReferenceTimeReportDisabled) { |
TestXrReceiverReferenceTimeReport(false); |
} |
-TEST_F(EndToEndTest, TestReceivedRtpPacketStats) { |
+TEST_P(EndToEndTest, TestReceivedRtpPacketStats) { |
static const size_t kNumRtpPacketsToSend = 5; |
class ReceivedRtpStatsObserver : public test::EndToEndTest { |
public: |
@@ -3079,17 +3107,19 @@ TEST_F(EndToEndTest, TestReceivedRtpPacketStats) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, SendsSetSsrc) { TestSendsSetSsrcs(1, false); } |
+TEST_P(EndToEndTest, SendsSetSsrc) { |
+ TestSendsSetSsrcs(1, false); |
+} |
-TEST_F(EndToEndTest, SendsSetSimulcastSsrcs) { |
+TEST_P(EndToEndTest, SendsSetSimulcastSsrcs) { |
TestSendsSetSsrcs(kNumSsrcs, false); |
} |
-TEST_F(EndToEndTest, CanSwitchToUseAllSsrcs) { |
+TEST_P(EndToEndTest, CanSwitchToUseAllSsrcs) { |
TestSendsSetSsrcs(kNumSsrcs, true); |
} |
-TEST_F(EndToEndTest, DISABLED_RedundantPayloadsTransmittedOnAllSsrcs) { |
+TEST_P(EndToEndTest, DISABLED_RedundantPayloadsTransmittedOnAllSsrcs) { |
class ObserveRedundantPayloads: public test::EndToEndTest { |
public: |
ObserveRedundantPayloads() |
@@ -3423,19 +3453,19 @@ void EndToEndTest::TestRtpStatePreservation(bool use_rtx, |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, RestartingSendStreamPreservesRtpState) { |
+TEST_P(EndToEndTest, RestartingSendStreamPreservesRtpState) { |
TestRtpStatePreservation(false, false); |
} |
-TEST_F(EndToEndTest, RestartingSendStreamPreservesRtpStatesWithRtx) { |
+TEST_P(EndToEndTest, RestartingSendStreamPreservesRtpStatesWithRtx) { |
TestRtpStatePreservation(true, false); |
} |
-TEST_F(EndToEndTest, RestartingSendStreamKeepsRtpAndRtcpTimestampsSynced) { |
+TEST_P(EndToEndTest, RestartingSendStreamKeepsRtpAndRtcpTimestampsSynced) { |
TestRtpStatePreservation(true, true); |
} |
-TEST_F(EndToEndTest, RespectsNetworkState) { |
+TEST_P(EndToEndTest, RespectsNetworkState) { |
// TODO(pbos): Remove accepted downtime packets etc. when signaling network |
// down blocks until no more packets will be sent. |
@@ -3629,7 +3659,7 @@ TEST_F(EndToEndTest, RespectsNetworkState) { |
RunBaseTest(&test); |
} |
-TEST_F(EndToEndTest, CallReportsRttForSender) { |
+TEST_P(EndToEndTest, CallReportsRttForSender) { |
static const int kSendDelayMs = 30; |
static const int kReceiveDelayMs = 70; |
CreateCalls(Call::Config(&event_log_), Call::Config(&event_log_)); |
@@ -3666,8 +3696,11 @@ TEST_F(EndToEndTest, CallReportsRttForSender) { |
SleepMs(10); |
} |
+ sender_transport.StopSending(); |
+ receiver_transport.StopSending(); |
Stop(); |
DestroyStreams(); |
+ DestroyCalls(); |
} |
void EndToEndTest::VerifyNewVideoSendStreamsRespectNetworkState( |
@@ -3714,7 +3747,7 @@ void EndToEndTest::VerifyNewVideoReceiveStreamsRespectNetworkState( |
DestroyStreams(); |
} |
-TEST_F(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
+TEST_P(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
class UnusedEncoder : public test::FakeEncoder { |
public: |
UnusedEncoder() : FakeEncoder(Clock::GetRealTimeClock()) {} |
@@ -3740,7 +3773,7 @@ TEST_F(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
MediaType::AUDIO, &unused_encoder, &unused_transport); |
} |
-TEST_F(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
+TEST_P(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
class RequiredEncoder : public test::FakeEncoder { |
public: |
RequiredEncoder() |
@@ -3768,12 +3801,12 @@ TEST_F(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
MediaType::VIDEO, &required_encoder, &required_transport); |
} |
-TEST_F(EndToEndTest, NewVideoReceiveStreamsRespectVideoNetworkDown) { |
+TEST_P(EndToEndTest, NewVideoReceiveStreamsRespectVideoNetworkDown) { |
UnusedTransport transport; |
VerifyNewVideoReceiveStreamsRespectNetworkState(MediaType::AUDIO, &transport); |
} |
-TEST_F(EndToEndTest, NewVideoReceiveStreamsIgnoreAudioNetworkDown) { |
+TEST_P(EndToEndTest, NewVideoReceiveStreamsIgnoreAudioNetworkDown) { |
RequiredTransport transport(false /*rtp*/, true /*rtcp*/); |
VerifyNewVideoReceiveStreamsRespectNetworkState(MediaType::VIDEO, &transport); |
} |
@@ -3799,7 +3832,7 @@ void VerifyEmptyFlexfecConfig(const FlexfecConfig& config) { |
<< "Enabling FlexFEC requires ssrc-group: FEC-FR negotiation."; |
} |
-TEST_F(EndToEndTest, VerifyDefaultSendConfigParameters) { |
+TEST_P(EndToEndTest, VerifyDefaultSendConfigParameters) { |
VideoSendStream::Config default_send_config(nullptr); |
EXPECT_EQ(0, default_send_config.rtp.nack.rtp_history_ms) |
<< "Enabling NACK require rtcp-fb: nack negotiation."; |
@@ -3813,7 +3846,7 @@ TEST_F(EndToEndTest, VerifyDefaultSendConfigParameters) { |
VerifyEmptyFlexfecConfig(default_send_config.rtp.flexfec); |
} |
-TEST_F(EndToEndTest, VerifyDefaultVideoReceiveConfigParameters) { |
+TEST_P(EndToEndTest, VerifyDefaultVideoReceiveConfigParameters) { |
VideoReceiveStream::Config default_receive_config(nullptr); |
EXPECT_EQ(RtcpMode::kCompound, default_receive_config.rtp.rtcp_mode) |
<< "Reduced-size RTCP require rtcp-rsize to be negotiated."; |
@@ -3831,12 +3864,12 @@ TEST_F(EndToEndTest, VerifyDefaultVideoReceiveConfigParameters) { |
VerifyEmptyUlpfecConfig(default_receive_config.rtp.ulpfec); |
} |
-TEST_F(EndToEndTest, VerifyDefaultFlexfecReceiveConfigParameters) { |
+TEST_P(EndToEndTest, VerifyDefaultFlexfecReceiveConfigParameters) { |
FlexfecReceiveStream::Config default_receive_config; |
VerifyEmptyFlexfecConfig(default_receive_config); |
} |
-TEST_F(EndToEndTest, TransportSeqNumOnAudioAndVideo) { |
+TEST_P(EndToEndTest, TransportSeqNumOnAudioAndVideo) { |
static const int kExtensionId = 8; |
class TransportSequenceNumberTest : public test::EndToEndTest { |
public: |
@@ -3947,7 +3980,7 @@ class EndToEndLogTest : public EndToEndTest { |
std::vector<std::string> paths_; |
}; |
-TEST_F(EndToEndLogTest, LogsEncodedFramesWhenRequested) { |
+TEST_P(EndToEndLogTest, LogsEncodedFramesWhenRequested) { |
static const int kNumFramesToRecord = 10; |
class LogEncodingObserver : public test::EndToEndTest, |
public EncodedFrameObserver { |