testing/ostest: add nxevent_clear() test cases

Add test cases to verify the new recently added nxevent_clear() api

Signed-off-by: Chengdong Wang <wangchengdong@lixiang.com>
This commit is contained in:
wangchengdong
2025-09-08 21:04:58 +08:00
committed by Xiang Xiao
parent 6bcb347982
commit 7c5800924a

View File

@@ -328,6 +328,34 @@ void nxevent_test(void)
pthread_join(tid1, NULL);
pthread_join(tid2, NULL);
/**************************************************************************/
/* 4. Event clear Test */
nxevent_post(&event, 0xff, NXEVENT_POST_SET);
/* Case 4.1: clear == 0, trywait == 0xf, wait == 0xf */
nxevent_clear(&event, 0);
NXEVENT_TEST(nxevent_wait(&event, 0xf, NXEVENT_WAIT_NOCLEAR), 0xf);
NXEVENT_TEST(nxevent_trywait(&event, 0xf, NXEVENT_WAIT_NOCLEAR), 0xf);
/* Case 4.2: clear == 0xf, trywait == 0xf */
nxevent_clear(&event, 0xf);
NXEVENT_TEST(nxevent_trywait(&event, 0xf, NXEVENT_WAIT_NOCLEAR), 0);
/* Case 4.3: clear == 0, trywait == 0xf0, wait == 0xf0 */
nxevent_clear(&event, 0);
NXEVENT_TEST(nxevent_wait(&event, 0xf0, NXEVENT_WAIT_NOCLEAR), 0xf0);
NXEVENT_TEST(nxevent_trywait(&event, 0xf0, NXEVENT_WAIT_NOCLEAR), 0xf0);
/* Case 4.4: clear == 0xf0, wait == 0xf0 */
nxevent_clear(&event, 0xf0);
NXEVENT_TEST(nxevent_trywait(&event, 0xf0, NXEVENT_WAIT_NOCLEAR), 0);
nxevent_reset(&event, 0);
nxevent_destroy(&event);
}