diff options
Diffstat (limited to 'TAO/tests/DynAny_Test/test_dynsequence.cpp')
-rw-r--r-- | TAO/tests/DynAny_Test/test_dynsequence.cpp | 68 |
1 files changed, 41 insertions, 27 deletions
diff --git a/TAO/tests/DynAny_Test/test_dynsequence.cpp b/TAO/tests/DynAny_Test/test_dynsequence.cpp index d5c911a05ce..d0591261ffc 100644 --- a/TAO/tests/DynAny_Test/test_dynsequence.cpp +++ b/TAO/tests/DynAny_Test/test_dynsequence.cpp @@ -16,8 +16,6 @@ // // ============================================================================ -#include "tao/corba.h" -#include "tao/DynSequence_i.h" #include "test_dynsequence.h" #include "da_testsC.h" #include "data.h" @@ -62,37 +60,49 @@ Test_DynSequence::run_test (void) ts[1] = data.m_string2; CORBA_Any in_any1; in_any1 <<= ts; - TAO_DynSequence_i fa1 (in_any1); - fa1.seek (1, - TAO_TRY_ENV); + CORBA_DynAny_ptr dp1 = + this->orb_->create_dyn_any (in_any1, + TAO_TRY_ENV); TAO_CHECK_ENV; - fa1.insert_string (data.m_string1, - TAO_TRY_ENV); + CORBA_DynSequence_ptr fa1 = CORBA_DynSequence::_narrow (dp1, + TAO_TRY_ENV); TAO_CHECK_ENV; - fa1.rewind (TAO_TRY_ENV); + fa1->seek (1, + TAO_TRY_ENV); TAO_CHECK_ENV; - fa1.seek (1, - TAO_TRY_ENV); + fa1->insert_string (data.m_string1, + TAO_TRY_ENV); TAO_CHECK_ENV; - CORBA::String out_str = fa1.get_string (TAO_TRY_ENV); + fa1->rewind (TAO_TRY_ENV); TAO_CHECK_ENV; - if (!ACE_OS::strcmp (out_str, data.m_string1)) + fa1->seek (1, + TAO_TRY_ENV); + TAO_CHECK_ENV; + CORBA::String out_str1 = fa1->get_string (TAO_TRY_ENV); + TAO_CHECK_ENV; + if (!ACE_OS::strcmp (out_str1, data.m_string1)) ACE_DEBUG ((LM_DEBUG, "++ OK ++\n")); else ++this->error_count_; + // Created with NEW + delete out_str1; + ACE_DEBUG ((LM_DEBUG, "testing: constructor(TypeCode)/from_any/to_any\n")); - TAO_DynSequence_i ftc1 (DynAnyTests::_tc_test_seq); + CORBA_DynSequence_ptr ftc1 = + this->orb_->create_dyn_sequence (DynAnyTests::_tc_test_seq, + TAO_TRY_ENV); + TAO_CHECK_ENV; ts[0] = data.m_string1; CORBA_Any in_any2; in_any2 <<= ts; - ftc1.from_any (in_any2, - TAO_TRY_ENV); + ftc1->from_any (in_any2, + TAO_TRY_ENV); TAO_CHECK_ENV; - CORBA::Any* out_any1 = ftc1.to_any (TAO_TRY_ENV); + CORBA::Any* out_any1 = ftc1->to_any (TAO_TRY_ENV); TAO_CHECK_ENV; DynAnyTests::test_seq* ts_out; *out_any1 >>= ts_out; @@ -109,12 +119,12 @@ Test_DynSequence::run_test (void) ACE_DEBUG ((LM_DEBUG, "testing: length/set_elements/get_elements\n")); - if (ftc1.length (TAO_TRY_ENV) != 2) + if (ftc1->length (TAO_TRY_ENV) != 2) ++this->error_count_; TAO_CHECK_ENV; - ftc1.length (3, - TAO_TRY_ENV); + ftc1->length (3, + TAO_TRY_ENV); TAO_CHECK_ENV; AnySeq as_in (3); as_in.length (3); @@ -124,15 +134,15 @@ Test_DynSequence::run_test (void) as_in[1] = in_any3; in_any3 <<= CORBA::Any::from_string (data.m_string1, 0); as_in[2] = in_any3; - ftc1.set_elements (as_in, - TAO_TRY_ENV); + ftc1->set_elements (as_in, + TAO_TRY_ENV); TAO_CHECK_ENV; - AnySeq* as_out = ftc1.get_elements (TAO_TRY_ENV); + AnySeq* as_out = ftc1->get_elements (TAO_TRY_ENV); TAO_CHECK_ENV; CORBA_Any out_any2 = (*as_out)[2]; - CORBA::String str_out; - out_any2 >>= CORBA::Any::to_string (str_out, 0); - if (ACE_OS::strcmp (str_out, data.m_string1)) + CORBA::String out_str2; + out_any2 >>= CORBA::Any::to_string (out_str2, 0); + if (ACE_OS::strcmp (out_str2, data.m_string1)) ++this->error_count_; if (this->error_count_ == 0) ACE_DEBUG ((LM_DEBUG, @@ -140,11 +150,15 @@ Test_DynSequence::run_test (void) // Created with NEW delete as_out; + delete out_str2; - fa1.destroy (TAO_TRY_ENV); + fa1->destroy (TAO_TRY_ENV); TAO_CHECK_ENV; - ftc1.destroy (TAO_TRY_ENV); + CORBA::release (fa1); + CORBA::release (dp1); + ftc1->destroy (TAO_TRY_ENV); TAO_CHECK_ENV; + CORBA::release (ftc1); } TAO_CATCHANY { |