From 8fd0746abf4939643664fcc7ea9e2b34c6a4ad1a Mon Sep 17 00:00:00 2001 From: Daumantas Kavolis <12998363+dkavolis@users.noreply.github.com> Date: Thu, 26 Sep 2019 16:26:06 +0100 Subject: [PATCH] add print tests --- test/compile-test.cc | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/test/compile-test.cc b/test/compile-test.cc index 13bef488..69e460eb 100644 --- a/test/compile-test.cc +++ b/test/compile-test.cc @@ -22,6 +22,7 @@ #endif #include "fmt/compile.h" +#include "fmt/ostream.h" #include "gmock.h" #include "gtest-extra.h" #include "mock-allocator.h" @@ -141,3 +142,20 @@ TEST(CompileTest, EmptyFormatString) { auto f = fmt::compile<>(""); EXPECT_EQ(fmt::format(f), ""); } + +TEST(CompileTest, Print) { + std::ostringstream os; + auto f = fmt::compile("Don't {}!"); + fmt::print(os, f, "panic"); + EXPECT_EQ("Don't panic!", os.str()); + + auto wf = fmt::compile(L"Don't {}!"); + std::wostringstream wos; + fmt::print(wos, wf, L"panic"); + EXPECT_EQ(L"Don't panic!", wos.str()); + +#if FMT_USE_FILE_DESCRIPTORS + EXPECT_WRITE(stdout, fmt::print(f, "panic"), "Don't panic!"); + EXPECT_WRITE(stderr, fmt::print(stderr, f, "panic"), "Don't panic!"); +#endif +}