================ @@ -0,0 +1,114 @@ +//===----------------------------------------------------------------------===// +// +// 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 +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03, c++11, c++14, c++17 +// UNSUPPORTED: no-localization + +// TODO FMT This test should not require std::to_chars(floating-point) +// XFAIL: availability-fp_to_chars-missing + +// XFAIL: libcpp-has-no-incomplete-tzdb + +// <chrono> + +// template<class charT, class traits> +// basic_ostream<charT, traits>& +// operator<<(basic_ostream<charT, traits>& os, const local_info& r); + +// [time.zone.info.local] +// 7 Effects: Streams out the local_info object r in an unspecified format. +// 8 Returns: os. +// +// Tests the output produced by this function. + +#include <cassert> +#include <chrono> +#include <memory> +#include <sstream> + +#include "assert_macros.h" +#include "test_macros.h" +#include "make_string.h" +#include "concat_macros.h" + +#define SV(S) MAKE_STRING_VIEW(CharT, S) + +template <class CharT> +static void test(std::basic_string_view<CharT> expected, std::chrono::local_info&& info) { + std::basic_stringstream<CharT> sstr; + sstr << info; + std::basic_string<CharT> output = sstr.str(); + + TEST_REQUIRE(expected == output, + TEST_WRITE_CONCATENATED("\nExpected output ", expected, "\nActual output ", output, '\n')); +} + +template <class CharT> +static void test() { + using namespace std::literals::chrono_literals; + namespace tz = std::chrono; + // result values matching the "known" results + test(SV("unique: " + "{[-10484-10-16 15:30:08, 14423-03-17 15:30:07) 00:00:00 0min TZ, " + "[1970-01-01 00:00:00, 1970-01-01 00:00:00) 00:00:00 0min }"), ---------------- ldionne wrote:
IMO formatting a `sys_info` without a time zone should not have a trailing whitespace, this looks like a small bug to me. https://github.com/llvm/llvm-project/pull/86256 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits