From 5e45aaa2ddc12cdab4c02959b1c8010ebb6af4f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kr=C3=BCgler?= Date: Sat, 2 Jul 2022 19:04:40 +0200 Subject: [PATCH] 2954: Add test case --- test/CMakeLists.txt | 2 ++ test/ranges-std-test.cc | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 test/ranges-std-test.cc diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5ac19629..dda56656 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -78,6 +78,7 @@ add_fmt_test(printf-test) add_fmt_test(ranges-test ranges-odr-test.cc) add_fmt_test(scan-test) add_fmt_test(std-test) +add_fmt_test(ranges-std-test) try_compile(compile_result_unused ${CMAKE_CURRENT_BINARY_DIR} SOURCES ${CMAKE_CURRENT_LIST_DIR}/detect-stdfs.cc @@ -85,6 +86,7 @@ try_compile(compile_result_unused string(REGEX REPLACE ".*libfound \"([^\"]*)\".*" "\\1" STDLIBFS "${RAWOUTPUT}") if (STDLIBFS) target_link_libraries(std-test ${STDLIBFS}) + target_link_libraries(ranges-std-test ${STDLIBFS}) endif () add_fmt_test(unicode-test HEADER_ONLY) if (MSVC) diff --git a/test/ranges-std-test.cc b/test/ranges-std-test.cc new file mode 100644 index 00000000..6c8e8e4b --- /dev/null +++ b/test/ranges-std-test.cc @@ -0,0 +1,26 @@ +// Formatting library for C++ - tests for ranges and std combination +// +// Copyright (c) 2012 - present, Victor Zverovich +// All rights reserved. +// +// For the license information refer to format.h. +// +// Copyright (c) 2022 - present, Dani-Hub (Daniel Kruegler) +// All rights reserved + +#include "fmt/ranges.h" +#include "fmt/std.h" + +#include +#include + +#include "gtest/gtest.h" + +TEST(ranges_std_test, format_vector_path) { +#ifdef __cpp_lib_filesystem + auto p = std::filesystem::path("foo/bar.txt"); + auto c = std::vector{"abc", "def"}; + EXPECT_EQ(fmt::format("path={}, range={}", p, c), + "path=\"foo/bar.txt\", range=[\"abc\", \"def\"]"); +#endif +}