summaryrefslogtreecommitdiff
path: root/python/test
diff options
context:
space:
mode:
Diffstat (limited to 'python/test')
-rw-r--r--python/test/Ice/objects/AllTests.py7
-rw-r--r--python/test/Ice/objects/Test.ice14
-rw-r--r--python/test/Ice/objects/TestI.py3
3 files changed, 23 insertions, 1 deletions
diff --git a/python/test/Ice/objects/AllTests.py b/python/test/Ice/objects/AllTests.py
index b8dde23b1b4..2ddefafb01b 100644
--- a/python/test/Ice/objects/AllTests.py
+++ b/python/test/Ice/objects/AllTests.py
@@ -111,6 +111,13 @@ def allTests(helper, communicator):
test(isinstance(h, Test.H))
print("ok")
+ sys.stdout.write("getting K... ")
+ sys.stdout.flush()
+ k = initial.getK()
+ test(isinstance(k.value, Test.L))
+ test(k.value.data == "l")
+ print("ok")
+
sys.stdout.write("getting D1... ")
sys.stdout.flush()
d1 = initial.getD1(Test.D1(Test.A1("a1"), Test.A1("a2"), Test.A1("a3"), Test.A1("a4")))
diff --git a/python/test/Ice/objects/Test.ice b/python/test/Ice/objects/Test.ice
index 7f9a7ebaa62..a6a3034400e 100644
--- a/python/test/Ice/objects/Test.ice
+++ b/python/test/Ice/objects/Test.ice
@@ -172,6 +172,16 @@ class Recursive
Recursive v;
}
+class K
+{
+ Value value;
+}
+
+class L
+{
+ string data;
+}
+
interface Initial
{
void shutdown();
@@ -190,9 +200,11 @@ interface Initial
void getAll(out B b1, out B b2, out C theC, out D theD);
+ I getH();
I getI();
I getJ();
- I getH();
+
+ K getK();
D1 getD1(D1 d1);
void throwEDerived() throws EDerived;
diff --git a/python/test/Ice/objects/TestI.py b/python/test/Ice/objects/TestI.py
index 7bdcbc6b338..6da50f05ef2 100644
--- a/python/test/Ice/objects/TestI.py
+++ b/python/test/Ice/objects/TestI.py
@@ -153,6 +153,9 @@ class InitialI(Test.Initial):
def getH(self, current=None):
return HI()
+ def getK(self, current=None):
+ return Test.K(Test.L("l"))
+
def getD1(self, d1, current=None):
return d1