tests: posix: semaphores: ensure test is not skipped

Commit f7633a55aa moved the tests for the
POSIX_SEMAPHORES Option Group from the tests/posix/common testsuite to
its own dedicated testsuite.

However, there was a copy-paste error. Previously, tests would have been
run only once when dynamic threads were enabled, and then skipped when
dynamic threads were disabled, since that follows the posix programming
model better. However, dynamic threads were never actually enabled after
moving to the new testsuite. So all tests were effectively skipped.

Add the necessary options to prj.conf in order to ensure that there are
sufficient dynamic threads available to run the testsuite.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
This commit is contained in:
Chris Friedt 2025-04-17 09:27:36 -04:00 committed by Benjamin Cabé
commit 9535a69af8
2 changed files with 8 additions and 11 deletions

View file

@ -3,3 +3,7 @@ CONFIG_ZTEST=y
CONFIG_POSIX_AEP_CHOICE_BASE=y
CONFIG_POSIX_SEMAPHORES=y
CONFIG_DYNAMIC_THREAD=y
CONFIG_DYNAMIC_THREAD_POOL_SIZE=2
CONFIG_THREAD_STACK_INFO=y

View file

@ -16,6 +16,9 @@
#define WAIT_TIME_MS 100
BUILD_ASSERT(WAIT_TIME_MS > 0, "WAIT_TIME_MS must be posistive");
/* based on the current structure of this unit test */
BUILD_ASSERT(CONFIG_DYNAMIC_THREAD_POOL_SIZE >= 2, "CONFIG_DYNAMIC_THREAD_POOL_SIZE must be >= 2");
static void *child_func(void *p1)
{
sem_t *sem = (sem_t *)p1;
@ -312,14 +315,4 @@ ZTEST(posix_semaphores, test_named_semaphore)
zassert_equal(nsem_get_list_len(), 0);
}
static void before(void *arg)
{
ARG_UNUSED(arg);
if (!IS_ENABLED(CONFIG_DYNAMIC_THREAD)) {
/* skip redundant testing if there is no thread pool / heap allocation */
ztest_test_skip();
}
}
ZTEST_SUITE(posix_semaphores, NULL, NULL, before, NULL, NULL);
ZTEST_SUITE(posix_semaphores, NULL, NULL, NULL, NULL, NULL);