 Chromium Code Reviews
 Chromium Code Reviews Issue 1414743004:
  Implement AudioSendStream::GetStats().  (Closed) 
  Base URL: https://chromium.googlesource.com/external/webrtc.git@master
    
  
    Issue 1414743004:
  Implement AudioSendStream::GetStats().  (Closed) 
  Base URL: https://chromium.googlesource.com/external/webrtc.git@master| 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 8809b35b8d554172783f6761997d188db24d5af6..0e3d31d59dd49462993759e310985dfa1d71f01a 100644 | 
| --- a/webrtc/audio/audio_receive_stream_unittest.cc | 
| +++ b/webrtc/audio/audio_receive_stream_unittest.cc | 
| @@ -61,12 +61,33 @@ size_t CreateRtpHeaderWithAbsSendTime(uint8_t* header, | 
| namespace webrtc { | 
| namespace test { | 
| +TEST(AudioReceiveStreamTest, ConfigToString) { | 
| + const int kAbsSendTimeId = 3; | 
| + AudioReceiveStream::Config config; | 
| + config.rtp.remote_ssrc = 1234; | 
| + config.rtp.local_ssrc = 5678; | 
| + config.rtp.extensions.push_back( | 
| + RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId)); | 
| + config.voe_channel_id = 1; | 
| + config.combined_audio_video_bwe = true; | 
| + EXPECT_GT(config.ToString().size(), 0u); | 
| 
kwiberg-webrtc
2015/10/26 13:19:53
Would it be a bad idea to just expect the actual o
 
the sun
2015/10/26 14:44:02
No, that's a good suggestion. I was just being laz
 | 
| +} | 
| + | 
| +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); | 
| +} | 
| + | 
| TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) { | 
| MockRemoteBitrateEstimator remote_bitrate_estimator; | 
| FakeVoiceEngine voice_engine; | 
| AudioReceiveStream::Config config; | 
| config.combined_audio_video_bwe = true; | 
| - config.voe_channel_id = voice_engine.kReceiveChannelId; | 
| + config.voe_channel_id = FakeVoiceEngine::kRecvChannelId; | 
| const int kAbsSendTimeId = 3; | 
| config.rtp.extensions.push_back( | 
| RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId)); | 
| @@ -86,38 +107,35 @@ TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) { | 
| } | 
| TEST(AudioReceiveStreamTest, GetStats) { | 
| - const uint32_t kSsrc1 = 667; | 
| - | 
| MockRemoteBitrateEstimator remote_bitrate_estimator; | 
| FakeVoiceEngine voice_engine; | 
| AudioReceiveStream::Config config; | 
| - config.rtp.remote_ssrc = kSsrc1; | 
| - config.voe_channel_id = voice_engine.kReceiveChannelId; | 
| + config.rtp.remote_ssrc = FakeVoiceEngine::kRecvSsrc; | 
| + config.voe_channel_id = FakeVoiceEngine::kRecvChannelId; | 
| internal::AudioReceiveStream recv_stream(&remote_bitrate_estimator, config, | 
| &voice_engine); | 
| AudioReceiveStream::Stats stats = recv_stream.GetStats(); | 
| - const CallStatistics& call_stats = voice_engine.GetRecvCallStats(); | 
| - const CodecInst& codec_inst = voice_engine.GetRecvRecCodecInst(); | 
| - const NetworkStatistics& net_stats = voice_engine.GetRecvNetworkStats(); | 
| + const CallStatistics& call_stats = FakeVoiceEngine::kRecvCallStats; | 
| + const CodecInst& codec_inst = FakeVoiceEngine::kRecvCodecInst; | 
| + const NetworkStatistics& net_stats = FakeVoiceEngine::kRecvNetworkStats; | 
| const AudioDecodingCallStats& decode_stats = | 
| - voice_engine.GetRecvAudioDecodingCallStats(); | 
| - EXPECT_EQ(kSsrc1, stats.remote_ssrc); | 
| + FakeVoiceEngine::kRecvAudioDecodingCallStats; | 
| + EXPECT_EQ(FakeVoiceEngine::kRecvSsrc, stats.remote_ssrc); | 
| EXPECT_EQ(static_cast<int64_t>(call_stats.bytesReceived), stats.bytes_rcvd); | 
| EXPECT_EQ(static_cast<uint32_t>(call_stats.packetsReceived), | 
| stats.packets_rcvd); | 
| EXPECT_EQ(call_stats.cumulativeLost, stats.packets_lost); | 
| - EXPECT_EQ(static_cast<float>(call_stats.fractionLost) / 256, | 
| - stats.fraction_lost); | 
| + EXPECT_EQ(Q8ToFloat(call_stats.fractionLost), stats.fraction_lost); | 
| EXPECT_EQ(std::string(codec_inst.plname), stats.codec_name); | 
| EXPECT_EQ(call_stats.extendedMax, stats.ext_seqnum); | 
| EXPECT_EQ(call_stats.jitterSamples / (codec_inst.plfreq / 1000), | 
| stats.jitter_ms); | 
| EXPECT_EQ(net_stats.currentBufferSize, stats.jitter_buffer_ms); | 
| EXPECT_EQ(net_stats.preferredBufferSize, stats.jitter_buffer_preferred_ms); | 
| - EXPECT_EQ(static_cast<uint32_t>(voice_engine.kRecvJitterBufferDelay + | 
| - voice_engine.kRecvPlayoutBufferDelay), stats.delay_estimate_ms); | 
| - EXPECT_EQ(static_cast<int32_t>(voice_engine.kRecvSpeechOutputLevel), | 
| + EXPECT_EQ(static_cast<uint32_t>(FakeVoiceEngine::kRecvJitterBufferDelay + | 
| + FakeVoiceEngine::kRecvPlayoutBufferDelay), stats.delay_estimate_ms); | 
| + EXPECT_EQ(static_cast<int32_t>(FakeVoiceEngine::kRecvSpeechOutputLevel), | 
| stats.audio_level); | 
| EXPECT_EQ(Q14ToFloat(net_stats.currentExpandRate), stats.expand_rate); | 
| EXPECT_EQ(Q14ToFloat(net_stats.currentSpeechExpandRate), |