test: for ostime
This commit is contained in:
parent
1a5f61fbe3
commit
98075a7c5a
|
@ -31,7 +31,7 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
//#define TM_YEAR_BASE 1970 //origin
|
// #define TM_YEAR_BASE 1970 //origin
|
||||||
#define TM_YEAR_BASE 1900 // slguan
|
#define TM_YEAR_BASE 1900 // slguan
|
||||||
|
|
||||||
// This magic number is the number of 100 nanosecond intervals since January 1, 1601 (UTC)
|
// This magic number is the number of 100 nanosecond intervals since January 1, 1601 (UTC)
|
||||||
|
@ -345,8 +345,7 @@ char *taosStrpTime(const char *buf, const char *fmt, struct tm *tm) {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t
|
size_t taosStrfTime(char *s, size_t maxsize, char const *format, struct tm const *t) {
|
||||||
taosStrfTime(char *s, size_t maxsize, char const *format, struct tm const *t){
|
|
||||||
if (!s || !format || !t) return 0;
|
if (!s || !format || !t) return 0;
|
||||||
return strftime(s, maxsize, format, t);
|
return strftime(s, maxsize, format, t);
|
||||||
}
|
}
|
||||||
|
@ -379,7 +378,7 @@ int32_t taosTime(time_t *t) {
|
||||||
if (t == NULL) {
|
if (t == NULL) {
|
||||||
return TSDB_CODE_INVALID_PARA;
|
return TSDB_CODE_INVALID_PARA;
|
||||||
}
|
}
|
||||||
time_t r = time(t);
|
time_t r = time(t);
|
||||||
if (r == (time_t)-1) {
|
if (r == (time_t)-1) {
|
||||||
return TAOS_SYSTEM_ERROR(errno);
|
return TAOS_SYSTEM_ERROR(errno);
|
||||||
}
|
}
|
||||||
|
@ -433,15 +432,15 @@ time_t taosMktime(struct tm *timep, timezone_t tz) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
int64_t tzw = 0;
|
int64_t tzw = 0;
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
#if _MSC_VER >= 1900
|
#if _MSC_VER >= 1900
|
||||||
tzw = _timezone;
|
tzw = _timezone;
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
return user_mktime64(timep->tm_year + 1900, timep->tm_mon + 1, timep->tm_mday, timep->tm_hour, timep->tm_min,
|
return user_mktime64(timep->tm_year + 1900, timep->tm_mon + 1, timep->tm_mday, timep->tm_hour, timep->tm_min,
|
||||||
timep->tm_sec, tzw);
|
timep->tm_sec, tzw);
|
||||||
#else
|
#else
|
||||||
time_t r = tz != NULL ? mktime_z(tz, timep) : mktime(timep);
|
time_t r = (tz != NULL ? mktime_z(tz, timep) : mktime(timep));
|
||||||
if (r == (time_t)-1) {
|
if (r == (time_t)-1) {
|
||||||
terrno = TAOS_SYSTEM_ERROR(errno);
|
terrno = TAOS_SYSTEM_ERROR(errno);
|
||||||
}
|
}
|
||||||
|
@ -450,7 +449,7 @@ time_t taosMktime(struct tm *timep, timezone_t tz) {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
struct tm *taosGmTimeR(const time_t *timep, struct tm *result){
|
struct tm *taosGmTimeR(const time_t *timep, struct tm *result) {
|
||||||
if (timep == NULL || result == NULL) {
|
if (timep == NULL || result == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -461,7 +460,7 @@ struct tm *taosGmTimeR(const time_t *timep, struct tm *result){
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
time_t taosTimeGm(struct tm *tmp){
|
time_t taosTimeGm(struct tm *tmp) {
|
||||||
if (tmp == NULL) {
|
if (tmp == NULL) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
@ -530,7 +529,7 @@ struct tm *taosLocalTime(const time_t *timep, struct tm *result, char *buf, int3
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
#else
|
#else
|
||||||
res = tz != NULL ? localtime_rz(tz, timep, result): localtime_r(timep, result);
|
res = (tz != NULL ? localtime_rz(tz, timep, result) : localtime_r(timep, result));
|
||||||
if (res == NULL && buf != NULL) {
|
if (res == NULL && buf != NULL) {
|
||||||
(void)snprintf(buf, bufSize, "NaN");
|
(void)snprintf(buf, bufSize, "NaN");
|
||||||
}
|
}
|
||||||
|
@ -544,8 +543,8 @@ int32_t taosGetTimestampSec() { return (int32_t)time(NULL); }
|
||||||
int32_t taosClockGetTime(int clock_id, struct timespec *pTS) {
|
int32_t taosClockGetTime(int clock_id, struct timespec *pTS) {
|
||||||
int32_t code = 0;
|
int32_t code = 0;
|
||||||
#ifdef WINDOWS
|
#ifdef WINDOWS
|
||||||
LARGE_INTEGER t;
|
LARGE_INTEGER t;
|
||||||
FILETIME f;
|
FILETIME f;
|
||||||
|
|
||||||
GetSystemTimeAsFileTime(&f);
|
GetSystemTimeAsFileTime(&f);
|
||||||
t.QuadPart = f.dwHighDateTime;
|
t.QuadPart = f.dwHighDateTime;
|
||||||
|
|
|
@ -750,13 +750,14 @@ int32_t taosSetGlobalTimezone(const char *tz) {
|
||||||
int32_t code = TSDB_CODE_SUCCESS;
|
int32_t code = TSDB_CODE_SUCCESS;
|
||||||
uDebug("[tz]set timezone to %s", tz)
|
uDebug("[tz]set timezone to %s", tz)
|
||||||
#ifdef WINDOWS
|
#ifdef WINDOWS
|
||||||
char winStr[TD_TIMEZONE_LEN * 2] = {0};
|
char winStr[TD_TIMEZONE_LEN * 2] = {0};
|
||||||
for (size_t i = 0; i < W_TZ_CITY_NUM; i++) {
|
for (size_t i = 0; i < W_TZ_CITY_NUM; i++) {
|
||||||
if (strcmp(tz_win[i][0], tz) == 0) {
|
if (strcmp(tz_win[i][0], tz) == 0) {
|
||||||
char keyPath[256] = {0};
|
char keyPath[256] = {0};
|
||||||
char keyValue[100] = {0};
|
char keyValue[100] = {0};
|
||||||
DWORD keyValueSize = sizeof(keyValue);
|
DWORD keyValueSize = sizeof(keyValue);
|
||||||
snprintf(keyPath, sizeof(keyPath), "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones\\%s", tz_win[i][1]);
|
snprintf(keyPath, sizeof(keyPath), "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones\\%s",
|
||||||
|
tz_win[i][1]);
|
||||||
RegGetValue(HKEY_LOCAL_MACHINE, keyPath, "Display", RRF_RT_ANY, NULL, (PVOID)&keyValue, &keyValueSize);
|
RegGetValue(HKEY_LOCAL_MACHINE, keyPath, "Display", RRF_RT_ANY, NULL, (PVOID)&keyValue, &keyValueSize);
|
||||||
if (keyValueSize > 0) {
|
if (keyValueSize > 0) {
|
||||||
keyValue[4] = (keyValue[4] == '+' ? '-' : '+');
|
keyValue[4] = (keyValue[4] == '+' ? '-' : '+');
|
||||||
|
@ -770,7 +771,7 @@ int32_t taosSetGlobalTimezone(const char *tz) {
|
||||||
_putenv(winStr);
|
_putenv(winStr);
|
||||||
_tzset();
|
_tzset();
|
||||||
#else
|
#else
|
||||||
code = setenv("TZ", tz, 1);
|
code = setenv("TZ", tz, 1);
|
||||||
if (-1 == code) {
|
if (-1 == code) {
|
||||||
terrno = TAOS_SYSTEM_ERROR(errno);
|
terrno = TAOS_SYSTEM_ERROR(errno);
|
||||||
return terrno;
|
return terrno;
|
||||||
|
@ -779,7 +780,7 @@ int32_t taosSetGlobalTimezone(const char *tz) {
|
||||||
tzset();
|
tzset();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
time_t tx1 = taosGetTimestampSec();
|
time_t tx1 = taosGetTimestampSec();
|
||||||
return taosFormatTimezoneStr(tx1, tz, NULL, tsTimezoneStr);
|
return taosFormatTimezoneStr(tx1, tz, NULL, tsTimezoneStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -797,7 +798,7 @@ int32_t taosGetLocalTimezoneOffset() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t taosFormatTimezoneStr(time_t t, const char* tz, timezone_t sp, char *outTimezoneStr){
|
int32_t taosFormatTimezoneStr(time_t t, const char *tz, timezone_t sp, char *outTimezoneStr) {
|
||||||
struct tm tm1;
|
struct tm tm1;
|
||||||
if (taosLocalTime(&t, &tm1, NULL, 0, sp) == NULL) {
|
if (taosLocalTime(&t, &tm1, NULL, 0, sp) == NULL) {
|
||||||
uError("%s failed to get local time: code:%d", __FUNCTION__, errno);
|
uError("%s failed to get local time: code:%d", __FUNCTION__, errno);
|
||||||
|
@ -813,16 +814,17 @@ int32_t taosFormatTimezoneStr(time_t t, const char* tz, timezone_t sp, char *out
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char str1[TD_TIMEZONE_LEN] = {0};
|
char str1[TD_TIMEZONE_LEN] = {0};
|
||||||
if (taosStrfTime(str1, sizeof(str1), "%Z", &tm1) == 0){
|
if (taosStrfTime(str1, sizeof(str1), "%Z", &tm1) == 0) {
|
||||||
uError("failed to get timezone name");
|
uError("failed to get timezone name");
|
||||||
return TSDB_CODE_TIME_ERROR;
|
return TSDB_CODE_TIME_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
char str2[TD_TIMEZONE_LEN] = {0};
|
char str2[TD_TIMEZONE_LEN] = {0};
|
||||||
if (taosStrfTime(str2, sizeof(str2), "%z", &tm1) == 0){
|
if (taosStrfTime(str2, sizeof(str2), "%z", &tm1) == 0) {
|
||||||
uError("failed to get timezone offset");
|
uError("failed to get timezone offset");
|
||||||
return TSDB_CODE_TIME_ERROR;
|
return TSDB_CODE_TIME_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
(void)snprintf(outTimezoneStr, TD_TIMEZONE_LEN, "%s (%s, %s)", tz, str1, str2);
|
(void)snprintf(outTimezoneStr, TD_TIMEZONE_LEN, "%s (%s, %s)", tz, str1, str2);
|
||||||
uDebug("[tz] system timezone:%s", outTimezoneStr);
|
uDebug("[tz] system timezone:%s", outTimezoneStr);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -847,7 +849,6 @@ void getTimezoneStr(char *tz) {
|
||||||
goto END;
|
goto END;
|
||||||
} while (0);
|
} while (0);
|
||||||
|
|
||||||
|
|
||||||
TdFilePtr pFile = taosOpenFile("/etc/timezone", TD_FILE_READ);
|
TdFilePtr pFile = taosOpenFile("/etc/timezone", TD_FILE_READ);
|
||||||
if (pFile == NULL) {
|
if (pFile == NULL) {
|
||||||
uWarn("[tz] failed to open /etc/timezone, reason:%s", strerror(errno));
|
uWarn("[tz] failed to open /etc/timezone, reason:%s", strerror(errno));
|
||||||
|
@ -876,8 +877,8 @@ int32_t taosGetSystemTimezone(char *outTimezoneStr) {
|
||||||
char value[100] = {0};
|
char value[100] = {0};
|
||||||
char keyPath[100] = {0};
|
char keyPath[100] = {0};
|
||||||
DWORD bufferSize = sizeof(value);
|
DWORD bufferSize = sizeof(value);
|
||||||
LONG result = RegGetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\TimeZoneInformation", "TimeZoneKeyName",
|
LONG result = RegGetValue(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\TimeZoneInformation",
|
||||||
RRF_RT_ANY, NULL, (PVOID)&value, &bufferSize);
|
"TimeZoneKeyName", RRF_RT_ANY, NULL, (PVOID)&value, &bufferSize);
|
||||||
if (result != ERROR_SUCCESS) {
|
if (result != ERROR_SUCCESS) {
|
||||||
return TAOS_SYSTEM_WINAPI_ERROR(result);
|
return TAOS_SYSTEM_WINAPI_ERROR(result);
|
||||||
}
|
}
|
||||||
|
@ -891,9 +892,9 @@ int32_t taosGetSystemTimezone(char *outTimezoneStr) {
|
||||||
if (result != ERROR_SUCCESS) {
|
if (result != ERROR_SUCCESS) {
|
||||||
return TAOS_SYSTEM_WINAPI_ERROR(result);
|
return TAOS_SYSTEM_WINAPI_ERROR(result);
|
||||||
}
|
}
|
||||||
if (bufferSize > 0) { // value like (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi
|
if (bufferSize > 0) { // value like (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi
|
||||||
snprintf(outTimezoneStr, TD_TIMEZONE_LEN, "%s (UTC, %c%c%c%c%c)", outTimezoneStr,
|
snprintf(outTimezoneStr, TD_TIMEZONE_LEN, "%s (UTC, %c%c%c%c%c)", outTimezoneStr, value[4], value[5],
|
||||||
value[4], value[5], value[6], value[8], value[9]);
|
value[6], value[8], value[9]);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -903,7 +904,7 @@ int32_t taosGetSystemTimezone(char *outTimezoneStr) {
|
||||||
#else
|
#else
|
||||||
char tz[TD_TIMEZONE_LEN] = {0};
|
char tz[TD_TIMEZONE_LEN] = {0};
|
||||||
getTimezoneStr(tz);
|
getTimezoneStr(tz);
|
||||||
time_t tx1 = taosGetTimestampSec();
|
time_t tx1 = taosGetTimestampSec();
|
||||||
return taosFormatTimezoneStr(tx1, tz, NULL, outTimezoneStr);
|
return taosFormatTimezoneStr(tx1, tz, NULL, outTimezoneStr);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
|
@ -14,20 +14,30 @@ ENDIF()
|
||||||
|
|
||||||
INCLUDE_DIRECTORIES(${TD_SOURCE_DIR}/src/util/inc)
|
INCLUDE_DIRECTORIES(${TD_SOURCE_DIR}/src/util/inc)
|
||||||
|
|
||||||
# osTests
|
add_executable(osAtomicTests "osAtomicTests.cpp")
|
||||||
add_executable(osTests "osTests.cpp")
|
target_link_libraries(osAtomicTests os util gtest_main)
|
||||||
target_link_libraries(osTests os util gtest_main)
|
|
||||||
add_test(
|
add_test(
|
||||||
NAME osTests
|
NAME osAtomicTests
|
||||||
COMMAND osTests
|
COMMAND osAtomicTests
|
||||||
)
|
)
|
||||||
|
|
||||||
add_executable(osSystemTests "osSystemTests.cpp")
|
if(TD_LINUX)
|
||||||
target_link_libraries(osSystemTests os util gtest_main)
|
add_executable(osDirTests "osDirTests.cpp")
|
||||||
|
target_link_libraries(osDirTests os util gtest_main)
|
||||||
add_test(
|
add_test(
|
||||||
NAME osSystemTests
|
NAME osDirTests
|
||||||
COMMAND osSystemTests
|
COMMAND osDirTests
|
||||||
)
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(TD_LINUX)
|
||||||
|
add_executable(osEnvTests "osEnvTests.cpp")
|
||||||
|
target_link_libraries(osEnvTests os util gtest_main)
|
||||||
|
add_test(
|
||||||
|
NAME osEnvTests
|
||||||
|
COMMAND osEnvTests
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
add_executable(osMathTests "osMathTests.cpp")
|
add_executable(osMathTests "osMathTests.cpp")
|
||||||
target_link_libraries(osMathTests os util gtest_main)
|
target_link_libraries(osMathTests os util gtest_main)
|
||||||
|
@ -36,6 +46,13 @@ add_test(
|
||||||
COMMAND osMathTests
|
COMMAND osMathTests
|
||||||
)
|
)
|
||||||
|
|
||||||
|
add_executable(osSemaphoreTests "osSemaphoreTests.cpp")
|
||||||
|
target_link_libraries(osSemaphoreTests os util gtest_main)
|
||||||
|
add_test(
|
||||||
|
NAME osSemaphoreTests
|
||||||
|
COMMAND osSemaphoreTests
|
||||||
|
)
|
||||||
|
|
||||||
add_executable(osSignalTests "osSignalTests.cpp")
|
add_executable(osSignalTests "osSignalTests.cpp")
|
||||||
target_link_libraries(osSignalTests os util gtest_main)
|
target_link_libraries(osSignalTests os util gtest_main)
|
||||||
add_test(
|
add_test(
|
||||||
|
@ -57,6 +74,20 @@ add_test(
|
||||||
COMMAND osStringTests
|
COMMAND osStringTests
|
||||||
)
|
)
|
||||||
|
|
||||||
|
add_executable(osTests "osTests.cpp")
|
||||||
|
target_link_libraries(osTests os util gtest_main)
|
||||||
|
add_test(
|
||||||
|
NAME osTests
|
||||||
|
COMMAND osTests
|
||||||
|
)
|
||||||
|
|
||||||
|
add_executable(osSystemTests "osSystemTests.cpp")
|
||||||
|
target_link_libraries(osSystemTests os util gtest_main)
|
||||||
|
add_test(
|
||||||
|
NAME osSystemTests
|
||||||
|
COMMAND osSystemTests
|
||||||
|
)
|
||||||
|
|
||||||
add_executable(osThreadTests "osThreadTests.cpp")
|
add_executable(osThreadTests "osThreadTests.cpp")
|
||||||
target_link_libraries(osThreadTests os util gtest_main)
|
target_link_libraries(osThreadTests os util gtest_main)
|
||||||
add_test(
|
add_test(
|
||||||
|
@ -71,35 +102,3 @@ add_test(
|
||||||
COMMAND osTimeTests
|
COMMAND osTimeTests
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
if(TD_LINUX)
|
|
||||||
|
|
||||||
add_executable(osAtomicTests "osAtomicTests.cpp")
|
|
||||||
target_link_libraries(osAtomicTests os util gtest_main)
|
|
||||||
add_test(
|
|
||||||
NAME osAtomicTests
|
|
||||||
COMMAND osAtomicTests
|
|
||||||
)
|
|
||||||
|
|
||||||
add_executable(osDirTests "osDirTests.cpp")
|
|
||||||
target_link_libraries(osDirTests os util gtest_main)
|
|
||||||
add_test(
|
|
||||||
NAME osDirTests
|
|
||||||
COMMAND osDirTests
|
|
||||||
)
|
|
||||||
|
|
||||||
add_executable(osEnvTests "osEnvTests.cpp")
|
|
||||||
target_link_libraries(osEnvTests os util gtest_main)
|
|
||||||
add_test(
|
|
||||||
NAME osEnvTests
|
|
||||||
COMMAND osEnvTests
|
|
||||||
)
|
|
||||||
|
|
||||||
endif()
|
|
||||||
|
|
||||||
add_executable(osSemaphoreTests "osSemaphoreTests.cpp")
|
|
||||||
target_link_libraries(osSemaphoreTests os util gtest_main)
|
|
||||||
add_test(
|
|
||||||
NAME osSemaphoreTests
|
|
||||||
COMMAND osSemaphoreTests
|
|
||||||
)
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ TEST(osTimeTests, taosLocalTime) {
|
||||||
// Test 1: Test when both timep and result are not NULL
|
// Test 1: Test when both timep and result are not NULL
|
||||||
time_t timep = 1617531000; // 2021-04-04 18:10:00
|
time_t timep = 1617531000; // 2021-04-04 18:10:00
|
||||||
struct tm result;
|
struct tm result;
|
||||||
struct tm* local_time = taosLocalTime(&timep, &result, NULL, 0, NULL);
|
struct tm *local_time = taosLocalTime(&timep, &result, NULL, 0, NULL);
|
||||||
ASSERT_NE(local_time, nullptr);
|
ASSERT_NE(local_time, nullptr);
|
||||||
ASSERT_EQ(local_time->tm_year, 121);
|
ASSERT_EQ(local_time->tm_year, 121);
|
||||||
ASSERT_EQ(local_time->tm_mon, 3);
|
ASSERT_EQ(local_time->tm_mon, 3);
|
||||||
|
@ -92,4 +92,55 @@ TEST(osTimeTests, taosLocalTime) {
|
||||||
local_time = taosLocalTime(&neg_timep3, &result, NULL, 0, NULL);
|
local_time = taosLocalTime(&neg_timep3, &result, NULL, 0, NULL);
|
||||||
ASSERT_EQ(local_time, nullptr);
|
ASSERT_EQ(local_time, nullptr);
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(osTimeTests, invalidParameter) {
|
||||||
|
void *retp = NULL;
|
||||||
|
int32_t reti = 0;
|
||||||
|
char buf[1024] = {0};
|
||||||
|
char fmt[1024] = {0};
|
||||||
|
struct tm tm = {0};
|
||||||
|
struct timeval tv = {0};
|
||||||
|
|
||||||
|
retp = taosStrpTime(buf, fmt, NULL);
|
||||||
|
EXPECT_EQ(retp, nullptr);
|
||||||
|
retp = taosStrpTime(NULL, fmt, &tm);
|
||||||
|
EXPECT_EQ(retp, nullptr);
|
||||||
|
retp = taosStrpTime(buf, NULL, &tm);
|
||||||
|
EXPECT_EQ(retp, nullptr);
|
||||||
|
|
||||||
|
reti = taosGetTimeOfDay(NULL);
|
||||||
|
EXPECT_NE(reti, 0);
|
||||||
|
|
||||||
|
reti = taosTime(NULL);
|
||||||
|
EXPECT_NE(reti, 0);
|
||||||
|
|
||||||
|
tm.tm_year = 2024;
|
||||||
|
tm.tm_mon = 10;
|
||||||
|
tm.tm_mday = 23;
|
||||||
|
tm.tm_hour = 12;
|
||||||
|
tm.tm_min = 1;
|
||||||
|
tm.tm_sec = 0;
|
||||||
|
tm.tm_isdst = -1;
|
||||||
|
time_t rett = taosMktime(&tm, NULL);
|
||||||
|
EXPECT_NE(rett, 0);
|
||||||
|
|
||||||
|
retp = taosLocalTime(NULL, &tm, NULL, 0, NULL);
|
||||||
|
EXPECT_EQ(retp, nullptr);
|
||||||
|
|
||||||
|
retp = taosLocalTime(&rett, NULL, NULL, 0, NULL);
|
||||||
|
EXPECT_EQ(retp, nullptr);
|
||||||
|
|
||||||
|
reti = taosSetGlobalTimezone(NULL);
|
||||||
|
EXPECT_NE(reti, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(osTimeTests, user_mktime64) {
|
||||||
|
int64_t reti = 0;
|
||||||
|
|
||||||
|
reti = user_mktime64(2024, 10, 23, 12, 3, 2, 1);
|
||||||
|
EXPECT_NE(reti, 0);
|
||||||
|
|
||||||
|
reti = user_mktime64(2024, 1, 23, 12, 3, 2, 1);
|
||||||
|
EXPECT_NE(reti, 0);
|
||||||
}
|
}
|
Loading…
Reference in New Issue