Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(209)

Unified Diff: webrtc/audio/audio_send_stream_unittest.cc

Issue 2834663003: Allow mocking SendSideCongestionController for Call tests. (Closed)
Patch Set: Replace observer argument and add a motivating example for MockSendSideCC. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | webrtc/call/call.h » ('j') | webrtc/call/call.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/audio/audio_send_stream_unittest.cc
diff --git a/webrtc/audio/audio_send_stream_unittest.cc b/webrtc/audio/audio_send_stream_unittest.cc
index 91201d67f66325be4bc0079785b93946d9add5a4..e70f21094f00ef324c640981130652fd92f78b3d 100644
--- a/webrtc/audio/audio_send_stream_unittest.cc
+++ b/webrtc/audio/audio_send_stream_unittest.cc
@@ -14,7 +14,9 @@
#include "webrtc/audio/audio_send_stream.h"
#include "webrtc/audio/audio_state.h"
#include "webrtc/audio/conversion.h"
+#include "webrtc/base/ptr_util.h"
#include "webrtc/base/task_queue.h"
+#include "webrtc/call/fake_rtp_transport_controller_send.h"
#include "webrtc/call/rtp_transport_controller_send_interface.h"
#include "webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h"
#include "webrtc/modules/audio_mixer/audio_mixer_impl.h"
@@ -70,36 +72,15 @@ class MockTransmitMixer : public voe::TransmitMixer {
};
struct ConfigHelper {
- class FakeRtpTransportController
- : public RtpTransportControllerSendInterface {
- public:
- explicit FakeRtpTransportController(RtcEventLog* event_log)
- : simulated_clock_(123456),
- send_side_cc_(&simulated_clock_,
- &bitrate_observer_,
- event_log,
- &packet_router_) {}
- PacketRouter* packet_router() override { return &packet_router_; }
-
- SendSideCongestionController* send_side_cc() override {
- return &send_side_cc_;
- }
- TransportFeedbackObserver* transport_feedback_observer() override {
- return &send_side_cc_;
- }
-
- RtpPacketSender* packet_sender() override { return send_side_cc_.pacer(); }
-
- private:
- SimulatedClock simulated_clock_;
- testing::NiceMock<MockCongestionObserver> bitrate_observer_;
- PacketRouter packet_router_;
- SendSideCongestionController send_side_cc_;
- };
-
explicit ConfigHelper(bool audio_bwe_enabled)
: stream_config_(nullptr),
- fake_transport_(&event_log_),
+ simulated_clock_(123456),
+ send_side_cc_(rtc::MakeUnique<SendSideCongestionController>(
+ &simulated_clock_,
+ nullptr /* observer */,
+ &event_log_,
+ &packet_router_)),
+ fake_transport_(send_side_cc_.get()),
bitrate_allocator_(&limit_observer_),
worker_queue_("ConfigHelper_worker_queue") {
using testing::Invoke;
@@ -259,10 +240,12 @@ struct ConfigHelper {
rtc::scoped_refptr<AudioState> audio_state_;
AudioSendStream::Config stream_config_;
testing::StrictMock<MockVoEChannelProxy>* channel_proxy_ = nullptr;
- testing::NiceMock<MockCongestionObserver> bitrate_observer_;
MockAudioProcessing audio_processing_;
MockTransmitMixer transmit_mixer_;
AudioProcessing::AudioProcessingStatistics audio_processing_stats_;
+ SimulatedClock simulated_clock_;
+ PacketRouter packet_router_;
+ std::unique_ptr<SendSideCongestionController> send_side_cc_;
FakeRtpTransportController fake_transport_;
MockRtcEventLog event_log_;
MockRtcpRttStats rtcp_rtt_stats_;
« no previous file with comments | « no previous file | webrtc/call/call.h » ('j') | webrtc/call/call.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698