test: add tests for new valuator mask features
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
da10d0cb42
commit
ad02d0df75
63
test/input.c
63
test/input.c
|
@ -1357,6 +1357,68 @@ dix_valuator_mode(void)
|
|||
assert(valuator_get_mode(&dev, i) == Relative);
|
||||
}
|
||||
|
||||
static void
|
||||
dix_input_valuator_masks_unaccel(void)
|
||||
{
|
||||
ValuatorMask *mask = NULL;
|
||||
double x, ux;
|
||||
|
||||
/* set mask normally */
|
||||
mask = valuator_mask_new(MAX_VALUATORS);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
valuator_mask_set_double(mask, 0, 1.0);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
valuator_mask_unset(mask, 0);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
|
||||
/* all unset, now set accel mask */
|
||||
valuator_mask_set_unaccelerated(mask, 0, 1.0, 2.0);
|
||||
assert(valuator_mask_has_unaccelerated(mask));
|
||||
assert(valuator_mask_isset(mask, 0));
|
||||
assert(!valuator_mask_isset(mask, 1));
|
||||
assert(valuator_mask_get_accelerated(mask, 0) == 1.0);
|
||||
assert(valuator_mask_get_unaccelerated(mask, 0) == 2.0);
|
||||
assert(valuator_mask_fetch_unaccelerated(mask, 0, &x, &ux));
|
||||
assert(x == 1.0);
|
||||
assert(ux == 2.0);
|
||||
x = 0xff;
|
||||
ux = 0xfe;
|
||||
assert(!valuator_mask_fetch_unaccelerated(mask, 1, &x, &ux));
|
||||
assert(x == 0xff);
|
||||
assert(ux == 0xfe);
|
||||
|
||||
/* all unset, now set normally again */
|
||||
valuator_mask_unset(mask, 0);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
assert(!valuator_mask_isset(mask, 0));
|
||||
valuator_mask_set_double(mask, 0, 1.0);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
valuator_mask_unset(mask, 0);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
|
||||
valuator_mask_zero(mask);
|
||||
assert(!valuator_mask_has_unaccelerated(mask));
|
||||
|
||||
valuator_mask_set_unaccelerated(mask, 0, 1.0, 2.0);
|
||||
valuator_mask_set_unaccelerated(mask, 1, 3.0, 4.5);
|
||||
assert(valuator_mask_isset(mask, 0));
|
||||
assert(valuator_mask_isset(mask, 1));
|
||||
assert(!valuator_mask_isset(mask, 2));
|
||||
assert(valuator_mask_has_unaccelerated(mask));
|
||||
assert(valuator_mask_get_accelerated(mask, 0) == 1.0);
|
||||
assert(valuator_mask_get_accelerated(mask, 1) == 3.0);
|
||||
assert(valuator_mask_get_unaccelerated(mask, 0) == 2.0);
|
||||
assert(valuator_mask_get_unaccelerated(mask, 1) == 4.5);
|
||||
assert(valuator_mask_fetch_unaccelerated(mask, 0, &x, &ux));
|
||||
assert(x == 1.0);
|
||||
assert(ux == 2.0);
|
||||
assert(valuator_mask_fetch_unaccelerated(mask, 1, &x, &ux));
|
||||
assert(x == 3.0);
|
||||
assert(ux == 4.5);
|
||||
|
||||
valuator_mask_free(&mask);
|
||||
}
|
||||
|
||||
static void
|
||||
include_bit_test_macros(void)
|
||||
{
|
||||
|
@ -1847,6 +1909,7 @@ main(int argc, char **argv)
|
|||
dix_enqueue_events();
|
||||
dix_double_fp_conversion();
|
||||
dix_input_valuator_masks();
|
||||
dix_input_valuator_masks_unaccel();
|
||||
dix_input_attributes();
|
||||
dix_init_valuators();
|
||||
dix_event_to_core_conversion();
|
||||
|
|
Loading…
Reference in New Issue
Block a user