summaryrefslogtreecommitdiff
path: root/python/test/Ice/exceptions/TestI.py
diff options
context:
space:
mode:
authorMatthew Newhook <matthew@zeroc.com>2015-03-21 15:35:40 -0230
committerMatthew Newhook <matthew@zeroc.com>2015-03-21 15:35:40 -0230
commit630a37d2fe66f24518299e705f958b571803c522 (patch)
tree969723791bdc4d73bb099c19d45554d0ca241ad9 /python/test/Ice/exceptions/TestI.py
parentFix some README.md markdown formatting (diff)
downloadice-630a37d2fe66f24518299e705f958b571803c522.tar.bz2
ice-630a37d2fe66f24518299e705f958b571803c522.tar.xz
ice-630a37d2fe66f24518299e705f958b571803c522.zip
py -> python
rb -> ruby objc -> objective-c cs -> csharp
Diffstat (limited to 'python/test/Ice/exceptions/TestI.py')
-rw-r--r--python/test/Ice/exceptions/TestI.py108
1 files changed, 108 insertions, 0 deletions
diff --git a/python/test/Ice/exceptions/TestI.py b/python/test/Ice/exceptions/TestI.py
new file mode 100644
index 00000000000..7ff371fc0b1
--- /dev/null
+++ b/python/test/Ice/exceptions/TestI.py
@@ -0,0 +1,108 @@
+# **********************************************************************
+#
+# Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
+#
+# This copy of Ice is licensed to you under the terms described in the
+# ICE_LICENSE file included in this distribution.
+#
+# **********************************************************************
+
+import Ice, Test, array, sys
+
+class ThrowerI(Test.Thrower):
+ def shutdown(self, current=None):
+ current.adapter.getCommunicator().shutdown()
+
+ def supportsUndeclaredExceptions(self, current=None):
+ return True
+
+ def supportsAssertException(self, current=None):
+ return False
+
+ def throwAasA(self, a, current=None):
+ ex = Test.A()
+ ex.aMem = a
+ raise ex
+
+ def throwAorDasAorD(self, a, current=None):
+ if a > 0:
+ ex = Test.A()
+ ex.aMem = a
+ raise ex
+ else:
+ ex = Test.D()
+ ex.dMem = a
+ raise ex
+
+ def throwBasA(self, a, b, current=None):
+ self.throwBasB(a, b, current)
+
+ def throwCasA(self, a, b, c, current=None):
+ self.throwCasC(a, b, c, current)
+
+ def throwBasB(self, a, b, current=None):
+ ex = Test.B()
+ ex.aMem = a
+ ex.bMem = b
+ raise ex
+
+ def throwCasB(self, a, b, c, current=None):
+ self.throwCasC(a, b, c, current)
+
+ def throwCasC(self, a, b, c, current=None):
+ ex = Test.C()
+ ex.aMem = a
+ ex.bMem = b
+ ex.cMem = c
+ raise ex
+
+ def throwModA(self, a, a2, current=None):
+ ex = Test.Mod.A()
+ ex.aMem = a
+ ex.a2Mem = a2
+ raise ex
+
+ def throwUndeclaredA(self, a, current=None):
+ ex = Test.A()
+ ex.aMem = a
+ raise ex
+
+ def throwUndeclaredB(self, a, b, current=None):
+ ex = Test.B()
+ ex.aMem = a
+ ex.bMem = b
+ raise ex
+
+ def throwUndeclaredC(self, a, b, c, current=None):
+ ex = Test.C()
+ ex.aMem = a
+ ex.bMem = b
+ ex.cMem = c
+ raise ex
+
+ def throwLocalException(self, current=None):
+ raise Ice.TimeoutException()
+
+ def throwNonIceException(self, current=None):
+ raise RuntimeError("12345")
+
+ def throwAssertException(self, current=None):
+ raise RuntimeError("operation `throwAssertException' not supported")
+
+ def throwMemoryLimitException(self, seq, current=None):
+ return bytearray(20 * 1024)
+
+ def throwLocalExceptionIdempotent(self, current=None):
+ raise Ice.TimeoutException()
+
+ def throwAfterResponse(self, current=None):
+ #
+ # Only relevant for AMD.
+ #
+ pass
+
+ def throwAfterException(self, current=None):
+ #
+ # Only relevant for AMD.
+ #
+ raise Test.A()