diff options
author | Mark Spruiell <mes@zeroc.com> | 2012-11-09 16:22:47 -0800 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2012-11-09 16:22:47 -0800 |
commit | 493caea19fd83663eb03b4eeaf7714f99ac07b97 (patch) | |
tree | 39f8b7dc983394288cb25961a0907ebe0b0f5847 /java/test | |
parent | ICE-4914 - Update Database/Oracle demos (diff) | |
download | ice-493caea19fd83663eb03b4eeaf7714f99ac07b97.tar.bz2 ice-493caea19fd83663eb03b4eeaf7714f99ac07b97.tar.xz ice-493caea19fd83663eb03b4eeaf7714f99ac07b97.zip |
ICE-4930 - fixes for scripting languages
Diffstat (limited to 'java/test')
-rw-r--r-- | java/test/Ice/optional/AMDInitialI.java | 13 | ||||
-rw-r--r-- | java/test/Ice/optional/AllTests.java | 30 | ||||
-rw-r--r-- | java/test/Ice/optional/InitialI.java | 11 | ||||
-rw-r--r-- | java/test/Ice/optional/Test.ice | 7 | ||||
-rw-r--r-- | java/test/Ice/optional/TestAMD.ice | 7 |
5 files changed, 68 insertions, 0 deletions
diff --git a/java/test/Ice/optional/AMDInitialI.java b/java/test/Ice/optional/AMDInitialI.java index 69b7a0b3dae..9a67487788c 100644 --- a/java/test/Ice/optional/AMDInitialI.java +++ b/java/test/Ice/optional/AMDInitialI.java @@ -485,6 +485,19 @@ public final class AMDInitialI extends Initial } public void + sendOptionalClass_async(AMD_Initial_sendOptionalClass cb, boolean req, Ice.Optional<OneOptional> o, + Ice.Current current) + { + cb.ice_response(); + } + + public void + returnOptionalClass_async(AMD_Initial_returnOptionalClass cb, boolean req, Ice.Current current) + { + cb.ice_response(new Ice.Optional<OneOptional>(new OneOptional(53))); + } + + public void supportsRequiredParams_async(AMD_Initial_supportsRequiredParams cb, Ice.Current current) { cb.ice_response(true); diff --git a/java/test/Ice/optional/AllTests.java b/java/test/Ice/optional/AllTests.java index 95e2a815d43..4782a02b03f 100644 --- a/java/test/Ice/optional/AllTests.java +++ b/java/test/Ice/optional/AllTests.java @@ -383,6 +383,19 @@ public class AllTests test(cb.obj != null && cb.obj instanceof TestObjectReader); factory.setEnabled(false); + // + // Use the 1.0 encoding with operations whose only class parameters are optional. + // + Ice.Optional<OneOptional> oo = new Ice.Optional<OneOptional>(new OneOptional(53)); + initial.sendOptionalClass(true, oo); + InitialPrx initial2 = (InitialPrx)initial.ice_encodingVersion(Ice.Util.Encoding_1_0); + initial2.sendOptionalClass(true, oo); + + initial.returnOptionalClass(true, oo); + test(oo.isSet()); + initial2.returnOptionalClass(true, oo); + test(!oo.isSet()); + out.println("ok"); out.print("testing marshaling of large containers with fixed size elements... "); @@ -2068,6 +2081,23 @@ public class AllTests try { + // + // Use the 1.0 encoding with an exception whose only class members are optional. + // + Ice.IntOptional a = new Ice.IntOptional(30); + Ice.Optional<String> b = new Ice.Optional<String>("test"); + Ice.Optional<OneOptional> o = new Ice.Optional<OneOptional>(new OneOptional(53)); + initial2.opOptionalException(a, b, o); + } + catch(OptionalException ex) + { + test(!ex.hasA()); + test(!ex.hasB()); + test(!ex.hasO()); + } + + try + { Ice.IntOptional a = new Ice.IntOptional(); Ice.Optional<String> b = new Ice.Optional<String>(); Ice.Optional<OneOptional> o = new Ice.Optional<OneOptional>(); diff --git a/java/test/Ice/optional/InitialI.java b/java/test/Ice/optional/InitialI.java index e07bb4a1a2c..d16c997c82d 100644 --- a/java/test/Ice/optional/InitialI.java +++ b/java/test/Ice/optional/InitialI.java @@ -534,6 +534,17 @@ public final class InitialI extends Initial { } + public void + sendOptionalClass(boolean req, Ice.Optional<OneOptional> o, Ice.Current current) + { + } + + public void + returnOptionalClass(boolean req, Ice.Optional<OneOptional> o, Ice.Current current) + { + o.set(new OneOptional(53)); + } + public boolean supportsRequiredParams(Ice.Current current) { diff --git a/java/test/Ice/optional/Test.ice b/java/test/Ice/optional/Test.ice index 3fbe93fbfff..b506ae5303e 100644 --- a/java/test/Ice/optional/Test.ice +++ b/java/test/Ice/optional/Test.ice @@ -137,6 +137,7 @@ class WD exception OptionalException { + bool req = false; optional(1) int a = 5; optional(2) string b; optional(50) OneOptional o; @@ -282,6 +283,12 @@ class Initial void opClassAndUnknownOptional(A p); + ["java:optional"] + void sendOptionalClass(bool req, optional(1) OneOptional o); + + ["java:optional"] + void returnOptionalClass(bool req, out optional(1) OneOptional o); + bool supportsRequiredParams(); bool supportsJavaSerializable(); diff --git a/java/test/Ice/optional/TestAMD.ice b/java/test/Ice/optional/TestAMD.ice index bfdfd0e175e..acb84d0dc02 100644 --- a/java/test/Ice/optional/TestAMD.ice +++ b/java/test/Ice/optional/TestAMD.ice @@ -137,6 +137,7 @@ class WD exception OptionalException { + bool req = false; optional(1) int a = 5; optional(2) string b; optional(50) OneOptional o; @@ -282,6 +283,12 @@ class Initial void opClassAndUnknownOptional(A p); + ["java:optional"] + void sendOptionalClass(bool req, optional(1) OneOptional o); + + ["java:optional"] + void returnOptionalClass(bool req, out optional(1) OneOptional o); + bool supportsRequiredParams(); bool supportsJavaSerializable(); |