| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chromeos/audio/cras_audio_handler.h" | 5 #include "chromeos/audio/cras_audio_handler.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| 11 | 11 |
| 12 #include "base/bind.h" | 12 #include "base/bind.h" |
| 13 #include "base/macros.h" | 13 #include "base/macros.h" |
| 14 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
| 15 #include "base/message_loop/message_loop.h" | |
| 16 #include "base/run_loop.h" | 15 #include "base/run_loop.h" |
| 16 #include "base/test/scoped_task_environment.h" |
| 17 #include "base/threading/thread_task_runner_handle.h" | 17 #include "base/threading/thread_task_runner_handle.h" |
| 18 #include "base/values.h" | 18 #include "base/values.h" |
| 19 #include "chromeos/audio/audio_devices_pref_handler.h" | 19 #include "chromeos/audio/audio_devices_pref_handler.h" |
| 20 #include "chromeos/audio/audio_devices_pref_handler_stub.h" | 20 #include "chromeos/audio/audio_devices_pref_handler_stub.h" |
| 21 #include "chromeos/dbus/audio_node.h" | 21 #include "chromeos/dbus/audio_node.h" |
| 22 #include "chromeos/dbus/dbus_thread_manager.h" | 22 #include "chromeos/dbus/dbus_thread_manager.h" |
| 23 #include "chromeos/dbus/fake_cras_audio_client.h" | 23 #include "chromeos/dbus/fake_cras_audio_client.h" |
| 24 #include "media/base/video_facing.h" | 24 #include "media/base/video_facing.h" |
| 25 #include "testing/gtest/include/gtest/gtest.h" | 25 #include "testing/gtest/include/gtest/gtest.h" |
| 26 | 26 |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 private: | 244 private: |
| 245 base::ObserverList<media::VideoCaptureObserver> observers_; | 245 base::ObserverList<media::VideoCaptureObserver> observers_; |
| 246 DISALLOW_COPY_AND_ASSIGN(FakeVideoCaptureManager); | 246 DISALLOW_COPY_AND_ASSIGN(FakeVideoCaptureManager); |
| 247 }; | 247 }; |
| 248 | 248 |
| 249 } // namespace | 249 } // namespace |
| 250 | 250 |
| 251 // Test param is the version of stabel device id used by audio node. | 251 // Test param is the version of stabel device id used by audio node. |
| 252 class CrasAudioHandlerTest : public testing::TestWithParam<int> { | 252 class CrasAudioHandlerTest : public testing::TestWithParam<int> { |
| 253 public: | 253 public: |
| 254 CrasAudioHandlerTest() {} | 254 CrasAudioHandlerTest() |
| 255 : scoped_task_environment_( |
| 256 base::test::ScopedTaskEnvironment::MainThreadType::UI) {} |
| 255 ~CrasAudioHandlerTest() override {} | 257 ~CrasAudioHandlerTest() override {} |
| 256 | 258 |
| 257 void SetUp() override { | 259 void SetUp() override { |
| 258 video_capture_manager_.reset(new FakeVideoCaptureManager); | 260 video_capture_manager_.reset(new FakeVideoCaptureManager); |
| 259 } | 261 } |
| 260 | 262 |
| 261 void TearDown() override { | 263 void TearDown() override { |
| 262 cras_audio_handler_->RemoveAudioObserver(test_observer_.get()); | 264 cras_audio_handler_->RemoveAudioObserver(test_observer_.get()); |
| 263 test_observer_.reset(); | 265 test_observer_.reset(); |
| 264 video_capture_manager_->RemoveAllObservers(); | 266 video_capture_manager_->RemoveAllObservers(); |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 402 video_capture_manager_->NotifyVideoCaptureStarted( | 404 video_capture_manager_->NotifyVideoCaptureStarted( |
| 403 media::MEDIA_VIDEO_FACING_ENVIRONMENT); | 405 media::MEDIA_VIDEO_FACING_ENVIRONMENT); |
| 404 } | 406 } |
| 405 | 407 |
| 406 void StopRearFacingCamera() { | 408 void StopRearFacingCamera() { |
| 407 video_capture_manager_->NotifyVideoCaptureStopped( | 409 video_capture_manager_->NotifyVideoCaptureStopped( |
| 408 media::MEDIA_VIDEO_FACING_ENVIRONMENT); | 410 media::MEDIA_VIDEO_FACING_ENVIRONMENT); |
| 409 } | 411 } |
| 410 | 412 |
| 411 protected: | 413 protected: |
| 412 base::MessageLoopForUI message_loop_; | 414 base::test::ScopedTaskEnvironment scoped_task_environment_; |
| 413 CrasAudioHandler* cras_audio_handler_ = nullptr; // Not owned. | 415 CrasAudioHandler* cras_audio_handler_ = nullptr; // Not owned. |
| 414 FakeCrasAudioClient* fake_cras_audio_client_ = nullptr; // Not owned. | 416 FakeCrasAudioClient* fake_cras_audio_client_ = nullptr; // Not owned. |
| 415 std::unique_ptr<TestObserver> test_observer_; | 417 std::unique_ptr<TestObserver> test_observer_; |
| 416 scoped_refptr<AudioDevicesPrefHandlerStub> audio_pref_handler_; | 418 scoped_refptr<AudioDevicesPrefHandlerStub> audio_pref_handler_; |
| 417 std::unique_ptr<FakeVideoCaptureManager> video_capture_manager_; | 419 std::unique_ptr<FakeVideoCaptureManager> video_capture_manager_; |
| 418 | 420 |
| 419 private: | 421 private: |
| 420 DISALLOW_COPY_AND_ASSIGN(CrasAudioHandlerTest); | 422 DISALLOW_COPY_AND_ASSIGN(CrasAudioHandlerTest); |
| 421 }; | 423 }; |
| 422 | 424 |
| (...skipping 3553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3976 // Verity the active mic does not change when there is still camera on. | 3978 // Verity the active mic does not change when there is still camera on. |
| 3977 EXPECT_EQ(kRearMicId, cras_audio_handler_->GetPrimaryActiveInputNode()); | 3979 EXPECT_EQ(kRearMicId, cras_audio_handler_->GetPrimaryActiveInputNode()); |
| 3978 | 3980 |
| 3979 // Stop the rear mic. | 3981 // Stop the rear mic. |
| 3980 StopRearFacingCamera(); | 3982 StopRearFacingCamera(); |
| 3981 // Verify the actice mic changes to front mic after both cameras stop. | 3983 // Verify the actice mic changes to front mic after both cameras stop. |
| 3982 EXPECT_EQ(kFrontMicId, cras_audio_handler_->GetPrimaryActiveInputNode()); | 3984 EXPECT_EQ(kFrontMicId, cras_audio_handler_->GetPrimaryActiveInputNode()); |
| 3983 } | 3985 } |
| 3984 | 3986 |
| 3985 } // namespace chromeos | 3987 } // namespace chromeos |
| OLD | NEW |