diff --git a/ChangeLog b/ChangeLog index df1815950..7c60d08ca 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +kiwix-lib 8.0.1 +=============== + + * Fix join function + kiwix-lib 8.0.0 =============== diff --git a/android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle b/android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle index 1342aff0d..0ccd6b5cd 100644 --- a/android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle +++ b/android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle @@ -26,7 +26,7 @@ task writePom { project { groupId 'org.kiwix.kiwixlib' artifactId 'kiwixlib' - version '8.0.0' + (System.env.KIWIXLIB_BUILDVERSION == null ? '' : '-'+System.env.KIWIXLIB_BUILDVERSION) + version '8.0.1' + (System.env.KIWIXLIB_BUILDVERSION == null ? '' : '-'+System.env.KIWIXLIB_BUILDVERSION) packaging 'aar' name 'kiwixlib' url 'https://github.com/kiwix/kiwix-lib' diff --git a/meson.build b/meson.build index abd86718e..b6c5fe1a5 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('kiwix-lib', 'cpp', - version : '8.0.0', # Also change this in android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle + version : '8.0.1', # Also change this in android-kiwix-lib-publisher/kiwixLibAndroid/build.gradle license : 'GPL', default_options : ['c_std=c11', 'cpp_std=c++11', 'werror=true']) diff --git a/src/tools/stringTools.cpp b/src/tools/stringTools.cpp index f3d206e41..ef596f1e1 100644 --- a/src/tools/stringTools.cpp +++ b/src/tools/stringTools.cpp @@ -303,10 +303,10 @@ std::string kiwix::join(const std::vector& list, const std::string& std::stringstream ss; bool first = true; for (auto& s:list) { - if (first) { + if (!first) { ss << sep; - first = false; } + first = false; ss << s; } return ss.str(); diff --git a/test/meson.build b/test/meson.build index 2777d1ea5..437f5b528 100644 --- a/test/meson.build +++ b/test/meson.build @@ -4,7 +4,8 @@ tests = [ 'parseUrl', 'library', 'regex', - 'tagParsing' + 'tagParsing', + 'stringTools' ] diff --git a/test/stringTools.cpp b/test/stringTools.cpp new file mode 100644 index 000000000..c632f0b7c --- /dev/null +++ b/test/stringTools.cpp @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2019 Matthieu Gautier + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * is provided AS IS, WITHOUT ANY WARRANTY; without even the implied + * warranty of MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, and + * NON-INFRINGEMENT. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#include "gtest/gtest.h" +#include +#include + +namespace kiwix { +std::string join(const std::vector& list, const std::string& sep); +}; + +using namespace kiwix; +#define parse_tag getTagValueFromTagList + +namespace +{ +TEST(stringTools, join) +{ + std::vector list = { "a", "b", "c" }; + ASSERT_EQ(join(list, ";"), "a;b;c"); +} + +}; +int main(int argc, char** argv) +{ + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +}