Chromium Code Reviews
|
| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "base/test/test_timeouts.h" | |
| 6 #include "content/renderer/media/webrtc_audio_device_impl.h" | |
| 7 #include "content/test/webrtc_audio_device_test.h" | |
| 8 #include "media/audio/audio_util.h" | |
| 9 #include "testing/gmock/include/gmock/gmock.h" | |
| 10 #include "third_party/webrtc/voice_engine/main/interface/voe_audio_processing.h" | |
| 11 #include "third_party/webrtc/voice_engine/main/interface/voe_base.h" | |
| 12 #include "third_party/webrtc/voice_engine/main/interface/voe_file.h" | |
| 13 #include "third_party/webrtc/voice_engine/main/interface/voe_network.h" | |
| 14 | |
| 15 using testing::_; | |
| 16 using testing::InvokeWithoutArgs; | |
| 17 using testing::Return; | |
| 18 using testing::StrEq; | |
| 19 | |
| 20 namespace { | |
| 21 | |
| 22 ACTION_P(QuitMessageLoop, loop_or_proxy) { | |
| 23 loop_or_proxy->PostTask(FROM_HERE, new MessageLoop::QuitTask()); | |
| 24 } | |
| 25 | |
| 26 class AudioUtil : public AudioUtilInterface { | |
| 27 public: | |
| 28 virtual double GetAudioHardwareSampleRate() OVERRIDE { | |
| 29 return media::GetAudioHardwareSampleRate(); | |
| 30 } | |
| 31 virtual double GetAudioInputHardwareSampleRate() OVERRIDE { | |
| 32 return media::GetAudioInputHardwareSampleRate(); | |
| 33 } | |
| 34 }; | |
| 35 | |
| 36 } // end namespace | |
| 37 | |
| 38 // Basic test that instantiates and initializes an instance of | |
| 39 // WebRtcAudioDeviceImpl. | |
| 40 TEST_F(WebRTCAudioDeviceTest, Construct) { | |
| 41 AudioUtil audio_util; | |
| 42 set_audio_util_callback(&audio_util); | |
|
henrika (OOO until Aug 14)
2011/11/04 10:35:12
Where can I find the definition of set_audio_util_
tommi (sloooow) - chröme
2011/11/07 10:27:28
webrtc_audio_device_test.h@130
| |
| 43 scoped_refptr<WebRtcAudioDeviceImpl> audio_device( | |
| 44 new WebRtcAudioDeviceImpl()); | |
| 45 audio_device->SetSessionId(1); | |
| 46 | |
| 47 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); | |
|
henrika (OOO until Aug 14)
2011/11/04 10:35:12
Why not ensure that engine is valid (not NULL) her
tommi (sloooow) - chröme
2011/11/07 10:27:28
Done.
| |
| 48 | |
| 49 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); | |
| 50 int err = base->Init(audio_device); | |
| 51 EXPECT_EQ(0, err); | |
| 52 } | |
| 53 | |
| 54 // Plays a local file. This test usually takes just under a minute to run | |
| 55 // and requires an audio card to work, so disabled by default. | |
| 56 TEST_F(WebRTCAudioDeviceTest, DISABLED_PlayLocalFileLong) { | |
| 57 AudioUtil audio_util; | |
| 58 set_audio_util_callback(&audio_util); | |
| 59 PlayLocalFile(0); | |
|
henrika (OOO until Aug 14)
2011/11/04 10:35:12
I have never seen this before where a unit test ca
henrika (OOO until Aug 14)
2011/11/04 10:35:12
Add comment about meaning of '0' here.
tommi (sloooow) - chröme
2011/11/07 10:27:28
The reason is because two tests use the same code.
| |
| 60 } | |
| 61 | |
| 62 TEST_F(WebRTCAudioDeviceTest, PlayLocalFile) { | |
| 63 AudioUtil audio_util; | |
| 64 set_audio_util_callback(&audio_util); | |
| 65 PlayLocalFile(TestTimeouts::action_timeout_ms()); | |
| 66 } | |
| OLD | NEW |