|
Packit Service |
b8eee4 |
/*
|
|
Packit Service |
b8eee4 |
* Copyright © 2013 Red Hat, Inc.
|
|
Packit Service |
b8eee4 |
*
|
|
Packit Service |
b8eee4 |
* Permission to use, copy, modify, distribute, and sell this software and its
|
|
Packit Service |
b8eee4 |
* documentation for any purpose is hereby granted without fee, provided that
|
|
Packit Service |
b8eee4 |
* the above copyright notice appear in all copies and that both that copyright
|
|
Packit Service |
b8eee4 |
* notice and this permission notice appear in supporting documentation, and
|
|
Packit Service |
b8eee4 |
* that the name of the copyright holders not be used in advertising or
|
|
Packit Service |
b8eee4 |
* publicity pertaining to distribution of the software without specific,
|
|
Packit Service |
b8eee4 |
* written prior permission. The copyright holders make no representations
|
|
Packit Service |
b8eee4 |
* about the suitability of this software for any purpose. It is provided "as
|
|
Packit Service |
b8eee4 |
* is" without express or implied warranty.
|
|
Packit Service |
b8eee4 |
*
|
|
Packit Service |
b8eee4 |
* THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
|
Packit Service |
b8eee4 |
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
|
Packit Service |
b8eee4 |
* EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
|
Packit Service |
b8eee4 |
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
|
Packit Service |
b8eee4 |
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
Packit Service |
b8eee4 |
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
|
|
Packit Service |
b8eee4 |
* OF THIS SOFTWARE.
|
|
Packit Service |
b8eee4 |
*/
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#include <config.h>
|
|
Packit Service |
b8eee4 |
#include <libevdev/libevdev.h>
|
|
Packit Service |
b8eee4 |
#include <stdbool.h>
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#include <check.h>
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#ifndef _TEST_COMMON_H_
|
|
Packit Service |
b8eee4 |
#define _TEST_COMMON_H_
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
struct libevdev_test {
|
|
Packit Service |
b8eee4 |
const char *name;
|
|
Packit Service |
b8eee4 |
Suite* (*setup)(void);
|
|
Packit Service |
b8eee4 |
bool needs_root_privileges;
|
|
Packit Service |
b8eee4 |
} __attribute__((aligned(16)));
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#define _TEST_SUITE(name, root_privs) \
|
|
Packit Service |
b8eee4 |
static Suite* (name##_setup)(void); \
|
|
Packit Service |
b8eee4 |
static const struct libevdev_test _test \
|
|
Packit Service |
b8eee4 |
__attribute__((used)) \
|
|
Packit Service |
b8eee4 |
__attribute__((section ("test_section"))) = { \
|
|
Packit Service |
b8eee4 |
#name, name##_setup, root_privs \
|
|
Packit Service |
b8eee4 |
}; \
|
|
Packit Service |
b8eee4 |
static Suite* (name##_setup)(void)
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#define TEST_SUITE(name) \
|
|
Packit Service |
b8eee4 |
_TEST_SUITE(name, false)
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#define TEST_SUITE_ROOT_PRIVILEGES(name) \
|
|
Packit Service |
b8eee4 |
_TEST_SUITE(name, true)
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#define TEST_DEVICE_NAME "libevdev test device"
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
#include "test-common-uinput.h"
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
void test_create_device(struct uinput_device **uidev,
|
|
Packit Service |
b8eee4 |
struct libevdev **dev,
|
|
Packit Service |
b8eee4 |
...);
|
|
Packit Service |
b8eee4 |
void test_create_abs_device(struct uinput_device **uidev,
|
|
Packit Service |
b8eee4 |
struct libevdev **dev,
|
|
Packit Service |
b8eee4 |
int nabs,
|
|
Packit Service |
b8eee4 |
const struct input_absinfo *abs,
|
|
Packit Service |
b8eee4 |
...);
|
|
Packit Service |
b8eee4 |
|
|
Packit Service |
b8eee4 |
void test_logfunc_abort_on_error(enum libevdev_log_priority priority,
|
|
Packit Service |
b8eee4 |
void *data,
|
|
Packit Service |
b8eee4 |
const char *file, int line,
|
|
Packit Service |
b8eee4 |
const char *func,
|
|
Packit Service |
b8eee4 |
const char *format, va_list args);
|
|
Packit Service |
b8eee4 |
void test_logfunc_ignore_error(enum libevdev_log_priority priority,
|
|
Packit Service |
b8eee4 |
void *data,
|
|
Packit Service |
b8eee4 |
const char *file, int line,
|
|
Packit Service |
b8eee4 |
const char *func,
|
|
Packit Service |
b8eee4 |
const char *format, va_list args);
|
|
Packit Service |
b8eee4 |
#endif /* _TEST_COMMON_H_ */
|