diff options
author | Benoit Foucher <benoit@zeroc.com> | 2009-12-18 21:13:09 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2009-12-18 21:13:09 +0100 |
commit | aa6809bd9431b5cc3952d6a6e2abde76b2bf003c (patch) | |
tree | 0da37ff519b9a3b6effbd1583b61abbf6f132c2a /cpp/test/IceUtil/inputUtil/Client.cpp | |
parent | http://bugzilla/bugzilla/show_bug.cgi?id=4509 - parallel build issues. (diff) | |
download | ice-aa6809bd9431b5cc3952d6a6e2abde76b2bf003c.tar.bz2 ice-aa6809bd9431b5cc3952d6a6e2abde76b2bf003c.tar.xz ice-aa6809bd9431b5cc3952d6a6e2abde76b2bf003c.zip |
Fixed bug 4511 - properties override doesn't handle quotes
Diffstat (limited to 'cpp/test/IceUtil/inputUtil/Client.cpp')
-rw-r--r-- | cpp/test/IceUtil/inputUtil/Client.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/cpp/test/IceUtil/inputUtil/Client.cpp b/cpp/test/IceUtil/inputUtil/Client.cpp index 544ea1c6959..8341b43ecea 100644 --- a/cpp/test/IceUtil/inputUtil/Client.cpp +++ b/cpp/test/IceUtil/inputUtil/Client.cpp @@ -9,6 +9,7 @@ #include <IceUtil/Unicode.h> #include <IceUtil/InputUtil.h> +#include <IceUtil/StringUtil.h> #include <IceUtil/Options.h> #include <TestCommon.h> @@ -190,5 +191,49 @@ main(int, char**) } cout << "ok" << endl; + cout << "checking string splitting... " << flush; + { + vector<string> ss; + test(IceUtilInternal::splitString("", "", ss) && ss.empty()); + ss.clear(); + test(IceUtilInternal::splitString("", ":", ss) && ss.empty()); + ss.clear(); + test(IceUtilInternal::splitString("a", "", ss) && ss.size() == 1 && ss[0] == "a"); + ss.clear(); + test(IceUtilInternal::splitString("a", ":", ss) && ss.size() == 1 && ss[0] == "a"); + ss.clear(); + test(IceUtilInternal::splitString("ab", "", ss) && ss.size() == 1 && ss[0] == "ab"); + ss.clear(); + test(IceUtilInternal::splitString("ab:", ":", ss) && ss.size() == 1 && ss[0] == "ab"); + ss.clear(); + test(IceUtilInternal::splitString(":ab", ":", ss) && ss.size() == 1 && ss[0] == "ab"); + ss.clear(); + test(IceUtilInternal::splitString("a:b", ":", ss) && ss.size() == 2 && ss[0] == "a" && ss[1] == "b"); + ss.clear(); + test(IceUtilInternal::splitString(":a:b:", ":", ss) && ss.size() == 2 && ss[0] == "a" && ss[1] == "b"); + ss.clear(); + + test(IceUtilInternal::splitString("\"a\"", ":", ss) && ss.size() == 1 && ss[0] == "a"); + ss.clear(); + test(IceUtilInternal::splitString("\"a\":b", ":", ss) && ss.size() == 2 && ss[0] == "a" && ss[1] == "b"); + ss.clear(); + test(IceUtilInternal::splitString("\"a\":\"b\"", ":", ss) && ss.size() == 2 && ss[0] == "a" && ss[1] == "b"); + ss.clear(); + test(IceUtilInternal::splitString("\"a:b\"", ":", ss) && ss.size() == 1 && ss[0] == "a:b"); + ss.clear(); + test(IceUtilInternal::splitString("a=\"a:b\"", ":", ss) && ss.size() == 1 && ss[0] == "a=a:b"); + ss.clear(); + + test(IceUtilInternal::splitString("'a'", ":", ss) && ss.size() == 1 && ss[0] == "a"); + ss.clear(); + test(IceUtilInternal::splitString("'\"a'", ":", ss) && ss.size() == 1 && ss[0] == "\"a"); + ss.clear(); + test(IceUtilInternal::splitString("\"'a\"", ":", ss) && ss.size() == 1 && ss[0] == "'a"); + ss.clear(); + + test(!IceUtilInternal::splitString("a\"b", ":", ss)); + } + cout << "ok" << endl; + return EXIT_SUCCESS; } |