summaryrefslogtreecommitdiff
path: root/test/litest.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/litest.c')
-rw-r--r--test/litest.c43
1 files changed, 41 insertions, 2 deletions
diff --git a/test/litest.c b/test/litest.c
index 0ff9d1e3..792b0a54 100644
--- a/test/litest.c
+++ b/test/litest.c
@@ -2901,10 +2901,23 @@ auto_assign_pad_value(struct litest_device *dev,
{
const struct input_absinfo *abs;
- if (ev->value != LITEST_AUTO_ASSIGN ||
- ev->type != EV_ABS)
+ if (ev->value != LITEST_AUTO_ASSIGN)
return value;
+ if (ev->type == EV_REL) {
+ switch (ev->code) {
+ case REL_WHEEL:
+ case REL_HWHEEL:
+ case REL_DIAL:
+ assert (fmod(value, 120.0) == 0.0); /* Fractions not supported yet */
+ return value/120.0;
+ default:
+ return value;
+ }
+ } else if (ev->type != EV_ABS) {
+ return value;
+ }
+
abs = libevdev_get_abs_info(dev->evdev, ev->code);
litest_assert_notnull(abs);
@@ -3213,6 +3226,9 @@ litest_event_type_str(enum libinput_event_type type)
case LIBINPUT_EVENT_TABLET_PAD_KEY:
str = "TABLET PAD KEY";
break;
+ case LIBINPUT_EVENT_TABLET_PAD_DIAL:
+ str = "TABLET PAD DIAL";
+ break;
case LIBINPUT_EVENT_SWITCH_TOGGLE:
str = "SWITCH TOGGLE";
break;
@@ -3314,6 +3330,12 @@ litest_print_event(struct libinput_event *event)
libinput_event_tablet_pad_get_ring_position(pad),
libinput_event_tablet_pad_get_ring_source(pad));
break;
+ case LIBINPUT_EVENT_TABLET_PAD_DIAL:
+ pad = libinput_event_get_tablet_pad_event(event);
+ fprintf(stderr, "dial %d delta %.2f",
+ libinput_event_tablet_pad_get_dial_number(pad),
+ libinput_event_tablet_pad_get_dial_delta_v120(pad));
+ break;
default:
break;
}
@@ -3921,6 +3943,23 @@ litest_is_pad_button_event(struct libinput_event *event,
}
struct libinput_event_tablet_pad *
+litest_is_pad_dial_event(struct libinput_event *event,
+ unsigned int number)
+{
+ struct libinput_event_tablet_pad *p;
+ enum libinput_event_type type = LIBINPUT_EVENT_TABLET_PAD_DIAL;
+
+ litest_assert_ptr_notnull(event);
+ litest_assert_event_type(event, type);
+ p = libinput_event_get_tablet_pad_event(event);
+
+ litest_assert_int_eq(libinput_event_tablet_pad_get_dial_number(p),
+ number);
+
+ return p;
+}
+
+struct libinput_event_tablet_pad *
litest_is_pad_ring_event(struct libinput_event *event,
unsigned int number,
enum libinput_tablet_pad_ring_axis_source source)