blob: 5a305450d1c4d99285ba40c0229b71521e9b675e [file] [log] [blame]
/*
* Copyright (c) 2017 Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/ztest.h>
extern void test_poll_no_wait(void);
extern void test_poll_wait(void);
extern void test_poll_zero_events(void);
extern void test_poll_cancel_main_low_prio(void);
extern void test_poll_cancel_main_high_prio(void);
extern void test_poll_multi(void);
extern void test_poll_threadstate(void);
extern void test_poll_grant_access(void);
extern void test_poll_fail_grant_access(void);
extern void test_detect_is_polling(void);
#ifdef CONFIG_USERSPACE
extern void test_k_poll_user_num_err(void);
extern void test_k_poll_user_mem_err(void);
extern void test_k_poll_user_type_sem_err(void);
extern void test_k_poll_user_type_signal_err(void);
extern void test_k_poll_user_type_fifo_err(void);
extern void test_k_poll_user_type_msgq_err(void);
extern void test_poll_signal_init_null(void);
extern void test_poll_signal_check_obj(void);
extern void test_poll_signal_check_signal(void);
extern void test_poll_signal_check_result(void);
extern void test_poll_signal_raise_null(void);
extern void test_poll_signal_reset_null(void);
#else
#define dummy_test(_name) \
static void _name(void) \
{ \
ztest_test_skip(); \
}
dummy_test(test_k_poll_user_num_err);
dummy_test(test_k_poll_user_mem_err);
dummy_test(test_k_poll_user_type_sem_err);
dummy_test(test_k_poll_user_type_signal_err);
dummy_test(test_k_poll_user_type_fifo_err);
dummy_test(test_k_poll_user_type_msgq_err);
dummy_test(test_poll_signal_init_null);
dummy_test(test_poll_signal_check_obj);
dummy_test(test_poll_signal_check_signal);
dummy_test(test_poll_signal_check_result);
dummy_test(test_poll_signal_raise_null);
dummy_test(test_poll_signal_reset_null);
#endif /* CONFIG_USERSPACE */
#ifdef CONFIG_64BIT
#define MAX_SZ 256
#else
#define MAX_SZ 128
#endif
K_HEAP_DEFINE(test_heap, MAX_SZ * 4);
/*test case main entry*/
void test_main(void)
{
test_poll_grant_access();
test_poll_fail_grant_access();
k_thread_heap_assign(k_current_get(), &test_heap);
ztest_test_suite(poll_api,
ztest_1cpu_user_unit_test(test_poll_no_wait),
ztest_1cpu_unit_test(test_poll_wait),
ztest_1cpu_unit_test(test_poll_zero_events),
ztest_1cpu_unit_test(test_poll_cancel_main_low_prio),
ztest_1cpu_unit_test(test_poll_cancel_main_high_prio),
ztest_unit_test(test_poll_multi),
ztest_1cpu_unit_test(test_poll_threadstate),
ztest_1cpu_unit_test(test_detect_is_polling),
ztest_user_unit_test(test_k_poll_user_num_err),
ztest_user_unit_test(test_k_poll_user_mem_err),
ztest_user_unit_test(test_k_poll_user_type_sem_err),
ztest_user_unit_test(test_k_poll_user_type_signal_err),
ztest_user_unit_test(test_k_poll_user_type_fifo_err),
ztest_user_unit_test(test_k_poll_user_type_msgq_err),
ztest_user_unit_test(test_poll_signal_init_null),
ztest_user_unit_test(test_poll_signal_check_obj),
ztest_user_unit_test(test_poll_signal_check_signal),
ztest_user_unit_test(test_poll_signal_check_result),
ztest_user_unit_test(test_poll_signal_raise_null),
ztest_user_unit_test(test_poll_signal_reset_null)
);
ztest_run_test_suite(poll_api);
}