| //===- 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 "llvm/Support/CommandLine.h" |
| #include "llvm/Support/FormatProviders.h" |
| #include "llvm/Support/FormatVariadic.h" |
| TEST(UTCTime, convertutc) { |
| // Convert with toUtcTime. |
| SmallString<15> customResultString; |
| raw_svector_ostream T(customResultString); |
| T << formatv("{0:%Y-%m-%d %H:%M:%S}", llvm::sys::toUtcTime(currentTime)); |
| 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)); |