Index: media/cast/test/end2end_unittest.cc |
diff --git a/media/cast/test/end2end_unittest.cc b/media/cast/test/end2end_unittest.cc |
index 82fc568d2d2b959c96cedc276c9e8f0008cd87a9..d6b80142691cf19b33142be5407ded0965d34e1e 100644 |
--- a/media/cast/test/end2end_unittest.cc |
+++ b/media/cast/test/end2end_unittest.cc |
@@ -406,7 +406,9 @@ class End2EndTest : public ::testing::Test { |
receiver_to_sender_(cast_environment_), |
sender_to_receiver_(cast_environment_), |
test_receiver_audio_callback_(new TestReceiverAudioCallback()), |
- test_receiver_video_callback_(new TestReceiverVideoCallback()) { |
+ test_receiver_video_callback_(new TestReceiverVideoCallback()), |
+ audio_initialization_cnt_(0), |
+ video_initialization_cnt_(0) { |
testing_clock_->Advance( |
base::TimeDelta::FromMilliseconds(kStartMillisecond)); |
cast_environment_->Logging()->AddRawEventSubscriber(&event_subscriber_); |
@@ -475,11 +477,10 @@ class End2EndTest : public ::testing::Test { |
} |
void Create() { |
- cast_receiver_.reset( |
- CastReceiver::CreateCastReceiver(cast_environment_, |
- audio_receiver_config_, |
- video_receiver_config_, |
- &receiver_to_sender_)); |
+ cast_receiver_ = CastReceiver::Create(cast_environment_, |
+ audio_receiver_config_, |
+ video_receiver_config_, |
+ &receiver_to_sender_); |
transport_sender_.reset(new transport::CastTransportSenderImpl( |
testing_clock_, |
transport_config_, |
@@ -487,18 +488,21 @@ class End2EndTest : public ::testing::Test { |
task_runner_, |
&sender_to_receiver_)); |
- cast_sender_.reset(CastSender::CreateCastSender( |
+ cast_sender_ = CastSender::Create( |
cast_environment_, |
- &audio_sender_config_, |
- &video_sender_config_, |
- NULL, |
base::Bind(&End2EndTest::InitializationResult, base::Unretained(this)), |
- transport_sender_.get())); |
+ transport_sender_.get()); |
+ |
+ // Initializing audio and video senders. |
+ cast_sender_->InitializeAudio(audio_sender_config_); |
+ cast_sender_->InitializeVideo(video_sender_config_, NULL); |
receiver_to_sender_.SetPacketReceiver(cast_sender_->packet_receiver()); |
sender_to_receiver_.SetPacketReceiver(cast_receiver_->packet_receiver()); |
- frame_input_ = cast_sender_->frame_input(); |
+ audio_frame_input_ = cast_sender_->audio_frame_input(); |
+ video_frame_input_ = cast_sender_->video_frame_input(); |
+ |
frame_receiver_ = cast_receiver_->frame_receiver(); |
audio_bus_factory_.reset( |
@@ -530,7 +534,7 @@ class End2EndTest : public ::testing::Test { |
media::VideoFrame::CreateFrame( |
VideoFrame::I420, size, gfx::Rect(size), size, time_diff); |
PopulateVideoFrame(video_frame, start_value); |
- frame_input_->InsertRawVideoFrame(video_frame, capture_time); |
+ video_frame_input_->InsertRawVideoFrame(video_frame, capture_time); |
} |
void RunTasks(int during_ms) { |
@@ -542,7 +546,17 @@ class End2EndTest : public ::testing::Test { |
} |
void InitializationResult(CastInitializationStatus result) { |
- EXPECT_EQ(result, STATUS_INITIALIZED); |
+ // Result should be STATUS_AUDIO_INITIALIZED or STATUS_VIDEO_INITIALIZED; |
+ // each should be called only once. |
+ if (result == STATUS_AUDIO_INITIALIZED) { |
+ ++audio_initialization_cnt_; |
+ } else if (result == STATUS_VIDEO_INITIALIZED) { |
+ ++video_initialization_cnt_; |
+ } else { |
+ FAIL(); |
+ } |
+ EXPECT_GE(1, audio_initialization_cnt_); |
+ EXPECT_GE(1, video_initialization_cnt_); |
} |
AudioReceiverConfig audio_receiver_config_; |
@@ -562,7 +576,8 @@ class End2EndTest : public ::testing::Test { |
scoped_ptr<CastReceiver> cast_receiver_; |
scoped_ptr<CastSender> cast_sender_; |
- scoped_refptr<FrameInput> frame_input_; |
+ scoped_refptr<AudioFrameInput> audio_frame_input_; |
+ scoped_refptr<VideoFrameInput> video_frame_input_; |
scoped_refptr<FrameReceiver> frame_receiver_; |
scoped_refptr<TestReceiverAudioCallback> test_receiver_audio_callback_; |
@@ -574,6 +589,8 @@ class End2EndTest : public ::testing::Test { |
std::vector<FrameEvent> frame_events_; |
std::vector<PacketEvent> packet_events_; |
std::vector<GenericEvent> generic_events_; |
+ int audio_initialization_cnt_; |
+ int video_initialization_cnt_; |
}; |
#if defined(OS_WIN) |
@@ -614,7 +631,7 @@ TEST_F(End2EndTest, MAYBE_LoopNoLossPcm16) { |
} |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -679,7 +696,7 @@ TEST_F(End2EndTest, MAYBE_LoopNoLossPcm16ExternalDecoder) { |
send_time); |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -720,7 +737,7 @@ TEST_F(End2EndTest, MAYBE_LoopNoLossOpus) { |
} |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -767,7 +784,7 @@ TEST_F(End2EndTest, DISABLED_StartSenderBeforeReceiver) { |
base::TimeDelta::FromMilliseconds(10) * num_10ms_blocks)); |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -798,7 +815,7 @@ TEST_F(End2EndTest, DISABLED_StartSenderBeforeReceiver) { |
} |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -1035,7 +1052,7 @@ TEST_F(End2EndTest, MAYBE_CryptoAudio) { |
send_time); |
} |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |
@@ -1206,7 +1223,7 @@ TEST_F(End2EndTest, MAYBE_AudioLogging) { |
} |
AudioBus* const audio_bus_ptr = audio_bus.get(); |
- frame_input_->InsertAudio( |
+ audio_frame_input_->InsertAudio( |
audio_bus_ptr, |
send_time, |
base::Bind(&OwnThatAudioBus, base::Passed(&audio_bus))); |