X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FFormat.test.cc;h=8dd4bae24e6cb67c370e01a9e1888fada1d2fc05;hb=209950ee5f6898978cd68614ef339ae3531c5c53;hp=996fe38e1f1aa8bf8ebce66a99f61f659a8b3f11;hpb=af697a0c8591b38f7ee7dbc3d1d0293f4ff72d37;p=senf.git diff --git a/senf/Utils/Format.test.cc b/senf/Utils/Format.test.cc index 996fe38..8dd4bae 100644 --- a/senf/Utils/Format.test.cc +++ b/senf/Utils/Format.test.cc @@ -31,6 +31,7 @@ #include #include "Format.hh" #include +#include "String.hh" #include #include @@ -38,7 +39,7 @@ #define prefix_ ///////////////////////////////cc.p//////////////////////////////////////// -BOOST_AUTO_UNIT_TEST(formatEng) +SENF_AUTO_UNIT_TEST(formatEng) { std::stringstream ss; @@ -112,9 +113,26 @@ BOOST_AUTO_UNIT_TEST(formatEng) ss << std::showbase << senf::format::eng(12345,67); BOOST_CHECK_EQUAL( ss.str(), "12.345+-0.067k" ); } + + // class member formatting + BOOST_CHECK_EQUAL( senf::str(senf::format::eng(12345, 67) + .setw() + .setprecision(5) + .setfill('0') + .showbase() + .showpos() + .internal()), + "+012.35+-000.07k" ); + + BOOST_CHECK_EQUAL( senf::str(senf::format::eng(12.345, 67) + .setw() + .setprecision(5) + .showpoint() + .uppercase()), + " 12.35+-067.00E+00" ); } -BOOST_AUTO_UNIT_TEST(dumpint) +SENF_AUTO_UNIT_TEST(dumpint) { std::stringstream ss; @@ -131,6 +149,31 @@ BOOST_AUTO_UNIT_TEST(dumpint) # undef CheckFormat } +namespace { + void f1(std::ostream & os) { + senf::format::IndentHelper indent; + os << indent << "f1\n"; + } + void f2(std::ostream & os) { + senf::format::IndentHelper indent; + os << indent << "f2_1\n"; + f1( os); + os << indent << "f2_2\n"; + indent.increase(); + os << indent << "f2_3\n"; + } +} +SENF_AUTO_UNIT_TEST(indent) +{ + std::stringstream ss; + f2(ss); + BOOST_CHECK_EQUAL( ss.str(), + " f2_1\n" + " f1\n" + " f2_2\n" + " f2_3\n"); +} + ///////////////////////////////cc.e//////////////////////////////////////// #undef prefix_