mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-30 03:26:06 +00:00

This PR adds handling for UtcClock to chrono.h/.cpp. --------- Co-authored-by: Yusra Syeda <yusra.syeda@ibm.com>
42 lines
1.2 KiB
C++
42 lines
1.2 KiB
C++
//===- unittests/Support/UTCTimeTest.cpp ----------------- ----------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#include "llvm/Support/Chrono.h"
|
|
#include "gtest/gtest.h"
|
|
#include "llvm/Support/CommandLine.h"
|
|
#include "llvm/Support/FormatProviders.h"
|
|
#include "llvm/Support/FormatVariadic.h"
|
|
|
|
namespace llvm {
|
|
namespace sys {
|
|
namespace {
|
|
|
|
TEST(UTCTime, convertutc) {
|
|
// Get the current time.
|
|
time_t currentTime;
|
|
time(¤tTime);
|
|
|
|
// Convert with toUtcTime.
|
|
SmallString<15> customResultString;
|
|
raw_svector_ostream T(customResultString);
|
|
T << formatv("{0:%Y-%m-%d %H:%M:%S}", llvm::sys::toUtcTime(currentTime));
|
|
|
|
// Convert with gmtime.
|
|
char gmtimeResultString[20];
|
|
std::tm *gmtimeResult = std::gmtime(¤tTime);
|
|
assert(gmtimeResult != NULL);
|
|
std::strftime(gmtimeResultString, 20, "%Y-%m-%d %H:%M:%S", gmtimeResult);
|
|
|
|
// Compare the formatted strings.
|
|
EXPECT_EQ(customResultString, StringRef(gmtimeResultString, 19));
|
|
|
|
}
|
|
} // namespace
|
|
} // namespace sys
|
|
} // namespace llvm
|