diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-08-23 21:45:36 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-08-23 21:45:36 +0200 |
commit | efa813a34dc4decad2b145002798b9207e9753b8 (patch) | |
tree | 191c95698244e817bd962d7c6509205e663d8c45 /vespalib | |
parent | f1376511dc20469576c0e3b2bceac151f9946054 (diff) |
All you need is make_string.
Diffstat (limited to 'vespalib')
-rw-r--r-- | vespalib/src/tests/stringfmt/fmt.cpp | 53 | ||||
-rw-r--r-- | vespalib/src/vespa/vespalib/util/stringfmt.cpp | 19 | ||||
-rw-r--r-- | vespalib/src/vespa/vespalib/util/vstringfmt.h | 19 |
3 files changed, 6 insertions, 85 deletions
diff --git a/vespalib/src/tests/stringfmt/fmt.cpp b/vespalib/src/tests/stringfmt/fmt.cpp index 782486886d5..f9bd0ae12fb 100644 --- a/vespalib/src/tests/stringfmt/fmt.cpp +++ b/vespalib/src/tests/stringfmt/fmt.cpp @@ -1,31 +1,11 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include <vespa/vespalib/util/stringfmt.h> -#include <vespa/vespalib/util/vstringfmt.h> -#include <vespa/vespalib/testkit/testapp.h> +#include <vespa/vespalib/testkit/test_kit.h> using vespalib::make_string; -using vespalib::make_vespa_string; -class Test : public vespalib::TestApp -{ -public: - void testSimple(); - int Main() override; -}; - -static bool eq(const vespalib::string& a, const vespalib::string& b) -{ - if (a == b) { - return true; - } else { - return false; - } -} - - -void -Test::testSimple() +TEST("test that make_string formats as one can expect.") { int i=7; int j=0x666; @@ -39,27 +19,13 @@ Test::testSimple() EXPECT_TRUE(tst == foo); EXPECT_TRUE(tst == bar); - vespalib::string foo_v = make_vespa_string("%d/%x", i, j); - vespalib::string bar_v = make_vespa_string("%d/%x", i, j).c_str(); - vespalib::string tst_v = tst; - - EXPECT_TRUE(tst_v == foo_v); - EXPECT_TRUE(tst_v == bar_v); - EXPECT_TRUE(tst == make_string("%d/%x", i, j)); - EXPECT_TRUE(tst_v == make_vespa_string("%d/%x", i, j)); tst = "a test "; - tst_v = tst; EXPECT_TRUE(tst == make_string("%s", s)); - EXPECT_TRUE(tst_v == make_vespa_string("%s", s)); tst = "a t"; EXPECT_TRUE(tst == make_string("%.3s", s)); - tst_v = tst; - foo_v = make_vespa_string("%.3s", s); - EXPECT_TRUE(eq(tst, make_string("%.3s", s))); - EXPECT_TRUE(eq(tst_v, make_vespa_string("%.3s", s))); const char *p = "really really really really " "very very very very very " @@ -70,18 +36,7 @@ Test::testSimple() "hugely hugely hugely hugely " "bloated fat long string"; tst = p; - EXPECT_TRUE(eq(tst, make_string("%s", p))); - tst_v = tst; - EXPECT_TRUE(eq(tst_v, make_vespa_string("%s", p))); -} - - -int -Test::Main() -{ - TEST_INIT("stringfmt_test"); - testSimple(); - TEST_DONE(); + EXPECT_TRUE(tst == make_string("%s", p)); } -TEST_APPHOOK(Test) +TEST_MAIN() { TEST_RUN_ALL(); } diff --git a/vespalib/src/vespa/vespalib/util/stringfmt.cpp b/vespalib/src/vespa/vespalib/util/stringfmt.cpp index 1b2af46c670..266fb60714d 100644 --- a/vespalib/src/vespa/vespalib/util/stringfmt.cpp +++ b/vespalib/src/vespa/vespalib/util/stringfmt.cpp @@ -1,14 +1,13 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "stringfmt.h" -#include "vstringfmt.h" #include <cassert> namespace vespalib { //----------------------------------------------------------------------------- -vespalib::string make_vespa_string_va(const char *fmt, va_list ap) +vespalib::string make_string_va(const char *fmt, va_list ap) { va_list ap2; vespalib::string ret; @@ -42,27 +41,13 @@ vespalib::string make_vespa_string_va(const char *fmt, va_list ap) * @param fmt format string * @return formatted vespalib::string **/ -vespalib::string make_vespa_string(const char *fmt, ...) -{ - va_list ap; - va_start(ap, fmt); - vespalib::string ret = make_vespa_string_va(fmt, ap); - va_end(ap); - return ret; -} - vespalib::string make_string(const char *fmt, ...) { va_list ap; va_start(ap, fmt); - vespalib::string ret = make_vespa_string_va(fmt, ap); + vespalib::string ret = make_string_va(fmt, ap); va_end(ap); return ret; } -vespalib::string make_string_va(const char *fmt, va_list ap) -{ - return make_vespa_string_va(fmt, ap); -} - } // namespace vespalib diff --git a/vespalib/src/vespa/vespalib/util/vstringfmt.h b/vespalib/src/vespa/vespalib/util/vstringfmt.h deleted file mode 100644 index f2dff7e8394..00000000000 --- a/vespalib/src/vespa/vespalib/util/vstringfmt.h +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#pragma once - -#include <stdarg.h> -#include <vespa/vespalib/stllike/string.h> - -namespace vespalib { - -extern vespalib::string make_vespa_string_va(const char *fmt, va_list ap); - -extern vespalib::string make_vespa_string(const char *fmt, ...) -#ifdef __GNUC__ - // Add printf format checks with gcc - __attribute__ ((format (printf,1,2))) -#endif - ; - -} // namespace vespalib - |