diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-06-07 07:50:50 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-06-07 07:50:50 +0000 |
| commit | b345f7660734ccd21808f5b37fefbaf99bb98ef6 (patch) | |
| tree | 8298c1e1c71737ada5eb1cc66f298c7ab1d55bb2 /test/a2functionalTest.cc | |
| parent | 9be97eebb5510ade390690c6c7d539c0fe151f3d (diff) | |
2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added unit tests for strjoin, strconcat and strappend.
* test/a2functionalTest.cc
Diffstat (limited to 'test/a2functionalTest.cc')
| -rw-r--r-- | test/a2functionalTest.cc | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/test/a2functionalTest.cc b/test/a2functionalTest.cc index 36b4564c..0129d4af 100644 --- a/test/a2functionalTest.cc +++ b/test/a2functionalTest.cc @@ -1,7 +1,9 @@ #include "a2functional.h" + +#include <cppunit/extensions/HelperMacros.h> + #include <string> #include <numeric> -#include <cppunit/extensions/HelperMacros.h> namespace aria2 { @@ -10,11 +12,17 @@ class a2functionalTest:public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(a2functionalTest); CPPUNIT_TEST(testMemFunSh); CPPUNIT_TEST(testAdopt2nd); + CPPUNIT_TEST(testStrjoin); + CPPUNIT_TEST(testStrconcat); + CPPUNIT_TEST(testStrappend); CPPUNIT_TEST_SUITE_END(); public: void testMemFunSh(); void testAdopt2nd(); - + void testStrjoin(); + void testStrconcat(); + void testStrappend(); + class Greeting { public: virtual ~Greeting() {} @@ -63,4 +71,33 @@ void a2functionalTest::testAdopt2nd() adopt2nd(std::plus<std::string>(), mem_fun_sh(&Greeting::sayGreeting))("A Japanese said:", greeting)); } +void a2functionalTest::testStrjoin() +{ + std::vector<std::string> v; + CPPUNIT_ASSERT_EQUAL(std::string(""), strjoin(v.begin(), v.end(), " ")); + + v.push_back("A"); + + CPPUNIT_ASSERT_EQUAL(std::string("A"), strjoin(v.begin(), v.end(), " ")); + + v.push_back("hero"); + v.push_back("is"); + v.push_back("lonely"); + + CPPUNIT_ASSERT_EQUAL(std::string("A hero is lonely"), + strjoin(v.begin(), v.end(), " ")); +} + +void a2functionalTest::testStrconcat() +{ + CPPUNIT_ASSERT_EQUAL(std::string("X=3"), strconcat("X=", "3")); +} + +void a2functionalTest::testStrappend() +{ + std::string str = "X="; + strappend(str, "3", ",Y=", "5"); + CPPUNIT_ASSERT_EQUAL(std::string("X=3,Y=5"), str); +} + } // namespace aria2 |
