/** Test initializing a DynAny object from an Any value. */ public void testInitDynAnyFromAny() { String msg; EmptyException type; org.omg.CORBA.Any any = null; org.omg.CORBA.TypeCode tc = null; org.omg.DynamicAny.DynStruct dynAny = null; org.omg.DynamicAny.DynStruct dynAny2 = null; tc = EmptyExceptionHelper.type(); dynAny = createDynAnyFromTypeCode(tc); type = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, type); dynAny2 = createDynAnyFromAny(any); msg = "Failed to initialize a DynAny object from an Any object "; msg += "using the DynAny::from_any operation"; try { dynAny.from_any(any); } catch (Throwable ex) { fail(msg + ": " + ex); } assertTrue(msg, dynAny.equal(dynAny2)); }
/** Test accessing the member Name/Value DynAny pairs in a DynStruct object. */ public void testAccessStructDynAnyPairs() { String msg; org.omg.CORBA.Any any = null; EmptyException type = null; org.omg.DynamicAny.DynStruct dynAny = null; org.omg.DynamicAny.NameDynAnyPair[] pairs = null; type = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, type); dynAny = createDynAnyFromAny(any); // test extracting the name/value pairs as Anys pairs = dynAny.get_members_as_dyn_any(); msg = "Returned number of members from DynStruct::get_members operation "; msg += "is non-zero"; assertEquals(msg, 0, pairs.length); pairs = new NameDynAnyPair[0]; try { dynAny.set_members_as_dyn_any(pairs); } catch (Throwable ex) { msg = "Failed to set DynStruct members using DynStruct::set_members "; msg += "operation"; fail(msg + ": " + ex); } }
/** Tests creating a DynAny object from an Any object using the DynAnyFactory object. */ public void testFactoryCreateFromAny() { EmptyException type = null; org.omg.CORBA.Any any = null; type = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, type); createDynAnyFromAny(any); }
/** Test comparing DynAny values. */ public void testCompareDynAny() { String msg; EmptyException type; org.omg.CORBA.Any any = null; org.omg.DynamicAny.DynStruct dynAny = null; org.omg.DynamicAny.DynStruct dynAny2 = null; type = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, type); dynAny = createDynAnyFromAny(any); dynAny2 = createDynAnyFromAny(any); msg = "Comparing two equal DynAny values using DynAny::equal failed"; assertTrue(msg, dynAny.equal(dynAny2)); }
/** Test accessing the names and types of members in a DynStruct object. */ public void testAccessStructMembers() { String msg; String memberName = null; TCKind memberKind = null; org.omg.CORBA.Any any = null; EmptyException exception = null; org.omg.DynamicAny.DynStruct dynAny = null; exception = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, exception); dynAny = createDynAnyFromAny(any); // test getting the name of the current member msg = "Failed to throw a TypeMismatch exception when calling "; msg += "DynStruct::current_member_name operation on an empty exception"; try { memberName = dynAny.current_member_name(); fail(msg); } catch (AssertionFailedError ex) { throw ex; } catch (Throwable ex) { if (!(ex instanceof org.omg.DynamicAny.DynAnyPackage.TypeMismatch)) { fail(msg + ": " + ex); } } // test getting the kind of the current member msg = "Failed to throw a TypeMismatch exception when calling "; msg += "DynStruct::current_member_kind operation on an empty exception"; try { memberKind = dynAny.current_member_kind(); fail(msg); } catch (AssertionFailedError ex) { throw ex; } catch (Throwable ex) { if (!(ex instanceof org.omg.DynamicAny.DynAnyPackage.TypeMismatch)) { fail(msg + ": " + ex); } } }
/** Test destroying a DynAny object. */ public void testDestroyDynAny() { String msg; EmptyException type; org.omg.CORBA.Any any = null; org.omg.DynamicAny.DynStruct dynAny = null; type = new EmptyException(); any = orb.create_any(); EmptyExceptionHelper.insert(any, type); dynAny = createDynAnyFromAny(any); dynAny.destroy(); try { dynAny.type(); msg = "Failed to destroy DynAny using DynAny::destroy operation - "; msg += "calling DynAny::type operation on a destroyed DynAny object "; msg += "did not raise OBJECT_NOT_EXIST exception"; fail(msg); } catch (org.omg.CORBA.OBJECT_NOT_EXIST ex) { // success } msg = "Failed to destroy DynAny using DynAny::destroy operation - "; msg += "calling DynAny::current_component operation on a destroyed "; msg += "DynAny object did not raise OBJECT_NOT_EXIST exception"; try { dynAny.current_component(); fail(msg); } catch (org.omg.CORBA.OBJECT_NOT_EXIST ex) { // success } catch (org.omg.DynamicAny.DynAnyPackage.TypeMismatch ex) { fail(msg + ": " + ex); } }