| Index: media/audio/win/audio_low_latency_input_win_unittest.cc
|
| diff --git a/media/audio/win/audio_low_latency_input_win_unittest.cc b/media/audio/win/audio_low_latency_input_win_unittest.cc
|
| index 1c67150e1ffc88f96d3d9b36c9577f3b9e8d9716..8a9f366d9c461a1edf4404b10e35117f958d8b43 100644
|
| --- a/media/audio/win/audio_low_latency_input_win_unittest.cc
|
| +++ b/media/audio/win/audio_low_latency_input_win_unittest.cc
|
| @@ -250,31 +250,15 @@
|
| DISALLOW_COPY_AND_ASSIGN(ScopedAudioInputStream);
|
| };
|
|
|
| -class WinAudioInputTest : public ::testing::Test {
|
| - public:
|
| - WinAudioInputTest() {
|
| - audio_manager_ =
|
| - AudioManager::CreateForTesting(message_loop_.task_runner());
|
| - message_loop_.RunUntilIdle();
|
| - }
|
| - ~WinAudioInputTest() override {
|
| - audio_manager_.reset();
|
| - message_loop_.RunUntilIdle();
|
| - }
|
| -
|
| - protected:
|
| - base::MessageLoop message_loop_;
|
| - ScopedAudioManagerPtr audio_manager_;
|
| -};
|
| -
|
| // Verify that we can retrieve the current hardware/mixing sample rate
|
| // for all available input devices.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamHardwareSampleRate) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamHardwareSampleRate) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
|
|
| // Retrieve a list of all available input devices.
|
| media::AudioDeviceNames device_names;
|
| - audio_manager_->GetAudioInputDeviceNames(&device_names);
|
| + audio_manager->GetAudioInputDeviceNames(&device_names);
|
|
|
| // Scan all available input devices and repeat the same test for all of them.
|
| for (media::AudioDeviceNames::const_iterator it = device_names.begin();
|
| @@ -288,27 +272,30 @@
|
| }
|
|
|
| // Test Create(), Close() calling sequence.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamCreateAndClose) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamCreateAndClose) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
| ScopedAudioInputStream ais(
|
| - CreateDefaultAudioInputStream(audio_manager_.get()));
|
| + CreateDefaultAudioInputStream(audio_manager.get()));
|
| ais.Close();
|
| }
|
|
|
| // Test Open(), Close() calling sequence.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamOpenAndClose) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamOpenAndClose) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
| ScopedAudioInputStream ais(
|
| - CreateDefaultAudioInputStream(audio_manager_.get()));
|
| + CreateDefaultAudioInputStream(audio_manager.get()));
|
| EXPECT_TRUE(ais->Open());
|
| ais.Close();
|
| }
|
|
|
| // Test Open(), Start(), Close() calling sequence.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamOpenStartAndClose) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamOpenStartAndClose) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
| ScopedAudioInputStream ais(
|
| - CreateDefaultAudioInputStream(audio_manager_.get()));
|
| + CreateDefaultAudioInputStream(audio_manager.get()));
|
| EXPECT_TRUE(ais->Open());
|
| MockAudioInputCallback sink;
|
| ais->Start(&sink);
|
| @@ -316,10 +303,11 @@
|
| }
|
|
|
| // Test Open(), Start(), Stop(), Close() calling sequence.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamOpenStartStopAndClose) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamOpenStartStopAndClose) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
| ScopedAudioInputStream ais(
|
| - CreateDefaultAudioInputStream(audio_manager_.get()));
|
| + CreateDefaultAudioInputStream(audio_manager.get()));
|
| EXPECT_TRUE(ais->Open());
|
| MockAudioInputCallback sink;
|
| ais->Start(&sink);
|
| @@ -328,10 +316,11 @@
|
| }
|
|
|
| // Test some additional calling sequences.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamMiscCallingSequences) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamMiscCallingSequences) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
| ScopedAudioInputStream ais(
|
| - CreateDefaultAudioInputStream(audio_manager_.get()));
|
| + CreateDefaultAudioInputStream(audio_manager.get()));
|
| WASAPIAudioInputStream* wais =
|
| static_cast<WASAPIAudioInputStream*>(ais.get());
|
|
|
| @@ -355,16 +344,18 @@
|
| ais.Close();
|
| }
|
|
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamTestPacketSizes) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamTestPacketSizes) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
|
|
| int count = 0;
|
| + base::MessageLoopForUI loop;
|
|
|
| // 10 ms packet size.
|
|
|
| // Create default WASAPI input stream which records in stereo using
|
| // the shared mixing rate. The default buffer size is 10ms.
|
| - AudioInputStreamWrapper aisw(audio_manager_.get());
|
| + AudioInputStreamWrapper aisw(audio_manager.get());
|
| ScopedAudioInputStream ais(aisw.Create());
|
| EXPECT_TRUE(ais->Open());
|
|
|
| @@ -379,9 +370,9 @@
|
| // estimate.
|
| EXPECT_CALL(sink, OnData(ais.get(), NotNull(), _, _))
|
| .Times(AtLeast(10))
|
| - .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &message_loop_));
|
| - ais->Start(&sink);
|
| - message_loop_.Run();
|
| + .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &loop));
|
| + ais->Start(&sink);
|
| + loop.Run();
|
| ais->Stop();
|
|
|
| // Store current packet size (to be used in the subsequent tests).
|
| @@ -399,9 +390,9 @@
|
|
|
| EXPECT_CALL(sink, OnData(ais.get(), NotNull(), _, _))
|
| .Times(AtLeast(10))
|
| - .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &message_loop_));
|
| - ais->Start(&sink);
|
| - message_loop_.Run();
|
| + .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &loop));
|
| + ais->Start(&sink);
|
| + loop.Run();
|
| ais->Stop();
|
| ais.Close();
|
|
|
| @@ -415,28 +406,29 @@
|
|
|
| EXPECT_CALL(sink, OnData(ais.get(), NotNull(), _, _))
|
| .Times(AtLeast(10))
|
| - .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &message_loop_));
|
| - ais->Start(&sink);
|
| - message_loop_.Run();
|
| + .WillRepeatedly(CheckCountAndPostQuitTask(&count, 10, &loop));
|
| + ais->Start(&sink);
|
| + loop.Run();
|
| ais->Stop();
|
| ais.Close();
|
| }
|
|
|
| // Test that we can capture a stream in loopback.
|
| -TEST_F(WinAudioInputTest, WASAPIAudioInputStreamLoopback) {
|
| - ABORT_AUDIO_TEST_IF_NOT(audio_manager_->HasAudioOutputDevices() &&
|
| +TEST(WinAudioInputTest, WASAPIAudioInputStreamLoopback) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(audio_manager->HasAudioOutputDevices() &&
|
| CoreAudioUtil::IsSupported());
|
|
|
| - AudioParameters params = audio_manager_->GetInputStreamParameters(
|
| + AudioParameters params = audio_manager->GetInputStreamParameters(
|
| AudioManagerBase::kLoopbackInputDeviceId);
|
| EXPECT_EQ(params.effects(), 0);
|
|
|
| AudioParameters output_params =
|
| - audio_manager_->GetOutputStreamParameters(std::string());
|
| + audio_manager->GetOutputStreamParameters(std::string());
|
| EXPECT_EQ(params.sample_rate(), output_params.sample_rate());
|
| EXPECT_EQ(params.channel_layout(), output_params.channel_layout());
|
|
|
| - ScopedAudioInputStream stream(audio_manager_->MakeAudioInputStream(
|
| + ScopedAudioInputStream stream(audio_manager->MakeAudioInputStream(
|
| params, AudioManagerBase::kLoopbackInputDeviceId));
|
| ASSERT_TRUE(stream->Open());
|
| FakeAudioInputCallback sink;
|
| @@ -456,15 +448,16 @@
|
| // To include disabled tests in test execution, just invoke the test program
|
| // with --gtest_also_run_disabled_tests or set the GTEST_ALSO_RUN_DISABLED_TESTS
|
| // environment variable to a value greater than 0.
|
| -TEST_F(WinAudioInputTest, DISABLED_WASAPIAudioInputStreamRecordToFile) {
|
| - ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
|
| +TEST(WinAudioInputTest, DISABLED_WASAPIAudioInputStreamRecordToFile) {
|
| + scoped_ptr<AudioManager> audio_manager(AudioManager::CreateForTesting());
|
| + ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager.get()));
|
|
|
| // Name of the output PCM file containing captured data. The output file
|
| // will be stored in the directory containing 'media_unittests.exe'.
|
| // Example of full name: \src\build\Debug\out_stereo_10sec.pcm.
|
| const char* file_name = "out_stereo_10sec.pcm";
|
|
|
| - AudioInputStreamWrapper aisw(audio_manager_.get());
|
| + AudioInputStreamWrapper aisw(audio_manager.get());
|
| ScopedAudioInputStream ais(aisw.Create());
|
| EXPECT_TRUE(ais->Open());
|
|
|
|
|