From aa6809bd9431b5cc3952d6a6e2abde76b2bf003c Mon Sep 17 00:00:00 2001 From: Benoit Foucher Date: Fri, 18 Dec 2009 21:13:09 +0100 Subject: Fixed bug 4511 - properties override doesn't handle quotes --- cpp/test/IceGrid/activation/run.py | 5 ++-- cpp/test/IceGrid/replication/run.py | 3 +-- cpp/test/IceGrid/session/run.py | 2 +- cpp/test/IceGrid/update/run.py | 7 +++--- cpp/test/IceUtil/inputUtil/Client.cpp | 45 +++++++++++++++++++++++++++++++++++ 5 files changed, 53 insertions(+), 9 deletions(-) (limited to 'cpp/test') diff --git a/cpp/test/IceGrid/activation/run.py b/cpp/test/IceGrid/activation/run.py index de13d8e8020..2c65cf1a8aa 100755 --- a/cpp/test/IceGrid/activation/run.py +++ b/cpp/test/IceGrid/activation/run.py @@ -20,6 +20,7 @@ if len(path) == 0: sys.path.append(os.path.join(path[0])) from scripts import * -IceGridAdmin.iceGridTest("application.xml", "", - " 'properties-override=%s'" % TestUtil.getCommandLine("", TestUtil.DriverConfig("colloc")).replace("--", "")) +IceGridAdmin.iceGridTest("application.xml", + "", + "properties-override='%s'" % IceGridAdmin.iceGridNodePropertiesOverride()) diff --git a/cpp/test/IceGrid/replication/run.py b/cpp/test/IceGrid/replication/run.py index 2fef9022081..d7c1ccac6aa 100755 --- a/cpp/test/IceGrid/replication/run.py +++ b/cpp/test/IceGrid/replication/run.py @@ -26,8 +26,7 @@ if TestUtil.sqlType != None and TestUtil.sqlType != "QSQLITE": print "*** This test only supports Freeze or SQLite databases" sys.exit(0) -variables = "'properties-override=%s'" % \ - TestUtil.getCommandLine("", TestUtil.DriverConfig("server")).replace("--", "") +variables = "properties-override='%s'" % IceGridAdmin.iceGridNodePropertiesOverride() if TestUtil.sqlType != None: variables += " db-plugin=IceGridSqlDB:createSqlDB" diff --git a/cpp/test/IceGrid/session/run.py b/cpp/test/IceGrid/session/run.py index 62b7513b69f..ac8d585aac1 100755 --- a/cpp/test/IceGrid/session/run.py +++ b/cpp/test/IceGrid/session/run.py @@ -48,7 +48,7 @@ IceGridAdmin.registryOptions += \ IceGridAdmin.iceGridTest("application.xml", '--IceBinDir="%s" --TestDir="%s"' % (TestUtil.getCppBinDir(), os.getcwd()), - '\\"properties-override=%s\\"' % TestUtil.getCommandLine("", TestUtil.DriverConfig("server")).replace("--", "")) + 'properties-override=\'%s\'' % IceGridAdmin.iceGridNodePropertiesOverride()) verifierProc.waitTestSuccess() diff --git a/cpp/test/IceGrid/update/run.py b/cpp/test/IceGrid/update/run.py index 3a721ebb429..740a7c841d4 100755 --- a/cpp/test/IceGrid/update/run.py +++ b/cpp/test/IceGrid/update/run.py @@ -34,10 +34,9 @@ if not os.path.exists(node2Dir): else: IceGridAdmin.cleanDbDir(node2Dir) -nodeOverrideOptions = '--IceBinDir="%s" --TestDir="%s" --NodePropertiesOverride="%s Ice.ServerIdleTime=0 Ice.PrintProcessId=0 Ice.PrintAdapterReady=0"' % ( - TestUtil.getCppBinDir(), - os.getcwd(), - TestUtil.getCommandLine("", TestUtil.DriverConfig("server")).replace("--", "")) +nodeOverrideOptions = '--IceBinDir="%s" --TestDir="%s" ' % (TestUtil.getCppBinDir(), os.getcwd()) + \ + '--NodePropertiesOverride=\"%s Ice.ServerIdleTime=0 Ice.PrintProcessId=0 Ice.PrintAdapterReady=0\"' % \ + IceGridAdmin.iceGridNodePropertiesOverride() IceGridAdmin.iceGridTest("", nodeOverrideOptions) 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 #include +#include #include #include @@ -190,5 +191,49 @@ main(int, char**) } cout << "ok" << endl; + cout << "checking string splitting... " << flush; + { + vector 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; } -- cgit v1.2.3