Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6037)

Unified Diff: chrome/browser/ui/ash/volume_controller_browsertest_chromeos.cc

Issue 2552483002: mash: Have chrome set itself as a controller interface for changing volume (Closed)
Patch Set: comment Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/ash/volume_controller_browsertest_chromeos.cc
diff --git a/chrome/browser/ui/ash/volume_controller_browsertest_chromeos.cc b/chrome/browser/ui/ash/volume_controller_browsertest_chromeos.cc
deleted file mode 100644
index 624cac9f16cb8c48748ca05e4bbdd99b2f7b91e2..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/ash/volume_controller_browsertest_chromeos.cc
+++ /dev/null
@@ -1,253 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include <memory>
-#include <vector>
-
-#include "ash/common/accessibility_delegate.h"
-#include "ash/common/accessibility_types.h"
-#include "base/command_line.h"
-#include "base/macros.h"
-#include "chrome/browser/browser_process.h"
-#include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
-#include "chrome/browser/ui/ash/volume_controller_chromeos.h"
-#include "chrome/test/base/in_process_browser_test.h"
-#include "chromeos/audio/chromeos_sounds.h"
-#include "chromeos/audio/cras_audio_handler.h"
-#include "chromeos/chromeos_switches.h"
-#include "media/audio/sounds/sounds_manager.h"
-#include "ui/base/accelerators/accelerator.h"
-
-namespace {
-
-class SoundsManagerTestImpl : public media::SoundsManager {
- public:
- SoundsManagerTestImpl()
- : is_sound_initialized_(chromeos::SOUND_COUNT),
- num_play_requests_(chromeos::SOUND_COUNT) {
- }
-
- ~SoundsManagerTestImpl() override {}
-
- bool Initialize(SoundKey key, const base::StringPiece& /* data */) override {
- is_sound_initialized_[key] = true;
- return true;
- }
-
- bool Play(SoundKey key) override {
- ++num_play_requests_[key];
- return true;
- }
-
- bool Stop(SoundKey key) override {
- return true;
- }
-
- base::TimeDelta GetDuration(SoundKey /* key */) override {
- return base::TimeDelta();
- }
-
- bool is_sound_initialized(SoundKey key) const {
- return is_sound_initialized_[key];
- }
-
- int num_play_requests(SoundKey key) const {
- return num_play_requests_[key];
- }
-
- private:
- std::vector<bool> is_sound_initialized_;
- std::vector<int> num_play_requests_;
-
- DISALLOW_COPY_AND_ASSIGN(SoundsManagerTestImpl);
-};
-
-class VolumeControllerTest : public InProcessBrowserTest {
- public:
- VolumeControllerTest() {}
- ~VolumeControllerTest() override {}
-
- void SetUpOnMainThread() override {
- volume_controller_.reset(new VolumeController());
- audio_handler_ = chromeos::CrasAudioHandler::Get();
- }
-
- protected:
- chromeos::CrasAudioHandler* audio_handler_; // Not owned.
- std::unique_ptr<VolumeController> volume_controller_;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(VolumeControllerTest);
-};
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerTest, VolumeUpAndDown) {
- // Set initial value as 50%
- const int kInitVolume = 50;
- audio_handler_->SetOutputVolumePercent(kInitVolume);
-
- EXPECT_EQ(audio_handler_->GetOutputVolumePercent(), kInitVolume);
-
- volume_controller_->VolumeUp();
- EXPECT_LT(kInitVolume, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeDown();
- EXPECT_EQ(kInitVolume, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeDown();
- EXPECT_GT(kInitVolume, audio_handler_->GetOutputVolumePercent());
-}
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerTest, VolumeDownToZero) {
- // Setting to very small volume.
- audio_handler_->SetOutputVolumePercent(1);
-
- volume_controller_->VolumeDown();
- EXPECT_EQ(0, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeDown();
- EXPECT_EQ(0, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeUp();
- EXPECT_LT(0, audio_handler_->GetOutputVolumePercent());
-}
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerTest, VolumeUpTo100) {
- // Setting to almost max
- audio_handler_->SetOutputVolumePercent(99);
-
- volume_controller_->VolumeUp();
- EXPECT_EQ(100, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeUp();
- EXPECT_EQ(100, audio_handler_->GetOutputVolumePercent());
- volume_controller_->VolumeDown();
- EXPECT_GT(100, audio_handler_->GetOutputVolumePercent());
-}
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerTest, Mutes) {
- ASSERT_FALSE(audio_handler_->IsOutputMuted());
- const int initial_volume = audio_handler_->GetOutputVolumePercent();
-
- volume_controller_->VolumeMute();
- EXPECT_TRUE(audio_handler_->IsOutputMuted());
-
- // Further mute buttons doesn't have effects.
- volume_controller_->VolumeMute();
- EXPECT_TRUE(audio_handler_->IsOutputMuted());
-
- // Right after the volume up after set_mute recovers to original volume.
- volume_controller_->VolumeUp();
- EXPECT_FALSE(audio_handler_->IsOutputMuted());
- EXPECT_EQ(initial_volume, audio_handler_->GetOutputVolumePercent());
-
- volume_controller_->VolumeMute();
- // After the volume down, the volume goes down to zero explicitly.
- volume_controller_->VolumeDown();
- EXPECT_TRUE(audio_handler_->IsOutputMuted());
- EXPECT_EQ(0, audio_handler_->GetOutputVolumePercent());
-
- // Thus, further VolumeUp doesn't recover the volume, it's just slightly
- // bigger than 0.
- volume_controller_->VolumeUp();
- EXPECT_LT(0, audio_handler_->GetOutputVolumePercent());
- EXPECT_GT(initial_volume, audio_handler_->GetOutputVolumePercent());
-}
-
-class VolumeControllerSoundsTest : public VolumeControllerTest {
- public:
- VolumeControllerSoundsTest() : sounds_manager_(NULL) {}
- ~VolumeControllerSoundsTest() override {}
-
- void SetUpInProcessBrowserTestFixture() override {
- sounds_manager_ = new SoundsManagerTestImpl();
- media::SoundsManager::InitializeForTesting(sounds_manager_);
- }
-
- void EnableSpokenFeedback(bool enabled) {
- chromeos::AccessibilityManager* manager =
- chromeos::AccessibilityManager::Get();
- manager->EnableSpokenFeedback(enabled, ash::A11Y_NOTIFICATION_NONE);
- }
-
- bool is_sound_initialized() const {
- return sounds_manager_->is_sound_initialized(chromeos::SOUND_VOLUME_ADJUST);
- }
-
- int num_play_requests() const {
- return sounds_manager_->num_play_requests(chromeos::SOUND_VOLUME_ADJUST);
- }
-
- private:
- SoundsManagerTestImpl* sounds_manager_;
-
- DISALLOW_COPY_AND_ASSIGN(VolumeControllerSoundsTest);
-};
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerSoundsTest, Simple) {
- audio_handler_->SetOutputVolumePercent(50);
-
- EnableSpokenFeedback(false /* enabled */);
- volume_controller_->VolumeUp();
- volume_controller_->VolumeDown();
- EXPECT_EQ(0, num_play_requests());
-
- EnableSpokenFeedback(true /* enabled */);
- volume_controller_->VolumeUp();
- volume_controller_->VolumeDown();
- EXPECT_EQ(2, num_play_requests());
-}
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerSoundsTest, EdgeCases) {
- EXPECT_TRUE(is_sound_initialized());
- EnableSpokenFeedback(true /* enabled */);
-
- // Check that sound is played on volume up and volume down.
- audio_handler_->SetOutputVolumePercent(50);
- volume_controller_->VolumeUp();
- EXPECT_EQ(1, num_play_requests());
- volume_controller_->VolumeDown();
- EXPECT_EQ(2, num_play_requests());
-
- audio_handler_->SetOutputVolumePercent(99);
- volume_controller_->VolumeUp();
- EXPECT_EQ(3, num_play_requests());
-
- audio_handler_->SetOutputVolumePercent(100);
- volume_controller_->VolumeUp();
- EXPECT_EQ(3, num_play_requests());
-
- // Check that sound isn't played when audio is muted.
- audio_handler_->SetOutputVolumePercent(50);
- volume_controller_->VolumeMute();
- volume_controller_->VolumeDown();
- ASSERT_TRUE(audio_handler_->IsOutputMuted());
- EXPECT_EQ(3, num_play_requests());
-
- // Check that audio is unmuted and sound is played.
- volume_controller_->VolumeUp();
- ASSERT_FALSE(audio_handler_->IsOutputMuted());
- EXPECT_EQ(4, num_play_requests());
-}
-
-class VolumeControllerSoundsDisabledTest : public VolumeControllerSoundsTest {
- public:
- VolumeControllerSoundsDisabledTest() {}
- ~VolumeControllerSoundsDisabledTest() override {}
-
- void SetUpCommandLine(base::CommandLine* command_line) override {
- VolumeControllerSoundsTest::SetUpCommandLine(command_line);
- command_line->AppendSwitch(chromeos::switches::kDisableVolumeAdjustSound);
- }
-
- private:
- DISALLOW_COPY_AND_ASSIGN(VolumeControllerSoundsDisabledTest);
-};
-
-IN_PROC_BROWSER_TEST_F(VolumeControllerSoundsDisabledTest,
- VolumeAdjustSounds) {
- EXPECT_FALSE(is_sound_initialized());
-
- // Check that sound isn't played on volume up and volume down.
- audio_handler_->SetOutputVolumePercent(50);
- volume_controller_->VolumeUp();
- volume_controller_->VolumeDown();
- EXPECT_EQ(0, num_play_requests());
-}
-
-} // namespace
« no previous file with comments | « chrome/browser/ui/ash/volume_controller_browsertest.cc ('k') | chrome/browser/ui/ash/volume_controller_chromeos.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698