Mercurial > irccd
diff tests/util/main.cpp @ 118:2a63c8ec45cd
Irccd: fix some errors in util::format, #408
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 29 Apr 2016 14:19:30 +0200 |
parents | 8cbbce7b4327 |
children | b39573fc066e |
line wrap: on
line diff
--- a/tests/util/main.cpp Fri Apr 29 10:08:17 2016 +0200 +++ b/tests/util/main.cpp Fri Apr 29 14:19:30 2016 +0200 @@ -37,6 +37,25 @@ ASSERT_EQ(expected, result); } +TEST(Format, escape) +{ + util::Substitution params; + + params.keywords.emplace("target", "hello"); + + ASSERT_EQ("$@#", util::format("$@#")); + ASSERT_EQ(" $ @ # ", util::format(" $ @ # ")); + ASSERT_EQ("#", util::format("#")); + ASSERT_EQ(" # ", util::format(" # ")); + ASSERT_EQ("#@", util::format("#@")); + ASSERT_EQ("##", util::format("##")); + ASSERT_EQ("#!", util::format("#!")); + ASSERT_EQ("#{target}", util::format("##{target}")); + ASSERT_EQ("@hello", util::format("@#{target}", params)); + ASSERT_EQ("hello#", util::format("#{target}#", params)); + ASSERT_ANY_THROW(util::format("#{failure")); +} + TEST(Format, keywordSimple) { util::Substitution params;