diff --git a/test/CommonMakefile.in b/test/CommonMakefile.in index 52ad088060..24b3cd474a 100644 --- a/test/CommonMakefile.in +++ b/test/CommonMakefile.in @@ -103,6 +103,7 @@ TARGETS_IUTEST_ONLY = \ iutest_filter_file_syntax_tests \ iutest_filter_file_tests \ iutest_ostream_formatter_tests \ + iutest_output_tests \ iutest_output_xml_invalid_path_tests \ iutest_tap_file_generator_listener_tests \ iutest_tap_printer_listener_tests \ diff --git a/test/iutest_output_tests.cpp b/test/iutest_output_tests.cpp new file mode 100644 index 0000000000..2b72365f07 --- /dev/null +++ b/test/iutest_output_tests.cpp @@ -0,0 +1,52 @@ +//====================================================================== +//----------------------------------------------------------------------- +/** + * @file iutest_output_tests.cpp + * @brief 出力テスト + * + * @author t.shirayanagi + * @par copyright + * Copyright (C) 2015, Takazumi Shirayanagi\n + * This software is released under the new BSD License, + * see LICENSE +*/ +//----------------------------------------------------------------------- +//====================================================================== + +//====================================================================== +// include +#include "iutest.hpp" +#include "internal/iutest_log_stream.hpp" +#include "iutest_logger_tests.hpp" + +TestLogger logger; + +IUTEST(LoggerTest, Output) +{ + logger.clear(); + logger.output("%d", 1); + + IUTEST_EXPECT_STREQ("1", logger.c_str()); +} + +IUTEST(LogStreamTest, Write) +{ + logger.clear(); + ::iutest::detail::LogStream stream; + const char text[] = "test text"; + stream.Write(text, sizeof(text), 1); + + IUTEST_EXPECT_STREQ(text, logger.c_str()); +} + +#ifdef UNICODE +int wmain(int argc, wchar_t* argv[]) +#else +int main(int argc, char* argv[]) +#endif +{ + ::iutest::detail::iuConsole::SetLogger(&logger); + IUTEST_INIT(&argc, argv); + return IUTEST_RUN_ALL_TESTS(); +} + diff --git a/test/iutest_printers_tests.cpp b/test/iutest_printers_tests.cpp index 46214ac933..28dbfd47f0 100644 --- a/test/iutest_printers_tests.cpp +++ b/test/iutest_printers_tests.cpp @@ -83,6 +83,22 @@ IUTEST(PrintToTest, Bar) IUTEST_SUCCEED() << ::iutest::PrintToString(bar); } +struct BigVar +{ + int big[10]; + operator ::iutest::BiggestInt () const + { + return 42; + } +}; + +IUTEST(PrintToTest, BigVar) +{ + BigVar bigvar; + LogChecker ck("42"); + IUTEST_SUCCEED() << ::iutest::PrintToString(bigvar); +} + #if IUTEST_HAS_TYPED_TEST template