OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "ui/events/cocoa/cocoa_event_utils.h" | |
6 | |
7 #import <objc/objc-class.h> | |
8 | |
9 #include "testing/gtest/include/gtest/gtest.h" | |
10 #include "testing/platform_test.h" | |
11 #include "ui/events/event_constants.h" | |
12 #include "ui/events/event_utils.h" | |
13 #import "ui/events/test/cocoa_test_event_utils.h" | |
14 #import "ui/gfx/test/ui_cocoa_test_helper.h" | |
15 | |
16 namespace ui { | |
17 | |
18 namespace { | |
19 | |
20 class CocoaEventUtilsTest : public CocoaTest { | |
21 }; | |
22 | |
23 TEST_F(CocoaEventUtilsTest, EventFlagsFromNative) { | |
24 // Left click. | |
25 NSEvent* left = cocoa_test_event_utils::MouseEventWithType(NSLeftMouseUp, 0); | |
26 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON, EventFlagsFromNative(left)); | |
27 | |
28 // Right click. | |
29 NSEvent* right = cocoa_test_event_utils::MouseEventWithType(NSRightMouseUp, | |
30 0); | |
31 EXPECT_EQ(EF_RIGHT_MOUSE_BUTTON, EventFlagsFromNative(right)); | |
32 | |
33 // Middle click. | |
34 NSEvent* middle = cocoa_test_event_utils::MouseEventWithType(NSOtherMouseUp, | |
35 0); | |
36 EXPECT_EQ(EF_MIDDLE_MOUSE_BUTTON, EventFlagsFromNative(middle)); | |
37 | |
38 // Caps + Left | |
39 NSEvent* caps = cocoa_test_event_utils::MouseEventWithType( | |
40 NSLeftMouseUp, NSAlphaShiftKeyMask); | |
41 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_CAPS_LOCK_DOWN, | |
42 EventFlagsFromNative(caps)); | |
43 | |
44 // Shift + Left | |
45 NSEvent* shift = cocoa_test_event_utils::MouseEventWithType(NSLeftMouseUp, | |
46 NSShiftKeyMask); | |
47 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_SHIFT_DOWN, EventFlagsFromNative(shift)); | |
48 | |
49 // Ctrl + Left | |
50 NSEvent* ctrl = cocoa_test_event_utils::MouseEventWithType(NSLeftMouseUp, | |
51 NSControlKeyMask); | |
52 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_CONTROL_DOWN, EventFlagsFromNative(ctrl)); | |
53 | |
54 // Alt + Left | |
55 NSEvent* alt = cocoa_test_event_utils::MouseEventWithType(NSLeftMouseUp, | |
56 NSAlternateKeyMask); | |
57 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_ALT_DOWN, EventFlagsFromNative(alt)); | |
58 | |
59 // Cmd + Left | |
60 NSEvent* cmd = cocoa_test_event_utils::MouseEventWithType(NSLeftMouseUp, | |
61 NSCommandKeyMask); | |
62 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_COMMAND_DOWN, EventFlagsFromNative(cmd)); | |
63 | |
64 // Shift + Ctrl + Left | |
65 NSEvent* shiftctrl = cocoa_test_event_utils::MouseEventWithType( | |
66 NSLeftMouseUp, NSShiftKeyMask | NSControlKeyMask); | |
67 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_SHIFT_DOWN | EF_CONTROL_DOWN, | |
68 EventFlagsFromNative(shiftctrl)); | |
69 | |
70 // Cmd + Alt + Right | |
71 NSEvent* cmdalt = cocoa_test_event_utils::MouseEventWithType( | |
72 NSLeftMouseUp, NSCommandKeyMask | NSAlternateKeyMask); | |
73 EXPECT_EQ(EF_LEFT_MOUSE_BUTTON | EF_COMMAND_DOWN | EF_ALT_DOWN, | |
74 EventFlagsFromNative(cmdalt)); | |
75 } | |
76 | |
77 } // namespace | |
78 | |
79 } // namespace ui | |
OLD | NEW |