Chromium Code Reviews| 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 d93dd247d1da3c16e775bb66bed129ebc12a3d24..ea184a7ba0da8e66a456a3dbcf5f3c7cb58e117f 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_down, |
| 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/")); |
| + |
| +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: |
| @@ -655,13 +671,13 @@ 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_); |
| + 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 +761,13 @@ 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_); |
| + std::multiset<uint32_t> protected_timestamps_ GUARDED_BY(crit_); |
|
brandtr
2016/11/21 16:46:45
Thanks for fixing this. Could you add a short comm
philipel
2016/11/22 14:56:23
Done.
|
| } test; |
| RunBaseTest(&test); |
| } |
| -TEST_F(EndToEndTest, ReceivedUlpfecPacketsNotNacked) { |
| +TEST_P(EndToEndTest, ReceivedUlpfecPacketsNotNacked) { |
| class UlpfecNackObserver : public test::EndToEndTest { |
| public: |
| UlpfecNackObserver() |
| @@ -1049,19 +1065,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 +1161,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/") |
|
sprang_webrtc
2016/11/21 16:49:14
Can you use constant for this name instead?
|
| + return; |
| ReceivesPliAndRecovers(0); |
| } |
| -TEST_F(EndToEndTest, UnknownRtpPacketGivesUnknownSsrcReturnCode) { |
| +TEST_P(EndToEndTest, UnknownRtpPacketGivesUnknownSsrcReturnCode) { |
| class PacketInputObserver : public PacketReceiver { |
| public: |
| explicit PacketInputObserver(PacketReceiver* receiver) |
| @@ -1285,11 +1304,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 +1432,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 +1497,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 +1764,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 +1864,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 +1893,7 @@ TEST_F(EndToEndTest, ReceiveStreamSendsRemb) { |
| RunBaseTest(&test); |
| } |
| -TEST_F(EndToEndTest, VerifyBandwidthStats) { |
| +TEST_P(EndToEndTest, VerifyBandwidthStats) { |
| class RtcpObserver : public test::EndToEndTest { |
| public: |
| RtcpObserver() |
| @@ -1920,7 +1939,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 +2072,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 +2404,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 +2626,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 +2706,7 @@ TEST_F(EndToEndTest, ReportsSetEncoderRates) { |
| RunBaseTest(&test); |
| } |
| -TEST_F(EndToEndTest, GetStats) { |
| +TEST_P(EndToEndTest, GetStats) { |
| static const int kStartBitrateBps = 3000000; |
| static const int kExpectedRenderDelayMs = 20; |
| @@ -3028,18 +3047,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/") |
|
philipel
2016/11/21 15:15:21
The reason I haven't fixed this test yet is becaus
sprang_webrtc
2016/11/21 16:49:14
This sounds important to get right, so that we can
|
| + 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 +3102,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 +3448,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 +3654,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_)); |
| @@ -3715,7 +3740,7 @@ void EndToEndTest::VerifyNewVideoReceiveStreamsRespectNetworkState( |
| DestroyStreams(); |
| } |
| -TEST_F(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
| +TEST_P(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
| class UnusedEncoder : public test::FakeEncoder { |
| public: |
| UnusedEncoder() : FakeEncoder(Clock::GetRealTimeClock()) {} |
| @@ -3741,7 +3766,7 @@ TEST_F(EndToEndTest, NewVideoSendStreamsRespectVideoNetworkDown) { |
| MediaType::VIDEO, &unused_encoder, &unused_transport); |
| } |
| -TEST_F(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
| +TEST_P(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
| class RequiredEncoder : public test::FakeEncoder { |
| public: |
| RequiredEncoder() |
| @@ -3769,12 +3794,12 @@ TEST_F(EndToEndTest, NewVideoSendStreamsIgnoreAudioNetworkDown) { |
| MediaType::AUDIO, &required_encoder, &required_transport); |
| } |
| -TEST_F(EndToEndTest, NewVideoReceiveStreamsRespectVideoNetworkDown) { |
| +TEST_P(EndToEndTest, NewVideoReceiveStreamsRespectVideoNetworkDown) { |
| UnusedTransport transport; |
| VerifyNewVideoReceiveStreamsRespectNetworkState(MediaType::VIDEO, &transport); |
| } |
| -TEST_F(EndToEndTest, NewVideoReceiveStreamsIgnoreAudioNetworkDown) { |
| +TEST_P(EndToEndTest, NewVideoReceiveStreamsIgnoreAudioNetworkDown) { |
| RequiredTransport transport(false /*rtp*/, true /*rtcp*/); |
| VerifyNewVideoReceiveStreamsRespectNetworkState(MediaType::AUDIO, &transport); |
| } |
| @@ -3800,7 +3825,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."; |
| @@ -3814,7 +3839,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."; |
| @@ -3832,12 +3857,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: |
| @@ -3948,7 +3973,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 { |