Skip to content

Commit c18b7de

Browse files
author
Зишан Мирза
committed
added tests for localtime_r
1 parent 8e1c7f7 commit c18b7de

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

libc/test/src/time/localtime_r_test.cpp

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,19 @@ using LIBC_NAMESPACE::time_utils::TimeConstants;
1515

1616
TEST(LlvmLibcLocaltimeR, ValidUnixTimestamp0) {
1717
struct tm input;
18-
const time_t t_ptr = 0;
18+
time_t t_ptr = 0;
1919
struct tm *result = LIBC_NAMESPACE::localtime_r(&t_ptr, &input);
20+
21+
ASSERT_EQ(70, input.tm_year);
22+
ASSERT_EQ(0, input.tm_mon);
23+
ASSERT_EQ(1, input.tm_mday);
24+
ASSERT_EQ(2, input.tm_hour);
25+
ASSERT_EQ(0, input.tm_min);
26+
ASSERT_EQ(0, input.tm_sec);
27+
ASSERT_EQ(4, input.tm_wday);
28+
ASSERT_EQ(0, input.tm_yday);
29+
ASSERT_EQ(0, input.tm_isdst);
30+
2031
ASSERT_EQ(70, result->tm_year);
2132
ASSERT_EQ(0, result->tm_mon);
2233
ASSERT_EQ(1, result->tm_mday);
@@ -40,6 +51,17 @@ TEST(LlvmLibcLocaltimeR, ValidUnixTimestamp32Int) {
4051
.tm_yday = 0,
4152
.tm_isdst = 0};
4253
struct tm *result = LIBC_NAMESPACE::localtime_r(&t_ptr, &input);
54+
55+
ASSERT_EQ(138, input.tm_year);
56+
ASSERT_EQ(0, input.tm_mon);
57+
ASSERT_EQ(19, input.tm_mday);
58+
ASSERT_EQ(5, input.tm_hour);
59+
ASSERT_EQ(14, input.tm_min);
60+
ASSERT_EQ(7, input.tm_sec);
61+
ASSERT_EQ(2, input.tm_wday);
62+
ASSERT_EQ(18, input.tm_yday);
63+
ASSERT_EQ(0, input.tm_isdst);
64+
4365
ASSERT_EQ(138, result->tm_year);
4466
ASSERT_EQ(0, result->tm_mon);
4567
ASSERT_EQ(19, result->tm_mday);
@@ -63,6 +85,17 @@ TEST(LlvmLibcLocaltimeR, ValidUnixTimestamp32IntDst) {
6385
.tm_yday = 0,
6486
.tm_isdst = 0};
6587
struct tm *result = LIBC_NAMESPACE::localtime_r(&t_ptr, &input);
88+
89+
ASSERT_EQ(121, input.tm_year);
90+
ASSERT_EQ(6, input.tm_mon);
91+
ASSERT_EQ(25, input.tm_mday);
92+
ASSERT_EQ(17, input.tm_hour);
93+
ASSERT_EQ(4, input.tm_min);
94+
ASSERT_EQ(25, input.tm_sec);
95+
ASSERT_EQ(0, input.tm_wday);
96+
ASSERT_EQ(205, input.tm_yday);
97+
ASSERT_EQ(1, input.tm_isdst);
98+
6699
ASSERT_EQ(121, result->tm_year);
67100
ASSERT_EQ(6, result->tm_mon);
68101
ASSERT_EQ(25, result->tm_mday);

0 commit comments

Comments
 (0)