Index: media/audio/audio_output_controller_unittest.cc |
diff --git a/media/audio/audio_output_controller_unittest.cc b/media/audio/audio_output_controller_unittest.cc |
index c6c2d4572a05d935c2428c1a5ac844b9dcadeccf..c3cfa09df6d82121850f0b1b223be5b9fda7ea3b 100644 |
--- a/media/audio/audio_output_controller_unittest.cc |
+++ b/media/audio/audio_output_controller_unittest.cc |
@@ -4,11 +4,9 @@ |
#include "base/basictypes.h" |
#include "base/bind.h" |
-#include "base/environment.h" |
#include "base/logging.h" |
-#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
-#include "base/message_loop.h" |
+#include "base/message_loop_proxy.h" |
#include "base/synchronization/waitable_event.h" |
#include "media/audio/audio_output_controller.h" |
#include "media/audio/audio_parameters.h" |
@@ -222,9 +220,14 @@ class AudioOutputControllerTest : public testing::Test { |
void Close() { |
EXPECT_CALL(mock_sync_reader_, Close()); |
+ base::WaitableEvent close_event(true, false); |
+ base::Closure closed_cb = base::Bind( |
+ &base::WaitableEvent::Signal, base::Unretained(&close_event)); |
- controller_->Close(base::MessageLoop::QuitClosure()); |
- base::MessageLoop::current()->Run(); |
+ audio_manager_->GetMessageLoop()->PostTask( |
+ FROM_HERE, |
+ base::Bind(&AudioOutputController::Close, controller_, closed_cb)); |
+ close_event.Wait(); |
} |
// These help make test sequences more readable. |
@@ -249,7 +252,6 @@ class AudioOutputControllerTest : public testing::Test { |
void WaitForPause() { pause_event_.Wait(); } |
private: |
- base::MessageLoopForIO message_loop_; |
scoped_ptr<AudioManager> audio_manager_; |
MockAudioOutputControllerEventHandler mock_event_handler_; |
MockAudioOutputControllerSyncReader mock_sync_reader_; |