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

Side by Side Diff: trunk/src/ash/wm/maximize_mode/maximize_mode_controller_unittest.cc

Issue 266223003: Revert 268181 "Enabled volume buttons when TouchView is active" (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 7 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "ash/wm/maximize_mode/maximize_mode_controller.h" 5 #include "ash/wm/maximize_mode/maximize_mode_controller.h"
6 6
7 #include "ash/accelerometer/accelerometer_controller.h" 7 #include "ash/accelerometer/accelerometer_controller.h"
8 #include "ash/display/display_manager.h" 8 #include "ash/display/display_manager.h"
9 #include "ash/shell.h" 9 #include "ash/shell.h"
10 #include "ash/system/tray/system_tray_delegate.h"
11 #include "ash/test/ash_test_base.h" 10 #include "ash/test/ash_test_base.h"
12 #include "ash/test/display_manager_test_api.h" 11 #include "ash/test/display_manager_test_api.h"
13 #include "ash/test/test_volume_control_delegate.h"
14 #include "ui/aura/test/event_generator.h" 12 #include "ui/aura/test/event_generator.h"
15 #include "ui/events/event_handler.h" 13 #include "ui/events/event_handler.h"
16 #include "ui/gfx/vector3d_f.h" 14 #include "ui/gfx/vector3d_f.h"
17 15
18 namespace ash { 16 namespace ash {
19 17
20 namespace { 18 namespace {
21 19
22 const float kDegreesToRadians = 3.14159265f / 180.0f; 20 const float kDegreesToRadians = 3.14159265f / 180.0f;
23 21
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 EXPECT_TRUE(IsMaximizeModeStarted()); 141 EXPECT_TRUE(IsMaximizeModeStarted());
144 142
145 // Open 90 degrees. 143 // Open 90 degrees.
146 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f)); 144 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
147 EXPECT_FALSE(IsMaximizeModeStarted()); 145 EXPECT_FALSE(IsMaximizeModeStarted());
148 } 146 }
149 147
150 // Tests that when the hinge is nearly vertically aligned, the current state 148 // Tests that when the hinge is nearly vertically aligned, the current state
151 // persists as the computed angle is highly inaccurate in this orientation. 149 // persists as the computed angle is highly inaccurate in this orientation.
152 TEST_F(MaximizeModeControllerTest, HingeAligned) { 150 TEST_F(MaximizeModeControllerTest, HingeAligned) {
153 // Laptop in normal orientation lid open 90 degrees. 151 // Laptop in normal orientation lid open 90 degrees.
154 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f), 152 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f),
155 gfx::Vector3dF(-1.0f, 0.0f, 0.0f)); 153 gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
156 EXPECT_FALSE(IsMaximizeModeStarted()); 154 EXPECT_FALSE(IsMaximizeModeStarted());
157 155
158 // Completely vertical. 156 // Completely vertical.
159 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, -1.0f, 0.0f), 157 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, -1.0f, 0.0f),
160 gfx::Vector3dF(0.0f, -1.0f, 0.0f)); 158 gfx::Vector3dF(0.0f, -1.0f, 0.0f));
161 EXPECT_FALSE(IsMaximizeModeStarted()); 159 EXPECT_FALSE(IsMaximizeModeStarted());
162 160
163 // Close to vertical but with hinge appearing to be open 270 degrees. 161 // Close to vertical but with hinge appearing to be open 270 degrees.
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
304 // Open up 270 degrees. 302 // Open up 270 degrees.
305 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f), 303 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f),
306 gfx::Vector3dF(1.0f, 0.0f, 0.0f)); 304 gfx::Vector3dF(1.0f, 0.0f, 0.0f));
307 ASSERT_TRUE(IsMaximizeModeStarted()); 305 ASSERT_TRUE(IsMaximizeModeStarted());
308 306
309 event_generator.PressKey(ui::VKEY_ESCAPE, 0); 307 event_generator.PressKey(ui::VKEY_ESCAPE, 0);
310 event_generator.ReleaseKey(ui::VKEY_ESCAPE, 0); 308 event_generator.ReleaseKey(ui::VKEY_ESCAPE, 0);
311 EXPECT_EQ(0u, counter.event_count()); 309 EXPECT_EQ(0u, counter.event_count());
312 counter.reset(); 310 counter.reset();
313 311
314 // Touch should not be blocked. 312 // Touch should not be blocked.
315 event_generator.PressTouch(); 313 event_generator.PressTouch();
316 event_generator.ReleaseTouch(); 314 event_generator.ReleaseTouch();
317 EXPECT_GT(counter.event_count(), 0u); 315 EXPECT_GT(counter.event_count(), 0u);
318 counter.reset(); 316 counter.reset();
319 317
320 gfx::Vector3dF base; 318 gfx::Vector3dF base;
321 319
322 // Lid open 90 degrees. 320 // Lid open 90 degrees.
323 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f), 321 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, 1.0f),
324 gfx::Vector3dF(-1.0f, 0.0f, 0.0f)); 322 gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
325 323
326 event_generator.PressKey(ui::VKEY_ESCAPE, 0); 324 event_generator.PressKey(ui::VKEY_ESCAPE, 0);
327 event_generator.ReleaseKey(ui::VKEY_ESCAPE, 0); 325 event_generator.ReleaseKey(ui::VKEY_ESCAPE, 0);
328 EXPECT_GT(counter.event_count(), 0u); 326 EXPECT_GT(counter.event_count(), 0u);
329 counter.reset(); 327 counter.reset();
330 } 328 }
331 329
332 // Tests that maximize mode does not block Volume Up & Down events.
333 TEST_F(MaximizeModeControllerTest, AllowsVolumeControl) {
334 aura::Window* root = Shell::GetPrimaryRootWindow();
335 aura::test::EventGenerator event_generator(root, root);
336
337 TestVolumeControlDelegate* volume_delegate =
338 new TestVolumeControlDelegate(false);
339 ash::Shell::GetInstance()->system_tray_delegate()->SetVolumeControlDelegate(
340 scoped_ptr<VolumeControlDelegate>(volume_delegate).Pass());
341
342 // Trigger maximize mode by opening to 270 to begin the test in maximize mode.
343 TriggerAccelerometerUpdate(gfx::Vector3dF(0.0f, 0.0f, -1.0f),
344 gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
345 ASSERT_TRUE(IsMaximizeModeStarted());
346
347 // Verify volume down button event is not blocked
348 ASSERT_EQ(0, volume_delegate->handle_volume_down_count());
349 event_generator.PressKey(ui::VKEY_VOLUME_DOWN, 0);
350 event_generator.ReleaseKey(ui::VKEY_VOLUME_DOWN, 0);
351 EXPECT_EQ(1, volume_delegate->handle_volume_down_count());
352
353 // Verify volume up event is not blocked
354 ASSERT_EQ(0, volume_delegate->handle_volume_up_count());
355 event_generator.PressKey(ui::VKEY_VOLUME_UP, 0);
356 event_generator.ReleaseKey(ui::VKEY_VOLUME_UP, 0);
357 EXPECT_EQ(1, volume_delegate->handle_volume_up_count());
358 }
359
360 TEST_F(MaximizeModeControllerTest, LaptopTest) { 330 TEST_F(MaximizeModeControllerTest, LaptopTest) {
361 // Feeds in sample accelerometer data and verifies that there are no 331 // Feeds in sample accelerometer data and verifies that there are no
362 // transitions into touchview / maximize mode while shaking the device around 332 // transitions into touchview / maximize mode while shaking the device around
363 // with the hinge at less than 180 degrees. 333 // with the hinge at less than 180 degrees.
364 ASSERT_TRUE(kAccelerometerLaptopModeTestDataLength % 6 == 0); 334 ASSERT_TRUE(kAccelerometerLaptopModeTestDataLength % 6 == 0);
365 for (size_t i = 0; i < kAccelerometerLaptopModeTestDataLength / 6; ++i) { 335 for (size_t i = 0; i < kAccelerometerLaptopModeTestDataLength / 6; ++i) {
366 gfx::Vector3dF base(kAccelerometerLaptopModeTestData[i * 6], 336 gfx::Vector3dF base(kAccelerometerLaptopModeTestData[i * 6],
367 kAccelerometerLaptopModeTestData[i * 6 + 1], 337 kAccelerometerLaptopModeTestData[i * 6 + 1],
368 kAccelerometerLaptopModeTestData[i * 6 + 2]); 338 kAccelerometerLaptopModeTestData[i * 6 + 2]);
369 gfx::Vector3dF lid(kAccelerometerLaptopModeTestData[i * 6 + 3], 339 gfx::Vector3dF lid(kAccelerometerLaptopModeTestData[i * 6 + 3],
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
440 // Open 90 degrees. 410 // Open 90 degrees.
441 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f)); 411 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
442 EXPECT_FALSE(IsMaximizeModeStarted()); 412 EXPECT_FALSE(IsMaximizeModeStarted());
443 413
444 // Send an update that would not relaunch MaximizeMode. 90 degrees. 414 // Send an update that would not relaunch MaximizeMode. 90 degrees.
445 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f)); 415 TriggerAccelerometerUpdate(base, gfx::Vector3dF(-1.0f, 0.0f, 0.0f));
446 EXPECT_FALSE(maximize_mode_controller()->rotation_locked()); 416 EXPECT_FALSE(maximize_mode_controller()->rotation_locked());
447 } 417 }
448 418
449 } // namespace ash 419 } // namespace ash
OLDNEW
« no previous file with comments | « trunk/src/ash/test/test_volume_control_delegate.cc ('k') | trunk/src/ash/wm/maximize_mode/maximize_mode_event_blocker.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698