~ubuntu-branches/ubuntu/wily/mir/wily-proposed

« back to all changes in this revision

Viewing changes to tests/unit-tests/input/test_event_builders.cpp

  • Committer: Package Import Robot
  • Author(s): CI Train Bot
  • Date: 2015-05-12 13:12:55 UTC
  • mto: This revision was merged to the branch mainline in revision 96.
  • Revision ID: package-import@ubuntu.com-20150512131255-y7z12i8n4pbvo70x
Tags: upstream-0.13.0+15.10.20150512
ImportĀ upstreamĀ versionĀ 0.13.0+15.10.20150512

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 * Authored by: Robert Carr <robert.carr@canonical.com>
17
17
 */
18
18
 
19
 
#define MIR_INCLUDE_DEPRECATED_EVENT_HEADER
20
 
 
21
19
#include "mir/events/event_builders.h"
22
20
 
23
21
#include <gtest/gtest.h>
36
34
 
37
35
TEST_F(InputEventBuilder, makes_valid_key_event)
38
36
{
39
 
    MirKeyInputEventAction const action = mir_key_input_event_action_down;
 
37
    MirKeyboardAction const action = mir_keyboard_action_down;
40
38
    xkb_keysym_t const key_code = 34;
41
39
    int const scan_code = 17;
42
40
 
47
45
   EXPECT_EQ(mir_event_type_input, mir_event_get_type(e));
48
46
   auto ie = mir_event_get_input_event(e);
49
47
   EXPECT_EQ(mir_input_event_type_key, mir_input_event_get_type(ie));
50
 
   auto kev = mir_input_event_get_key_input_event(ie);
51
 
   EXPECT_EQ(action, mir_key_input_event_get_action(kev));
52
 
   EXPECT_EQ(key_code, mir_key_input_event_get_key_code(kev));
53
 
   EXPECT_EQ(scan_code, mir_key_input_event_get_scan_code(kev));
54
 
   EXPECT_EQ(modifiers, mir_key_input_event_get_modifiers(kev));
 
48
   auto kev = mir_input_event_get_keyboard_event(ie);
 
49
   EXPECT_EQ(action, mir_keyboard_event_action(kev));
 
50
   EXPECT_EQ(key_code, mir_keyboard_event_key_code(kev));
 
51
   EXPECT_EQ(scan_code, mir_keyboard_event_scan_code(kev));
 
52
   EXPECT_EQ(modifiers, mir_keyboard_event_modifiers(kev));
55
53
}
56
54
 
57
55
 
58
56
TEST_F(InputEventBuilder, makes_valid_touch_event)
59
57
{
60
58
    unsigned touch_count = 3;
61
 
    MirTouchInputEventTouchId touch_ids[] = {7, 9, 4};
62
 
    MirTouchInputEventTouchAction actions[] = { mir_touch_input_event_action_up, mir_touch_input_event_action_change, mir_touch_input_event_action_change};
63
 
    MirTouchInputEventTouchTooltype tooltypes[] = {mir_touch_input_tool_type_unknown, mir_touch_input_tool_type_finger, mir_touch_input_tool_type_stylus};
 
59
    MirTouchId touch_ids[] = {7, 9, 4};
 
60
    MirTouchAction actions[] = { mir_touch_action_up, mir_touch_action_change, mir_touch_action_change};
 
61
    MirTouchTooltype tooltypes[] = {mir_touch_tooltype_unknown, mir_touch_tooltype_finger, mir_touch_tooltype_stylus};
64
62
    float x_axis_values[] = { 7, 14.3, 19.6 };
65
63
    float y_axis_values[] = { 3, 9, 11 };
66
64
    float pressure_values[] = {3, 9, 14.6};
80
78
   EXPECT_EQ(mir_event_type_input, mir_event_get_type(e));
81
79
   auto ie = mir_event_get_input_event(e);
82
80
   EXPECT_EQ(mir_input_event_type_touch, mir_input_event_get_type(ie));
83
 
   auto tev = mir_input_event_get_touch_input_event(ie);
84
 
   EXPECT_EQ(modifiers, mir_touch_input_event_get_modifiers(tev));
85
 
   EXPECT_EQ(touch_count, mir_touch_input_event_get_touch_count(tev));
 
81
   auto tev = mir_input_event_get_touch_event(ie);
 
82
   EXPECT_EQ(modifiers, mir_touch_event_modifiers(tev));
 
83
   EXPECT_EQ(touch_count, mir_touch_event_point_count(tev));
86
84
 
87
85
   for (unsigned i = 0; i < touch_count; i++)
88
86
   {
89
 
       EXPECT_EQ(touch_ids[i], mir_touch_input_event_get_touch_id(tev, i));
90
 
       EXPECT_EQ(actions[i], mir_touch_input_event_get_touch_action(tev, i));
91
 
       EXPECT_EQ(tooltypes[i], mir_touch_input_event_get_touch_tooltype(tev, i));
92
 
       EXPECT_EQ(x_axis_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_x));
93
 
       EXPECT_EQ(y_axis_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_y));
94
 
       EXPECT_EQ(pressure_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_pressure));
