summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2015-05-08 12:44:14 -0230
committerDwayne Boone <dwayne@zeroc.com>2015-05-08 12:44:14 -0230
commitd28ec2cd55c6a1672a499b5245ac080dfb4703c1 (patch)
tree89e4ff148f212e157a5ed97475cd1e3606fa80fd /python
parentRe-synchronized README (diff)
downloadice-d28ec2cd55c6a1672a499b5245ac080dfb4703c1.tar.bz2
ice-d28ec2cd55c6a1672a499b5245ac080dfb4703c1.tar.xz
ice-d28ec2cd55c6a1672a499b5245ac080dfb4703c1.zip
ICE-6485 enums tests fails with --cross=objective-c
Diffstat (limited to 'python')
-rw-r--r--python/test/Ice/enums/AllTests.py42
-rwxr-xr-xpython/test/Ice/enums/Server.py12
-rw-r--r--python/test/Ice/enums/Test.ice9
3 files changed, 63 insertions, 0 deletions
diff --git a/python/test/Ice/enums/AllTests.py b/python/test/Ice/enums/AllTests.py
index a5dae46cff9..60694e9c60d 100644
--- a/python/test/Ice/enums/AllTests.py
+++ b/python/test/Ice/enums/AllTests.py
@@ -125,4 +125,46 @@ def allTests(communicator):
print("ok")
+ sys.stdout.write("testing enum sequences operations... ")
+ sys.stdout.flush()
+
+ b1 = [ Test.ByteEnum.benum1, Test.ByteEnum.benum2, Test.ByteEnum.benum3, Test.ByteEnum.benum4, Test.ByteEnum.benum5,
+ Test.ByteEnum.benum6, Test.ByteEnum.benum7, Test.ByteEnum.benum8, Test.ByteEnum.benum9, Test.ByteEnum.benum10,
+ Test.ByteEnum.benum11 ]
+
+ (b2, b3) = proxy.opByteSeq(b1)
+
+ for i in range(len(b1)):
+ test(b1[i] == b2[i])
+ test(b1[i] == b3[i])
+
+ s1 = [ Test.ShortEnum.senum1, Test.ShortEnum.senum2, Test.ShortEnum.senum3, Test.ShortEnum.senum4,
+ Test.ShortEnum.senum5, Test.ShortEnum.senum6, Test.ShortEnum.senum7, Test.ShortEnum.senum8,
+ Test.ShortEnum.senum9, Test.ShortEnum.senum10, Test.ShortEnum.senum11 ]
+
+ (s2, s3) = proxy.opShortSeq(s1)
+
+ for i in range(len(s1)):
+ test(s1[i] == s2[i])
+ test(s1[i] == s3[i])
+
+ i1 = [ Test.IntEnum.ienum1, Test.IntEnum.ienum2, Test.IntEnum.ienum3, Test.IntEnum.ienum4,
+ Test.IntEnum.ienum5, Test.IntEnum.ienum6, Test.IntEnum.ienum7, Test.IntEnum.ienum8,
+ Test.IntEnum.ienum9, Test.IntEnum.ienum10, Test.IntEnum.ienum11 ]
+
+ (i2, i3) = proxy.opIntSeq(i1)
+
+ for i in range(len(i1)):
+ test(i1[i] == i2[i])
+ test(i1[i] == i3[i])
+
+ s1 = [ Test.SimpleEnum.red, Test.SimpleEnum.green, Test.SimpleEnum.blue ]
+
+ (s2, s3) = proxy.opSimpleSeq(s1)
+
+ for i in range(len(s1)):
+ test(s1[i] == s2[i])
+ test(s1[i] == s3[i])
+ print("ok")
+
return proxy
diff --git a/python/test/Ice/enums/Server.py b/python/test/Ice/enums/Server.py
index f51922e12fc..cfaed170f22 100755
--- a/python/test/Ice/enums/Server.py
+++ b/python/test/Ice/enums/Server.py
@@ -31,6 +31,18 @@ class TestIntfI(Test.TestIntf):
def opSimple(self, s1, current=None):
return (s1, s1)
+ def opByteSeq(self, b1, current=None):
+ return (b1, b1)
+
+ def opShortSeq(self, s1, current=None):
+ return (s1, s1)
+
+ def opIntSeq(self, i1, current=None):
+ return (i1, i1)
+
+ def opSimpleSeq(self, s1, current=None):
+ return (s1, s1)
+
def shutdown(self, current=None):
current.adapter.getCommunicator().shutdown()
diff --git a/python/test/Ice/enums/Test.ice b/python/test/Ice/enums/Test.ice
index 1cfe8c3eda8..8f613f4e80c 100644
--- a/python/test/Ice/enums/Test.ice
+++ b/python/test/Ice/enums/Test.ice
@@ -36,6 +36,7 @@ enum ByteEnum
benum10,
benum11 = ByteConst2
};
+sequence<ByteEnum> ByteEnumSeq;
enum ShortEnum
{
@@ -51,6 +52,7 @@ enum ShortEnum
senum10,
senum11 = ShortConst2
};
+sequence<ShortEnum> ShortEnumSeq;
enum IntEnum
{
@@ -67,6 +69,7 @@ enum IntEnum
ienum11 = IntConst2,
ienum12 = LongConst2
};
+sequence<IntEnum> IntEnumSeq;
enum SimpleEnum
{
@@ -74,6 +77,7 @@ enum SimpleEnum
green,
blue
};
+sequence<SimpleEnum> SimpleEnumSeq;
interface TestIntf
{
@@ -82,6 +86,11 @@ interface TestIntf
IntEnum opInt(IntEnum i1, out IntEnum i2);
SimpleEnum opSimple(SimpleEnum s1, out SimpleEnum s2);
+ ByteEnumSeq opByteSeq(ByteEnumSeq b1, out ByteEnumSeq b2);
+ ShortEnumSeq opShortSeq(ShortEnumSeq s1, out ShortEnumSeq s2);
+ IntEnumSeq opIntSeq(IntEnumSeq i1, out IntEnumSeq i2);
+ SimpleEnumSeq opSimpleSeq(SimpleEnumSeq s1, out SimpleEnumSeq s2);
+
void shutdown();
};