#define TEST_DEVICE_NAME "libevdev test device"
+#define add_test(suite, func) do { \
+ TCase *tc = tcase_create(#func); \
+ tcase_add_test(tc, func); \
+ suite_add_tcase(suite, tc); \
+} while(0)
+
#include "test-common-uinput.h"
#define assert_event(e_, t, c, v) \
TEST_SUITE(event_name_suite)
{
Suite *s = suite_create("Context manipulation");
- TCase *tc;
-
- tc = tcase_create("Device info");
- tcase_add_test(tc, test_info);
- tcase_add_test(tc, test_properties);
- tcase_add_test(tc, test_bits);
- tcase_add_test(tc, test_mt_slots_enable_disable);
- tcase_add_test(tc, test_mt_slots_increase_decrease);
- tcase_add_test(tc, test_mt_tracking_id);
- suite_add_tcase(s, tc);
+
+ add_test(s, test_info);
+ add_test(s, test_properties);
+ add_test(s, test_bits);
+ add_test(s, test_mt_slots_enable_disable);
+ add_test(s, test_mt_slots_increase_decrease);
+ add_test(s, test_mt_tracking_id);
return s;
}
{
Suite *s = suite_create("Event codes");
- TCase *tc = tcase_create("type tests");
- tcase_add_test(tc, test_type_names);
- tcase_add_test(tc, test_type_names_invalid);
- tcase_add_test(tc, test_type_name_lookup);
- tcase_add_test(tc, test_type_name_lookup_invalid);
- suite_add_tcase(s, tc);
+ add_test(s, test_type_names);
+ add_test(s, test_type_names_invalid);
+ add_test(s, test_type_name_lookup);
+ add_test(s, test_type_name_lookup_invalid);
- tc = tcase_create("code tests");
- tcase_add_test(tc, test_code_names);
- tcase_add_test(tc, test_code_name_lookup);
- tcase_add_test(tc, test_code_names_invalid);
- tcase_add_test(tc, test_code_name_lookup_invalid);
- tcase_add_test(tc, test_code_names_max);
- suite_add_tcase(s, tc);
+ add_test(s, test_code_names);
+ add_test(s, test_code_name_lookup);
+ add_test(s, test_code_names_invalid);
+ add_test(s, test_code_name_lookup_invalid);
+ add_test(s, test_code_names_max);
- tc = tcase_create("value tests");
- tcase_add_test(tc, test_value_names);
- tcase_add_test(tc, test_value_names_invalid);
- suite_add_tcase(s, tc);
+ add_test(s, test_value_names);
+ add_test(s, test_value_names_invalid);
- tc = tcase_create("property tests");
- tcase_add_test(tc, test_properties);
- tcase_add_test(tc, test_properties_invalid);
- suite_add_tcase(s, tc);
+ add_test(s, test_properties);
+ add_test(s, test_properties_invalid);
return s;
}
{
Suite *s = suite_create("Event names");
- TCase *tc = tcase_create("type limits");
- tcase_add_test(tc, test_limits);
- tcase_add_test(tc, test_event_type_max);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("type names");
- tcase_add_test(tc, test_type_name);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("code names");
- tcase_add_test(tc, test_code_abs_name);
- tcase_add_test(tc, test_code_rel_name);
- tcase_add_test(tc, test_code_key_name);
- tcase_add_test(tc, test_code_led_name);
- tcase_add_test(tc, test_code_snd_name);
- tcase_add_test(tc, test_code_rep_name);
- tcase_add_test(tc, test_code_msc_name);
- tcase_add_test(tc, test_code_sw_name);
- tcase_add_test(tc, test_code_ff_name);
- tcase_add_test(tc, test_code_syn_name);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("value names");
- tcase_add_test(tc, test_value_name);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("prop names");
- tcase_add_test(tc, test_prop_name);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("event values");
- tcase_add_test(tc, test_event_type);
- tcase_add_test(tc, test_event_code);
- suite_add_tcase(s, tc);
+ add_test(s, test_limits);
+ add_test(s, test_event_type_max);
+
+ add_test(s, test_type_name);
+
+ add_test(s, test_code_abs_name);
+ add_test(s, test_code_rel_name);
+ add_test(s, test_code_key_name);
+ add_test(s, test_code_led_name);
+ add_test(s, test_code_snd_name);
+ add_test(s, test_code_rep_name);
+ add_test(s, test_code_msc_name);
+ add_test(s, test_code_sw_name);
+ add_test(s, test_code_ff_name);
+ add_test(s, test_code_syn_name);
+
+ add_test(s, test_value_name);
+ add_test(s, test_prop_name);
+
+ add_test(s, test_event_type);
+ add_test(s, test_event_code);
return s;
}
{
Suite *s = suite_create("kernel");
- TCase *tc = tcase_create("EVIOCREVOKE");
- tcase_add_test(tc, test_revoke);
- tcase_add_test(tc, test_revoke_invalid);
- tcase_add_test(tc, test_revoke_fail_after);
- suite_add_tcase(s, tc);
+ add_test(s, test_revoke);
+ add_test(s, test_revoke_invalid);
+ add_test(s, test_revoke_fail_after);
return s;
}
{
Suite *s = suite_create("libevdev event tests");
- TCase *tc = tcase_create("event polling");
- tcase_add_test(tc, test_next_event);
- tcase_add_test(tc, test_next_event_invalid_fd);
- tcase_add_test(tc, test_next_event_blocking);
- tcase_add_test(tc, test_syn_dropped_event);
- tcase_add_test(tc, test_event_type_filtered);
- tcase_add_test(tc, test_event_code_filtered);
- tcase_add_test(tc, test_has_event_pending);
- tcase_add_test(tc, test_has_event_pending_invalid_fd);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("SYN_DROPPED deltas");
- tcase_add_test(tc, test_syn_delta_button);
- tcase_add_test(tc, test_syn_delta_abs);
- tcase_add_test(tc, test_syn_delta_mt);
- tcase_add_test(tc, test_syn_delta_mt_reset_slot);
- tcase_add_test(tc, test_syn_delta_led);
- tcase_add_test(tc, test_syn_delta_sw);
- tcase_add_test(tc, test_syn_delta_fake_mt);
- tcase_add_test(tc, test_syn_delta_tracking_ids);
- tcase_add_test(tc, test_syn_delta_late_sync);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("skipped syncs");
- tcase_add_test(tc, test_skipped_sync);
- tcase_add_test(tc, test_incomplete_sync);
- tcase_add_test(tc, test_empty_sync);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("event values");
- tcase_add_test(tc, test_event_values);
- tcase_add_test(tc, test_event_values_invalid);
- tcase_add_test(tc, test_mt_event_values);
- tcase_add_test(tc, test_mt_event_values_invalid);
- tcase_add_test(tc, test_mt_slot_ranges_invalid);
- tcase_add_test(tc, test_mt_tracking_id_discard);
- tcase_add_test(tc, test_mt_tracking_id_discard_neg_1);
- tcase_add_test(tc, test_ev_rep_values);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("event value setters");
- tcase_add_test(tc, test_event_value_setters);
- tcase_add_test(tc, test_event_value_setters_invalid);
- tcase_add_test(tc, test_event_mt_value_setters);
- tcase_add_test(tc, test_event_mt_value_setters_invalid);
- tcase_add_test(tc, test_event_mt_value_setters_current_slot);
- suite_add_tcase(s, tc);
+ add_test(s, test_next_event);
+ add_test(s, test_next_event_invalid_fd);
+ add_test(s, test_next_event_blocking);
+ add_test(s, test_syn_dropped_event);
+ add_test(s, test_event_type_filtered);
+ add_test(s, test_event_code_filtered);
+ add_test(s, test_has_event_pending);
+ add_test(s, test_has_event_pending_invalid_fd);
+
+ add_test(s, test_syn_delta_button);
+ add_test(s, test_syn_delta_abs);
+ add_test(s, test_syn_delta_mt);
+ add_test(s, test_syn_delta_mt_reset_slot);
+ add_test(s, test_syn_delta_led);
+ add_test(s, test_syn_delta_sw);
+ add_test(s, test_syn_delta_fake_mt);
+ add_test(s, test_syn_delta_late_sync);
+ add_test(s, test_syn_delta_tracking_ids);
+
+ add_test(s, test_skipped_sync);
+ add_test(s, test_incomplete_sync);
+ add_test(s, test_empty_sync);
+
+ add_test(s, test_event_values);
+ add_test(s, test_event_values_invalid);
+ add_test(s, test_mt_event_values);
+ add_test(s, test_mt_event_values_invalid);
+ add_test(s, test_mt_slot_ranges_invalid);
+ add_test(s, test_mt_tracking_id_discard);
+ add_test(s, test_mt_tracking_id_discard_neg_1);
+ add_test(s, test_ev_rep_values);
+
+ add_test(s, test_event_value_setters);
+ add_test(s, test_event_value_setters_invalid);
+ add_test(s, test_event_mt_value_setters);
+ add_test(s, test_event_mt_value_setters_invalid);
+ add_test(s, test_event_mt_value_setters_current_slot);
return s;
}
{
Suite *s = suite_create("libevdev_has_event tests");
- TCase *tc = tcase_create("event type");
- tcase_add_test(tc, test_ev_bit_limits);
- tcase_add_test(tc, test_has_ev_bit);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("event codes");
- tcase_add_test(tc, test_event_codes);
- tcase_add_test(tc, test_event_code_limits);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("ev_rep");
- tcase_add_test(tc, test_ev_rep);
- tcase_add_test(tc, test_ev_rep_values);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("input properties");
- tcase_add_test(tc, test_input_props);
- tcase_add_test(tc, test_set_input_props);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("multitouch info");
- tcase_add_test(tc, test_no_slots);
- tcase_add_test(tc, test_slot_number);
- tcase_add_test(tc, test_slot_init_value);
- tcase_add_test(tc, test_invalid_mt_device);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device info");
- tcase_add_test(tc, test_device_name);
- tcase_add_test(tc, test_device_set_name);
- tcase_add_test(tc, test_device_set_ids);
- tcase_add_test(tc, test_device_get_abs_info);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device bit manipulation");
- tcase_add_test(tc, test_device_set_abs);
- tcase_add_test(tc, test_device_enable_bit);
- tcase_add_test(tc, test_device_enable_bit_invalid);
- tcase_add_test(tc, test_device_disable_bit);
- tcase_add_test(tc, test_device_disable_bit_invalid);
- tcase_add_test(tc, test_device_kernel_change_axis);
- tcase_add_test(tc, test_device_kernel_change_axis_invalid);
- tcase_add_test(tc, test_device_kernel_set_abs_invalid_fd);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("led manipulation");
- tcase_add_test(tc, test_led_valid);
- tcase_add_test(tc, test_led_invalid);
- tcase_add_test(tc, test_led_same);
- suite_add_tcase(s, tc);
+ add_test(s, test_ev_bit_limits);
+ add_test(s, test_has_ev_bit);
+
+ add_test(s, test_event_codes);
+ add_test(s, test_event_code_limits);
+
+ add_test(s, test_ev_rep);
+ add_test(s, test_ev_rep_values);
+
+ add_test(s, test_input_props);
+ add_test(s, test_set_input_props);
+
+ add_test(s, test_no_slots);
+ add_test(s, test_slot_number);
+ add_test(s, test_slot_init_value);
+ add_test(s, test_invalid_mt_device);
+
+ add_test(s, test_device_name);
+ add_test(s, test_device_set_name);
+ add_test(s, test_device_set_ids);
+ add_test(s, test_device_get_abs_info);
+
+ add_test(s, test_device_set_abs);
+ add_test(s, test_device_enable_bit);
+ add_test(s, test_device_enable_bit_invalid);
+ add_test(s, test_device_disable_bit);
+ add_test(s, test_device_disable_bit_invalid);
+ add_test(s, test_device_kernel_change_axis);
+ add_test(s, test_device_kernel_change_axis_invalid);
+ add_test(s, test_device_kernel_set_abs_invalid_fd);
+
+ add_test(s, test_led_valid);
+ add_test(s, test_led_invalid);
+ add_test(s, test_led_same);
return s;
}
{
Suite *s = suite_create("libevdev init tests");
- TCase *tc = tcase_create("device init");
- tcase_add_test(tc, test_new_device);
- tcase_add_test(tc, test_free_device);
- tcase_add_test(tc, test_init_from_invalid_fd);
- tcase_add_test(tc, test_init_and_change_fd);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("log init");
- tcase_add_test(tc, test_log_init);
- tcase_add_test(tc, test_log_priority);
- tcase_add_test(tc, test_log_set_get_priority);
- tcase_add_test(tc, test_log_default_priority);
- tcase_add_test(tc, test_log_data);
- tcase_add_test(tc, test_device_log_init);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device fd init");
- tcase_add_test(tc, test_device_init);
- tcase_add_test(tc, test_device_init_from_fd);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device grab");
- tcase_add_test(tc, test_device_grab);
- tcase_add_test(tc, test_device_grab_invalid_fd);
- tcase_add_test(tc, test_device_grab_change_fd);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("clock id");
- tcase_add_test(tc, test_set_clock_id);
- tcase_add_test(tc, test_set_clock_id_invalid_fd);
- tcase_add_test(tc, test_clock_id_events);
- suite_add_tcase(s, tc);
+ add_test(s, test_new_device);
+ add_test(s, test_free_device);
+ add_test(s, test_init_from_invalid_fd);
+ add_test(s, test_init_and_change_fd);
+
+ add_test(s, test_log_init);
+ add_test(s, test_log_priority);
+ add_test(s, test_log_set_get_priority);
+ add_test(s, test_log_default_priority);
+ add_test(s, test_log_data);
+ add_test(s, test_device_log_init);
+
+ add_test(s, test_device_init);
+ add_test(s, test_device_init_from_fd);
+
+ add_test(s, test_device_grab);
+ add_test(s, test_device_grab_invalid_fd);
+ add_test(s, test_device_grab_change_fd);
+
+ add_test(s, test_set_clock_id);
+ add_test(s, test_set_clock_id_invalid_fd);
+ add_test(s, test_clock_id_events);
return s;
}
{
Suite *s = suite_create("libevdev uinput device tests");
- TCase *tc = tcase_create("device creation");
- tcase_add_test(tc, test_uinput_create_device);
- tcase_add_test(tc, test_uinput_create_device_invalid);
- tcase_add_test(tc, test_uinput_create_device_from_fd);
- tcase_add_test(tc, test_uinput_check_syspath_time);
- tcase_add_test(tc, test_uinput_check_syspath_name);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device events");
- tcase_add_test(tc, test_uinput_events);
- suite_add_tcase(s, tc);
-
- tc = tcase_create("device properties");
- tcase_add_test(tc, test_uinput_properties);
- suite_add_tcase(s, tc);
+ add_test(s, test_uinput_create_device);
+ add_test(s, test_uinput_create_device_invalid);
+ add_test(s, test_uinput_create_device_from_fd);
+ add_test(s, test_uinput_check_syspath_time);
+ add_test(s, test_uinput_check_syspath_name);
+
+ add_test(s, test_uinput_events);
+
+ add_test(s, test_uinput_properties);
return s;
}