Index: webrtc/audio/audio_receive_stream_unittest.cc |
diff --git a/webrtc/audio/audio_receive_stream_unittest.cc b/webrtc/audio/audio_receive_stream_unittest.cc |
index 4e267f17389fa9fbc45e6e122f915fe035c6043c..d3e4bd467d633fd629fdaf3acd7700b96c40aaa0 100644 |
--- a/webrtc/audio/audio_receive_stream_unittest.cc |
+++ b/webrtc/audio/audio_receive_stream_unittest.cc |
@@ -11,15 +11,17 @@ |
#include "testing/gtest/include/gtest/gtest.h" |
#include "webrtc/audio/audio_receive_stream.h" |
+#include "webrtc/audio/audio_state.h" |
#include "webrtc/audio/conversion.h" |
+#include "webrtc/base/scoped_ptr.h" |
#include "webrtc/modules/remote_bitrate_estimator/include/mock/mock_remote_bitrate_estimator.h" |
#include "webrtc/modules/rtp_rtcp/source/byte_io.h" |
#include "webrtc/test/fake_voice_engine.h" |
+namespace webrtc { |
+namespace test { |
namespace { |
-using webrtc::ByteWriter; |
- |
const size_t kAbsoluteSendTimeLength = 4; |
void BuildAbsoluteSendTimeExtension(uint8_t* buffer, |
@@ -56,10 +58,31 @@ size_t CreateRtpHeaderWithAbsSendTime(uint8_t* header, |
rtp_header_length += kAbsoluteSendTimeLength; |
return rtp_header_length; |
} |
-} // namespace |
-namespace webrtc { |
-namespace test { |
+struct ConfigHelper { |
+ ConfigHelper() { |
+ AudioState::Config config; |
+ config.voice_engine = &voice_engine_; |
+ audio_state_.reset(new internal::AudioState(config)); |
+ } |
+ |
+ MockRemoteBitrateEstimator* remote_bitrate_estimator() { |
+ return &remote_bitrate_estimator_; |
+ } |
+ AudioReceiveStream::Config& config() { |
+ return stream_config_; |
+ } |
+ internal::AudioState* audio_state() { |
+ return audio_state_.get(); |
+ } |
+ |
+ private: |
+ MockRemoteBitrateEstimator remote_bitrate_estimator_; |
+ FakeVoiceEngine voice_engine_; |
+ rtc::scoped_ptr<internal::AudioState> audio_state_; |
+ AudioReceiveStream::Config stream_config_; |
+}; |
+} // namespace |
TEST(AudioReceiveStreamTest, ConfigToString) { |
const int kAbsSendTimeId = 3; |
@@ -77,31 +100,27 @@ TEST(AudioReceiveStreamTest, ConfigToString) { |
} |
TEST(AudioReceiveStreamTest, ConstructDestruct) { |
- MockRemoteBitrateEstimator remote_bitrate_estimator; |
- FakeVoiceEngine voice_engine; |
- AudioReceiveStream::Config config; |
- config.voe_channel_id = 1; |
- internal::AudioReceiveStream recv_stream(&remote_bitrate_estimator, config, |
- &voice_engine); |
+ ConfigHelper helper; |
+ helper.config().voe_channel_id = 1; |
+ internal::AudioReceiveStream recv_stream( |
+ helper.remote_bitrate_estimator(), helper.config(), helper.audio_state()); |
} |
TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) { |
- MockRemoteBitrateEstimator remote_bitrate_estimator; |
- FakeVoiceEngine voice_engine; |
- AudioReceiveStream::Config config; |
- config.combined_audio_video_bwe = true; |
- config.voe_channel_id = FakeVoiceEngine::kRecvChannelId; |
+ ConfigHelper helper; |
+ helper.config().combined_audio_video_bwe = true; |
+ helper.config().voe_channel_id = FakeVoiceEngine::kRecvChannelId; |
const int kAbsSendTimeId = 3; |
- config.rtp.extensions.push_back( |
+ helper.config().rtp.extensions.push_back( |
RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId)); |
- internal::AudioReceiveStream recv_stream(&remote_bitrate_estimator, config, |
- &voice_engine); |
+ internal::AudioReceiveStream recv_stream( |
+ helper.remote_bitrate_estimator(), helper.config(), helper.audio_state()); |
uint8_t rtp_packet[30]; |
const int kAbsSendTimeValue = 1234; |
CreateRtpHeaderWithAbsSendTime(rtp_packet, kAbsSendTimeId, kAbsSendTimeValue); |
PacketTime packet_time(5678000, 0); |
const size_t kExpectedHeaderLength = 20; |
- EXPECT_CALL(remote_bitrate_estimator, |
+ EXPECT_CALL(*helper.remote_bitrate_estimator(), |
IncomingPacket(packet_time.timestamp / 1000, |
sizeof(rtp_packet) - kExpectedHeaderLength, testing::_, false)) |
.Times(1); |
@@ -110,13 +129,11 @@ TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) { |
} |
TEST(AudioReceiveStreamTest, GetStats) { |
- MockRemoteBitrateEstimator remote_bitrate_estimator; |
- FakeVoiceEngine voice_engine; |
- AudioReceiveStream::Config config; |
- config.rtp.remote_ssrc = FakeVoiceEngine::kRecvSsrc; |
- config.voe_channel_id = FakeVoiceEngine::kRecvChannelId; |
- internal::AudioReceiveStream recv_stream(&remote_bitrate_estimator, config, |
- &voice_engine); |
+ ConfigHelper helper; |
+ helper.config().rtp.remote_ssrc = FakeVoiceEngine::kRecvSsrc; |
+ helper.config().voe_channel_id = FakeVoiceEngine::kRecvChannelId; |
+ internal::AudioReceiveStream recv_stream( |
+ helper.remote_bitrate_estimator(), helper.config(), helper.audio_state()); |
AudioReceiveStream::Stats stats = recv_stream.GetStats(); |
const CallStatistics& call_stats = FakeVoiceEngine::kRecvCallStats; |