tests: work_queue: add a test case for coverage
Add a test case for k_work_poll_cancel() API. Signed-off-by: Lixin Guo <lixinx.guo@intel.com>
This commit is contained in:
parent
e501c4a21a
commit
21e1e8cf23
1 changed files with 36 additions and 1 deletions
|
@ -722,6 +722,40 @@ void test_delayed_work_define(void)
|
||||||
sizeof(struct k_delayed_work), NULL);
|
sizeof(struct k_delayed_work), NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Verify k_work_poll_cancel()
|
||||||
|
*
|
||||||
|
* @ingroup kernel_workqueue_tests
|
||||||
|
*
|
||||||
|
* @details Cancel a triggered work item repeatedly,
|
||||||
|
* see if it returns expected value.
|
||||||
|
*
|
||||||
|
* @see k_work_poll_cancel()
|
||||||
|
*/
|
||||||
|
static void test_triggered_cancel(void)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
TC_PRINT("Starting triggered test\n");
|
||||||
|
|
||||||
|
/* As work items are triggered, they should indicate an event. */
|
||||||
|
expected_poll_result = 0;
|
||||||
|
|
||||||
|
TC_PRINT(" - Initializing triggered test items\n");
|
||||||
|
test_triggered_init();
|
||||||
|
|
||||||
|
test_triggered_submit(K_FOREVER);
|
||||||
|
|
||||||
|
ret = k_work_poll_cancel(&triggered_tests[0].work);
|
||||||
|
zassert_true(ret == 0, "triggered cancel failed");
|
||||||
|
|
||||||
|
ret = k_work_poll_cancel(&triggered_tests[0].work);
|
||||||
|
zassert_true(ret == -EINVAL, "triggered cancel failed");
|
||||||
|
|
||||||
|
ret = k_work_poll_cancel(NULL);
|
||||||
|
zassert_true(ret == -EINVAL, "triggered cancel failed");
|
||||||
|
}
|
||||||
|
|
||||||
/*test case main entry*/
|
/*test case main entry*/
|
||||||
void test_main(void)
|
void test_main(void)
|
||||||
{
|
{
|
||||||
|
@ -739,7 +773,8 @@ void test_main(void)
|
||||||
ztest_1cpu_unit_test(test_triggered_no_wait_expired),
|
ztest_1cpu_unit_test(test_triggered_no_wait_expired),
|
||||||
ztest_1cpu_unit_test(test_triggered_wait),
|
ztest_1cpu_unit_test(test_triggered_wait),
|
||||||
ztest_1cpu_unit_test(test_triggered_wait_expired),
|
ztest_1cpu_unit_test(test_triggered_wait_expired),
|
||||||
ztest_1cpu_unit_test(test_delayed_work_define)
|
ztest_1cpu_unit_test(test_delayed_work_define),
|
||||||
|
ztest_1cpu_unit_test(test_triggered_cancel)
|
||||||
);
|
);
|
||||||
ztest_run_test_suite(workqueue);
|
ztest_run_test_suite(workqueue);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue