diff options
Diffstat (limited to 'TAO/tests/Connection_Failure/client.cpp')
-rw-r--r-- | TAO/tests/Connection_Failure/client.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/TAO/tests/Connection_Failure/client.cpp b/TAO/tests/Connection_Failure/client.cpp new file mode 100644 index 00000000000..3f008044d8d --- /dev/null +++ b/TAO/tests/Connection_Failure/client.cpp @@ -0,0 +1,41 @@ +// $Id$ + +#include "testC.h" +#include "tao/SystemException.h" + +#include "ace/Log_Msg.h" + +ACE_RCSID (Connection_Failure, + client, + "$Id$") + +const char *ior = + "corbaloc:iiop:192.3.47/10007/RandomObject"; + +int +main (int argc, char *argv[]) +{ + try + { + CORBA::ORB_var orb = + CORBA::ORB_init (argc, argv); + + CORBA::Object_var tmp = + orb->string_to_object (ior); + + // First connection happens here.. + test::_narrow (tmp.in ()); + } + catch (const CORBA::TRANSIENT& ) + { + // This exception is correct. + ACE_DEBUG ((LM_DEBUG, + "_narrow() to non-existent object failed correctly. Test succeeded.\n")); + return 0; + } + + // Should not reach here. + ACE_ERROR_RETURN ((LM_ERROR, + "_narrow() succeeded to non-existent object when it should not have...\n"), + -1); +} |