cros: Move AshTouchExplorationManager into //ash/accessibility

Rename the class to TouchExplorationManager, since it's already
ash-only and there are no other such managers.

Remove the _chromeos suffix from the file, since ash is chromeos only
these days.

This code probably dates back to when ash ran on Windows. Some of this
class could be collapsed with TouchExplorationController.

Bug: none
Test: ash_unittests
Change-Id: Id6e81d60e32ff27bccaf4f3d231e463c4c4eb747
Reviewed-on: https://chromium-review.googlesource.com/956536
Commit-Queue: James Cook <[email protected]>
Reviewed-by: David Tseng <[email protected]>
Cr-Commit-Position: refs/heads/master@{#542124}
diff --git a/ash/accessibility/touch_exploration_manager_unittest.cc b/ash/accessibility/touch_exploration_manager_unittest.cc
new file mode 100644
index 0000000..3263aa73
--- /dev/null
+++ b/ash/accessibility/touch_exploration_manager_unittest.cc
@@ -0,0 +1,60 @@
+// Copyright 2014 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 "ash/accessibility/touch_exploration_manager.h"
+
+#include "ash/accessibility/accessibility_controller.h"
+#include "ash/accessibility/test_accessibility_controller_client.h"
+#include "ash/root_window_controller.h"
+#include "ash/shell.h"
+#include "ash/test/ash_test_base.h"
+#include "chromeos/audio/cras_audio_handler.h"
+#include "ui/accessibility/ax_enums.mojom.h"
+
+namespace ash {
+
+using TouchExplorationManagerTest = AshTestBase;
+
+TEST_F(TouchExplorationManagerTest, AdjustSound) {
+  RootWindowController* controller = Shell::GetPrimaryRootWindowController();
+  TouchExplorationManager touch_exploration_manager(controller);
+  chromeos::CrasAudioHandler* audio_handler = chromeos::CrasAudioHandler::Get();
+
+  touch_exploration_manager.SetOutputLevel(10);
+  EXPECT_EQ(audio_handler->GetOutputVolumePercent(), 10);
+  EXPECT_FALSE(audio_handler->IsOutputMuted());
+
+  touch_exploration_manager.SetOutputLevel(100);
+  EXPECT_EQ(audio_handler->GetOutputVolumePercent(), 100);
+  EXPECT_FALSE(audio_handler->IsOutputMuted());
+
+  touch_exploration_manager.SetOutputLevel(0);
+  EXPECT_EQ(audio_handler->GetOutputVolumePercent(), 0);
+  EXPECT_TRUE(audio_handler->IsOutputMuted());
+
+  touch_exploration_manager.SetOutputLevel(-10);
+  EXPECT_EQ(audio_handler->GetOutputVolumePercent(), 0);
+  EXPECT_TRUE(audio_handler->IsOutputMuted());
+}
+
+TEST_F(TouchExplorationManagerTest, HandleAccessibilityGesture) {
+  RootWindowController* controller = Shell::GetPrimaryRootWindowController();
+  TouchExplorationManager touch_exploration_manager(controller);
+  AccessibilityController* a11y_controller =
+      Shell::Get()->accessibility_controller();
+  TestAccessibilityControllerClient client;
+  a11y_controller->SetClient(client.CreateInterfacePtrAndBind());
+
+  touch_exploration_manager.HandleAccessibilityGesture(
+      ax::mojom::Gesture::kClick);
+  a11y_controller->FlushMojoForTest();
+  EXPECT_EQ(ax::mojom::Gesture::kClick, client.last_a11y_gesture());
+
+  touch_exploration_manager.HandleAccessibilityGesture(
+      ax::mojom::Gesture::kSwipeLeft1);
+  a11y_controller->FlushMojoForTest();
+  EXPECT_EQ(ax::mojom::Gesture::kSwipeLeft1, client.last_a11y_gesture());
+}
+
+}  //  namespace ash