| Index: content/renderer/media/audio_message_filter_unittest.cc
|
| diff --git a/content/renderer/media/audio_message_filter_unittest.cc b/content/renderer/media/audio_message_filter_unittest.cc
|
| index 4626a64d0ed126d5f42eebb830d8eefeb922a89e..65ca2097beb3426c70d3d5b885c5b90bb4c6e947 100644
|
| --- a/content/renderer/media/audio_message_filter_unittest.cc
|
| +++ b/content/renderer/media/audio_message_filter_unittest.cc
|
| @@ -11,6 +11,8 @@
|
| namespace content {
|
| namespace {
|
|
|
| +const int kRenderViewId = 1;
|
| +
|
| class MockAudioDelegate : public media::AudioOutputIPCDelegate {
|
| public:
|
| MockAudioDelegate() {
|
| @@ -75,7 +77,11 @@ TEST(AudioMessageFilterTest, Basic) {
|
| message_loop.message_loop_proxy()));
|
|
|
| MockAudioDelegate delegate;
|
| - int stream_id = filter->AddDelegate(&delegate);
|
| + const scoped_ptr<media::AudioOutputIPC> ipc =
|
| + filter->CreateAudioOutputIPC(kRenderViewId);
|
| + ipc->CreateStream(&delegate, media::AudioParameters());
|
| + static const int kStreamId = 1;
|
| + EXPECT_EQ(&delegate, filter->delegates_.Lookup(kStreamId));
|
|
|
| // AudioMsg_NotifyStreamCreated
|
| #if defined(OS_WIN)
|
| @@ -87,7 +93,7 @@ TEST(AudioMessageFilterTest, Basic) {
|
| EXPECT_FALSE(delegate.created_received());
|
| filter->OnMessageReceived(
|
| AudioMsg_NotifyStreamCreated(
|
| - stream_id, base::SharedMemory::NULLHandle(),
|
| + kStreamId, base::SharedMemory::NULLHandle(),
|
| socket_handle, kLength));
|
| EXPECT_TRUE(delegate.created_received());
|
| EXPECT_FALSE(base::SharedMemory::IsHandleValid(delegate.handle()));
|
| @@ -98,13 +104,16 @@ TEST(AudioMessageFilterTest, Basic) {
|
| EXPECT_FALSE(delegate.state_changed_received());
|
| filter->OnMessageReceived(
|
| AudioMsg_NotifyStreamStateChanged(
|
| - stream_id, media::AudioOutputIPCDelegate::kPlaying));
|
| + kStreamId, media::AudioOutputIPCDelegate::kPlaying));
|
| EXPECT_TRUE(delegate.state_changed_received());
|
| EXPECT_EQ(media::AudioOutputIPCDelegate::kPlaying, delegate.state());
|
| delegate.Reset();
|
|
|
| message_loop.RunUntilIdle();
|
| - filter->RemoveDelegate(stream_id);
|
| +
|
| + ipc->CloseStream();
|
| + EXPECT_EQ(static_cast<media::AudioOutputIPCDelegate*>(NULL),
|
| + filter->delegates_.Lookup(kStreamId));
|
| }
|
|
|
| TEST(AudioMessageFilterTest, Delegates) {
|
| @@ -115,16 +124,23 @@ TEST(AudioMessageFilterTest, Delegates) {
|
|
|
| MockAudioDelegate delegate1;
|
| MockAudioDelegate delegate2;
|
| -
|
| - int stream_id1 = filter->AddDelegate(&delegate1);
|
| - int stream_id2 = filter->AddDelegate(&delegate2);
|
| + const scoped_ptr<media::AudioOutputIPC> ipc1 =
|
| + filter->CreateAudioOutputIPC(kRenderViewId);
|
| + const scoped_ptr<media::AudioOutputIPC> ipc2 =
|
| + filter->CreateAudioOutputIPC(kRenderViewId);
|
| + ipc1->CreateStream(&delegate1, media::AudioParameters());
|
| + ipc2->CreateStream(&delegate2, media::AudioParameters());
|
| + static const int kStreamId1 = 1;
|
| + static const int kStreamId2 = 2;
|
| + EXPECT_EQ(&delegate1, filter->delegates_.Lookup(kStreamId1));
|
| + EXPECT_EQ(&delegate2, filter->delegates_.Lookup(kStreamId2));
|
|
|
| // Send an IPC message. Make sure the correct delegate gets called.
|
| EXPECT_FALSE(delegate1.state_changed_received());
|
| EXPECT_FALSE(delegate2.state_changed_received());
|
| filter->OnMessageReceived(
|
| AudioMsg_NotifyStreamStateChanged(
|
| - stream_id1, media::AudioOutputIPCDelegate::kPlaying));
|
| + kStreamId1, media::AudioOutputIPCDelegate::kPlaying));
|
| EXPECT_TRUE(delegate1.state_changed_received());
|
| EXPECT_FALSE(delegate2.state_changed_received());
|
| delegate1.Reset();
|
| @@ -133,15 +149,19 @@ TEST(AudioMessageFilterTest, Delegates) {
|
| EXPECT_FALSE(delegate2.state_changed_received());
|
| filter->OnMessageReceived(
|
| AudioMsg_NotifyStreamStateChanged(
|
| - stream_id2, media::AudioOutputIPCDelegate::kPlaying));
|
| + kStreamId2, media::AudioOutputIPCDelegate::kPlaying));
|
| EXPECT_FALSE(delegate1.state_changed_received());
|
| EXPECT_TRUE(delegate2.state_changed_received());
|
| delegate2.Reset();
|
|
|
| message_loop.RunUntilIdle();
|
|
|
| - filter->RemoveDelegate(stream_id1);
|
| - filter->RemoveDelegate(stream_id2);
|
| + ipc1->CloseStream();
|
| + ipc2->CloseStream();
|
| + EXPECT_EQ(static_cast<media::AudioOutputIPCDelegate*>(NULL),
|
| + filter->delegates_.Lookup(kStreamId1));
|
| + EXPECT_EQ(static_cast<media::AudioOutputIPCDelegate*>(NULL),
|
| + filter->delegates_.Lookup(kStreamId2));
|
| }
|
|
|
| } // namespace content
|
|
|