Add overload of join_string for vector argument + unittest
[libi2ncommon] / test / stringfunc.cpp
index fe50d4c..ee18355 100644 (file)
@@ -621,6 +621,27 @@ BOOST_AUTO_TEST_CASE(JoinString1)
 } // eo JoinString1
 
 
+BOOST_AUTO_TEST_CASE(JoinStringVector)
+{
+    std::vector< std::string > parts;
+    get_push_back_filler(parts)("1")("2")("drei");
+
+    std::string joined_string= join_string(parts,"/");
+    // we should have slashes between the strings:
+    BOOST_CHECK_EQUAL( std::string("1/2/drei") , joined_string );
+
+    parts.push_back( std::string() );
+    joined_string= join_string(parts,"/");
+    // now we should have an additional trailing slash:
+    BOOST_CHECK_EQUAL( std::string("1/2/drei/") , joined_string );
+
+    parts.insert(parts.begin(), "");
+    joined_string= join_string(parts,"/");
+    // now we should have an additional leading slash:
+    BOOST_CHECK_EQUAL( std::string("/1/2/drei/") , joined_string );
+
+} // eo JoinStringVector
+
 
 BOOST_AUTO_TEST_CASE(ConversionStringInt)
 {