mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
Add test for different timezones
This commit is contained in:
@@ -85,6 +85,29 @@ TEST(IRC32, SetMessageTags) {
|
||||
EXPECT_EQ(sLine, R"(@a=\:\s\\\r\n :rest)");
|
||||
}
|
||||
|
||||
TEST(UtilsTest, Timezone) {
|
||||
char* oldTZ = getenv("TZ");
|
||||
if (oldTZ) oldTZ = strdup(oldTZ);
|
||||
setenv("TZ", "Europe/Berlin", 1);
|
||||
tzset();
|
||||
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", "UTC"), "2023-01-07 20:10:30");
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", "GMT"), "2023-01-07 20:10:30");
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", "GMT+7"), "2023-01-08 03:10:30");
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", "GMT-7"), "2023-01-07 13:10:30");
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", "Asia/Vladivostok"), "2023-01-08 06:10:30");
|
||||
// Local TZ, set to Berlin in this test
|
||||
EXPECT_EQ(CUtils::FormatTime(1673122230, "%Y-%m-%d %H:%M:%S", ""), "2023-01-07 21:10:30");
|
||||
|
||||
if (oldTZ) {
|
||||
setenv("TZ", oldTZ, 1);
|
||||
free(oldTZ);
|
||||
} else {
|
||||
unsetenv("TZ");
|
||||
}
|
||||
tzset();
|
||||
}
|
||||
|
||||
TEST(UtilsTest, ServerTime) {
|
||||
char* oldTZ = getenv("TZ");
|
||||
if (oldTZ) oldTZ = strdup(oldTZ);
|
||||
@@ -116,7 +139,6 @@ TEST(UtilsTest, ServerTime) {
|
||||
unsetenv("TZ");
|
||||
}
|
||||
tzset();
|
||||
|
||||
}
|
||||
|
||||
TEST(UtilsTest, ParseServerTime) {
|
||||
|
||||
Reference in New Issue
Block a user