zephyr/tests/lib/time/src/main.c
Krzysztof Chruściński 96e2f8bcd0 tests: lib: Fix zassert string
Fix wrong parameter used in zassert macros.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-05-22 16:17:23 +02:00

63 lines
1.4 KiB
C

/*
* Copyright (c) 2021 Golioth, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/ztest.h>
#include <time.h>
ZTEST(libc_time, test_time_passing)
{
time_t time_initial_unaligned;
time_t time_initial;
time_t time_current;
int i;
time_initial_unaligned = time(NULL);
zassert_true(time_initial_unaligned >= 0, "Fail to get time");
/* Wait until time() will return new value, which should be aligned */
for (i = 0; i < 100; i++) {
k_sleep(K_MSEC(10));
if (time(NULL) != time_initial_unaligned) {
break;
}
}
time_initial = time(NULL);
zassert_equal(time_initial, time_initial_unaligned + 1,
"Time (%d) should be one second larger than initially (%d)",
(int)time_initial, (int)time_initial_unaligned);
for (i = 1; i <= 10; i++) {
k_sleep(K_SECONDS(1));
time_current = time(NULL);
zassert_equal(time_current, time_initial + i,
"Current time (%d) does not match expected time (%d)",
(int) time_current, (int) (time_initial + i));
}
}
ZTEST(libc_time, test_time_param)
{
time_t time_result;
time_t time_param;
int i;
time_result = time(&time_param);
zassert_equal(time_result, time_param,
"time() result does not match param value");
for (i = 0; i < 10; i++) {
k_sleep(K_SECONDS(1));
zassert_equal(time_result, time_param,
"time() result does not match param value");
}
}
ZTEST_SUITE(libc_time, NULL, NULL, NULL, NULL, NULL);