| Index: webrtc/call/flexfec_receive_stream_unittest.cc
|
| diff --git a/webrtc/call/flexfec_receive_stream_unittest.cc b/webrtc/call/flexfec_receive_stream_unittest.cc
|
| index 68f2a2d0203640c6fb3df8b065614f8d7bf03951..877934498c659d6ba4a8b5284bceefffdb391e51 100644
|
| --- a/webrtc/call/flexfec_receive_stream_unittest.cc
|
| +++ b/webrtc/call/flexfec_receive_stream_unittest.cc
|
| @@ -10,22 +10,35 @@
|
|
|
| #include "webrtc/base/basictypes.h"
|
| #include "webrtc/call/flexfec_receive_stream.h"
|
| +#include "webrtc/modules/remote_bitrate_estimator/include/mock/mock_remote_bitrate_estimator.h"
|
| #include "webrtc/modules/rtp_rtcp/include/flexfec_receiver.h"
|
| #include "webrtc/modules/rtp_rtcp/source/byte_io.h"
|
| +#include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h"
|
| #include "webrtc/modules/rtp_rtcp/mocks/mock_recovered_packet_receiver.h"
|
| #include "webrtc/test/gmock.h"
|
| #include "webrtc/test/gtest.h"
|
|
|
| namespace webrtc {
|
|
|
| +namespace {
|
| +
|
| +RtpPacketReceived ParsePacket(const uint8_t* data, size_t length) {
|
| + RtpPacketReceived packet(nullptr);
|
| + packet.Parse(data, length);
|
| + return packet;
|
| +}
|
| +
|
| +} // namespace
|
| +
|
| TEST(FlexfecReceiveStreamTest, ConstructDestruct) {
|
| FlexfecReceiveStream::Config config;
|
| config.payload_type = 118;
|
| config.remote_ssrc = 424223;
|
| config.protected_media_ssrcs = {912512};
|
| MockRecoveredPacketReceiver callback;
|
| + MockRemoteBitrateEstimator bwe;
|
|
|
| - internal::FlexfecReceiveStream receive_stream(config, &callback);
|
| + internal::FlexfecReceiveStream receive_stream(config, &callback, &bwe);
|
| }
|
|
|
| TEST(FlexfecReceiveStreamTest, StartStop) {
|
| @@ -34,7 +47,8 @@ TEST(FlexfecReceiveStreamTest, StartStop) {
|
| config.remote_ssrc = 1652392;
|
| config.protected_media_ssrcs = {23300443};
|
| MockRecoveredPacketReceiver callback;
|
| - internal::FlexfecReceiveStream receive_stream(config, &callback);
|
| + MockRemoteBitrateEstimator bwe;
|
| + internal::FlexfecReceiveStream receive_stream(config, &callback, &bwe);
|
|
|
| receive_stream.Start();
|
| receive_stream.Stop();
|
| @@ -46,12 +60,13 @@ TEST(FlexfecReceiveStreamTest, DoesNotProcessPacketWhenNoMediaSsrcGiven) {
|
| config.remote_ssrc = 424223;
|
| config.protected_media_ssrcs = {};
|
| MockRecoveredPacketReceiver callback;
|
| - internal::FlexfecReceiveStream receive_stream(config, &callback);
|
| + MockRemoteBitrateEstimator bwe;
|
| + internal::FlexfecReceiveStream receive_stream(config, &callback, &bwe);
|
| const uint8_t packet[] = {0x00, 0x11, 0x22, 0x33};
|
| const size_t packet_length = sizeof(packet);
|
|
|
| - EXPECT_FALSE(
|
| - receive_stream.AddAndProcessReceivedPacket(packet, packet_length));
|
| + EXPECT_FALSE(receive_stream.AddAndProcessReceivedPacket(
|
| + ParsePacket(packet, packet_length)));
|
| }
|
|
|
| // Create a FlexFEC packet that protects a single media packet and ensure
|
| @@ -98,21 +113,20 @@ TEST(FlexfecReceiveStreamTest, RecoversPacketWhenStarted) {
|
| config.remote_ssrc = ByteReader<uint32_t>::ReadBigEndian(kFlexfecSsrc);
|
| config.protected_media_ssrcs = {
|
| ByteReader<uint32_t>::ReadBigEndian(kMediaSsrc)};
|
| - testing::StrictMock<MockRecoveredPacketReceiver> recovered_packet_receiver;
|
| - internal::FlexfecReceiveStream receive_stream(config,
|
| - &recovered_packet_receiver);
|
| + testing::StrictMock<MockRecoveredPacketReceiver> callback;
|
| + MockRemoteBitrateEstimator bwe;
|
| + internal::FlexfecReceiveStream receive_stream(config, &callback, &bwe);
|
|
|
| // Do not call back before being started.
|
| - receive_stream.AddAndProcessReceivedPacket(kFlexfecPacket,
|
| - kFlexfecPacketLength);
|
| + receive_stream.AddAndProcessReceivedPacket(
|
| + ParsePacket(kFlexfecPacket, kFlexfecPacketLength));
|
|
|
| // Call back after being started.
|
| receive_stream.Start();
|
| - EXPECT_CALL(
|
| - recovered_packet_receiver,
|
| - OnRecoveredPacket(::testing::_, kRtpHeaderSize + kPayloadLength[1]));
|
| - receive_stream.AddAndProcessReceivedPacket(kFlexfecPacket,
|
| - kFlexfecPacketLength);
|
| + EXPECT_CALL(callback, OnRecoveredPacket(::testing::_,
|
| + kRtpHeaderSize + kPayloadLength[1]));
|
| + receive_stream.AddAndProcessReceivedPacket(
|
| + ParsePacket(kFlexfecPacket, kFlexfecPacketLength));
|
| }
|
|
|
| } // namespace webrtc
|
|
|