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 |