diff options
author | Benoit Foucher <benoit@zeroc.com> | 2013-06-27 11:12:58 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2013-06-27 11:12:58 +0200 |
commit | e40c00eaabd62e0650bc75a7cb72b4424d0e280b (patch) | |
tree | 016cf0d5a6ce62a373139afa3dca609b733cf9ac /cpp/test/Ice/plugin/Client.cpp | |
parent | Removed PropertiesAdmin.h from repository, it's now generated (diff) | |
download | ice-e40c00eaabd62e0650bc75a7cb72b4424d0e280b.tar.bz2 ice-e40c00eaabd62e0650bc75a7cb72b4424d0e280b.tar.xz ice-e40c00eaabd62e0650bc75a7cb72b4424d0e280b.zip |
Fixed ICE-5363: unexpected string::substr exception thrown
Diffstat (limited to 'cpp/test/Ice/plugin/Client.cpp')
-rw-r--r-- | cpp/test/Ice/plugin/Client.cpp | 65 |
1 files changed, 64 insertions, 1 deletions
diff --git a/cpp/test/Ice/plugin/Client.cpp b/cpp/test/Ice/plugin/Client.cpp index 2788d7ca47f..cb73f68e610 100644 --- a/cpp/test/Ice/plugin/Client.cpp +++ b/cpp/test/Ice/plugin/Client.cpp @@ -79,8 +79,71 @@ main(int argc, char* argv[]) { Ice::InitializationData initData; initData.properties = Ice::createProperties(argc, argv); + initData.properties->setProperty("Ice.Plugin.Test", "plugins/TestPlugin:createPlugin"); + communicator = Ice::initialize(argc, argv, initData); + communicator->destroy(); + } + catch(const Ice::Exception& ex) + { + cerr << ex << endl; + test(false); + } + try + { + int majorVersion = (ICE_INT_VERSION / 10000); + int minorVersion = (ICE_INT_VERSION / 100) - majorVersion * 100; + ostringstream os; + os << "plugins/TestPlugin,"; + os << majorVersion * 10 + minorVersion; + int patchVersion = ICE_INT_VERSION % 100; + if(patchVersion > 50) + { + os << 'b'; + if(patchVersion >= 52) + { + os << (patchVersion - 50); + } + } + os << ":createPlugin"; + Ice::InitializationData initData; + initData.properties = Ice::createProperties(argc, argv); + initData.properties->setProperty("Ice.Plugin.Test", os.str()); + communicator = Ice::initialize(argc, argv, initData); + communicator->destroy(); + } + catch(const Ice::Exception& ex) + { + cerr << ex << endl; + test(false); + } + try + { + Ice::InitializationData initData; + initData.properties = Ice::createProperties(argc, argv); + initData.properties->setProperty("Ice.Plugin.Test", "plugins/TestPlugin,10:createPlugin"); + communicator = Ice::initialize(argc, argv, initData); + test(false); + } + catch(const Ice::PluginInitializationException&) + { + } + try + { + Ice::InitializationData initData; + initData.properties = Ice::createProperties(argc, argv); + initData.properties->setProperty("Ice.Plugin.Test", "TestPlugin,1.0.0:createPlugin"); + communicator = Ice::initialize(argc, argv, initData); + test(false); + } + catch(const Ice::PluginInitializationException&) + { + } + try + { + Ice::InitializationData initData; + initData.properties = Ice::createProperties(argc, argv); initData.properties->setProperty("Ice.Plugin.Test", - "plugins/TestPlugin:createPlugin 'C:\\Program Files\\' --DatabasePath " + "plugins/TestPlugin:createPluginWithArgs 'C:\\Program Files\\' --DatabasePath " "'C:\\Program Files\\Application\\db'" ); communicator = Ice::initialize(argc, argv, initData); communicator->destroy(); |