95
 
       EXPECT_EQ(touch_major_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_touch_major));
96
 
       EXPECT_EQ(touch_minor_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_touch_minor));
97
 
       EXPECT_EQ(size_values[i], mir_touch_input_event_get_touch_axis_value(tev, i, mir_touch_input_axis_size));
 
87
       EXPECT_EQ(touch_ids[i], mir_touch_event_id(tev, i));
 
88
       EXPECT_EQ(actions[i], mir_touch_event_action(tev, i));
 
89
       EXPECT_EQ(tooltypes[i], mir_touch_event_tooltype(tev, i));
 
90
       EXPECT_EQ(x_axis_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_x));
 
91
       EXPECT_EQ(y_axis_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_y));
 
92
       EXPECT_EQ(pressure_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_pressure));
 
93
       EXPECT_EQ(touch_major_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_touch_major));
 
94
       EXPECT_EQ(touch_minor_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_touch_minor));
 
95
       EXPECT_EQ(size_values[i], mir_touch_event_axis_value(tev, i, mir_touch_axis_size));
98
96
   }   
99
97
}
100
98
 
101
99
TEST_F(InputEventBuilder, makes_valid_pointer_event)
102
100
{
103
 
    MirPointerInputEventAction action = mir_pointer_input_event_action_enter;
104
 
    std::vector<MirPointerInputEventButton> depressed_buttons = 
105
 
        {mir_pointer_input_button_back, mir_pointer_input_button_tertiary};
 
101
    MirPointerAction action = mir_pointer_action_enter;
 
102
    std::vector<MirPointerButton> depressed_buttons = 
 
103
        {mir_pointer_button_back, mir_pointer_button_tertiary};
106
104
    float x_axis_value = 3.9, y_axis_value = 7.4, hscroll_value = .9, vscroll_value = .3;
107
105
    auto ev = mev::make_event(device_id, timestamp, modifiers, 
108
106
        action, depressed_buttons, x_axis_value, y_axis_value, hscroll_value, vscroll_value);
111
109
    EXPECT_EQ(mir_event_type_input, mir_event_get_type(e));
112
110
    auto ie = mir_event_get_input_event(e);
113
111
    EXPECT_EQ(mir_input_event_type_pointer, mir_input_event_get_type(ie));
114
 
    auto pev = mir_input_event_get_pointer_input_event(ie);
115
 
    EXPECT_EQ(modifiers, mir_pointer_input_event_get_modifiers(pev));
116
 
    EXPECT_EQ(action, mir_pointer_input_event_get_action(pev));
117
 
    EXPECT_TRUE(mir_pointer_input_event_get_button_state(pev, mir_pointer_input_button_back));
118
 
    EXPECT_TRUE(mir_pointer_input_event_get_button_state(pev, mir_pointer_input_button_tertiary));
119
 
    EXPECT_FALSE(mir_pointer_input_event_get_button_state(pev, mir_pointer_input_button_primary));
120
 
    EXPECT_FALSE(mir_pointer_input_event_get_button_state(pev, mir_pointer_input_button_secondary));
121
 
    EXPECT_FALSE(mir_pointer_input_event_get_button_state(pev, mir_pointer_input_button_forward));
122
 
    EXPECT_EQ(x_axis_value, mir_pointer_input_event_get_axis_value(pev, mir_pointer_input_axis_x));
123
 
    EXPECT_EQ(y_axis_value, mir_pointer_input_event_get_axis_value(pev, mir_pointer_input_axis_y));
124
 
    EXPECT_EQ(hscroll_value, mir_pointer_input_event_get_axis_value(pev, mir_pointer_input_axis_hscroll));
125
 
    EXPECT_EQ(vscroll_value, mir_pointer_input_event_get_axis_value(pev, mir_pointer_input_axis_vscroll));
 
112
    auto pev = mir_input_event_get_pointer_event(ie);
 
113
    EXPECT_EQ(modifiers, mir_pointer_event_modifiers(pev));
 
114
    EXPECT_EQ(action, mir_pointer_event_action(pev));
 
115
    EXPECT_TRUE(mir_pointer_event_button_state(pev, mir_pointer_button_back));
 
116
    EXPECT_TRUE(mir_pointer_event_button_state(pev, mir_pointer_button_tertiary));
 
117
    EXPECT_FALSE(mir_pointer_event_button_state(pev, mir_pointer_button_primary));
 
118
    EXPECT_FALSE(mir_pointer_event_button_state(pev, mir_pointer_button_secondary));
 
119
    EXPECT_FALSE(mir_pointer_event_button_state(pev, mir_pointer_button_forward));
 
120
    EXPECT_EQ(x_axis_value, mir_pointer_event_axis_value(pev, mir_pointer_axis_x));
 
121
    EXPECT_EQ(y_axis_value, mir_pointer_event_axis_value(pev, mir_pointer_axis_y));
 
122
    EXPECT_EQ(hscroll_value, mir_pointer_event_axis_value(pev, mir_pointer_axis_hscroll));
 
123
    EXPECT_EQ(vscroll_value, mir_pointer_event_axis_value(pev, mir_pointer_axis_vscroll));
126
124
}