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 60d386d82924c8fac0388bc8cfee999ef4145527..69a24f8b5e8206a10ef6123e2c1850f294fae259 100644 |
--- a/media/audio/win/audio_low_latency_input_win_unittest.cc |
+++ b/media/audio/win/audio_low_latency_input_win_unittest.cc |
@@ -163,9 +163,11 @@ |
class AudioInputStreamWrapper { |
public: |
explicit AudioInputStreamWrapper(AudioManager* audio_manager) |
- : audio_man_(audio_manager), |
- default_params_(audio_man_->GetInputStreamParameters( |
- AudioManagerBase::kDefaultDeviceId)) { |
+ : com_init_(ScopedCOMInitializer::kMTA), |
+ audio_man_(audio_manager), |
+ default_params_( |
+ audio_manager->GetInputStreamParameters( |
+ AudioManagerBase::kDefaultDeviceId)) { |
EXPECT_EQ(format(), AudioParameters::AUDIO_PCM_LOW_LATENCY); |
frames_per_buffer_ = default_params_.frames_per_buffer(); |
// We expect the default buffer size to be a 10ms buffer. |
@@ -205,6 +207,7 @@ |
return ais; |
} |
+ ScopedCOMInitializer com_init_; |
AudioManager* audio_man_; |
const AudioParameters default_params_; |
int frames_per_buffer_; |
@@ -251,24 +254,17 @@ |
DISALLOW_COPY_AND_ASSIGN(ScopedAudioInputStream); |
}; |
-class WinAudioInputTest : public testing::Test { |
- public: |
- WinAudioInputTest() : audio_manager_(AudioManager::CreateForTesting()) {} |
- ~WinAudioInputTest() override {} |
- |
- protected: |
- ScopedCOMInitializer com_init_; |
- scoped_ptr<AudioManager> 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())); |
+ |
+ ScopedCOMInitializer com_init(ScopedCOMInitializer::kMTA); |
// 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(); |
@@ -281,27 +277,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); |
@@ -309,10 +308,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); |
@@ -321,10 +321,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()); |
@@ -348,8 +349,9 @@ |
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; |
@@ -358,7 +360,7 @@ |
// 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()); |
@@ -417,20 +419,21 @@ |
} |
// 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; |
@@ -450,15 +453,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()); |