xref: /netbsd-src/external/bsd/ntp/dist/tests/libntp/humandate.c (revision cdfa2a7ef92791ba9db70a584a1d904730e6fb46)
1*cdfa2a7eSchristos /*	$NetBSD: humandate.c,v 1.2 2020/05/25 20:47:36 christos Exp $	*/
2067f5680Schristos 
3f17b710fSchristos #include "config.h"
4f17b710fSchristos 
5f17b710fSchristos #include "ntp_calendar.h"
6f17b710fSchristos #include "ntp_stdlib.h"
7f17b710fSchristos 
8f17b710fSchristos #include "unity.h"
9f17b710fSchristos 
104c290c01Schristos void setUp(void);
11a6f3f22fSchristos void test_RegularTime(void);
12a6f3f22fSchristos void test_CurrentTime(void);
13a6f3f22fSchristos 
14a6f3f22fSchristos 
15a6f3f22fSchristos void
setUp(void)164c290c01Schristos setUp(void)
174c290c01Schristos {
184c290c01Schristos 	init_lib();
194c290c01Schristos 
204c290c01Schristos 	return;
214c290c01Schristos }
224c290c01Schristos 
234c290c01Schristos 
244c290c01Schristos void
test_RegularTime(void)25a6f3f22fSchristos test_RegularTime(void)
26f17b710fSchristos {
27f17b710fSchristos 	time_t sample = 1276601278;
28f17b710fSchristos 	char expected[15];
29a6f3f22fSchristos 	struct tm* tm;
30f17b710fSchristos 
31a6f3f22fSchristos 	tm = localtime(&sample);
324c290c01Schristos 	TEST_ASSERT_TRUE(tm != NULL);
33f17b710fSchristos 
34a6f3f22fSchristos 	snprintf(expected, 15, "%02d:%02d:%02d", tm->tm_hour, tm->tm_min, tm->tm_sec);
35f17b710fSchristos 
36f17b710fSchristos 	TEST_ASSERT_EQUAL_STRING(expected, humantime(sample));
374c290c01Schristos 
384c290c01Schristos 	return;
39f17b710fSchristos }
40f17b710fSchristos 
41a6f3f22fSchristos void
test_CurrentTime(void)42a6f3f22fSchristos test_CurrentTime(void)
43f17b710fSchristos {
44f17b710fSchristos 	time_t sample;
45f17b710fSchristos 	char expected[15];
46a6f3f22fSchristos 	struct tm* tm;
47f17b710fSchristos 
48f17b710fSchristos 	time(&sample);
49f17b710fSchristos 
50a6f3f22fSchristos 	tm = localtime(&sample);
514c290c01Schristos 	TEST_ASSERT_TRUE(tm != NULL);
52f17b710fSchristos 
53a6f3f22fSchristos 	snprintf(expected, 15, "%02d:%02d:%02d", tm->tm_hour, tm->tm_min, tm->tm_sec);
54f17b710fSchristos 
55f17b710fSchristos 	TEST_ASSERT_EQUAL_STRING(expected, humantime(sample));
564c290c01Schristos 
574c290c01Schristos 	return;
58f17b710fSchristos }
59