summaryrefslogtreecommitdiff
path: root/python/test/Ice/inheritance/AllTests.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/test/Ice/inheritance/AllTests.py')
-rw-r--r--python/test/Ice/inheritance/AllTests.py216
1 files changed, 216 insertions, 0 deletions
diff --git a/python/test/Ice/inheritance/AllTests.py b/python/test/Ice/inheritance/AllTests.py
new file mode 100644
index 00000000000..67922a33ff5
--- /dev/null
+++ b/python/test/Ice/inheritance/AllTests.py
@@ -0,0 +1,216 @@
+# **********************************************************************
+#
+# 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, sys
+
+def test(b):
+ if not b:
+ raise RuntimeError('test assertion failed')
+
+def allTests(communicator):
+ sys.stdout.write("testing stringToProxy... ")
+ sys.stdout.flush()
+ ref = "initial:default -p 12010"
+ base = communicator.stringToProxy(ref)
+ test(base)
+ print("ok")
+
+ sys.stdout.write("testing checked cast... ")
+ sys.stdout.flush()
+ initial = Test.InitialPrx.checkedCast(base)
+ test(initial)
+ test(initial == base)
+ print("ok")
+
+ sys.stdout.write("getting proxies for class hierarchy... ")
+ sys.stdout.flush()
+ ca = initial.caop()
+ cb = initial.cbop()
+ cc = initial.ccop()
+ cd = initial.cdop()
+ test(ca != cb)
+ test(ca != cc)
+ test(ca != cd)
+ test(cb != cc)
+ test(cb != cd)
+ test(cc != cd)
+ print("ok")
+
+ sys.stdout.write("getting proxies for interface hierarchy... ")
+ sys.stdout.flush()
+ ia = initial.iaop()
+ ib1 = initial.ib1op()
+ ib2 = initial.ib2op()
+ ic = initial.icop()
+ test(ia != ib1)
+ test(ia != ib2)
+ test(ia != ic)
+ test(ib1 != ic)
+ test(ib2 != ic)
+ print("ok")
+
+ sys.stdout.write("invoking proxy operations on class hierarchy... ")
+ sys.stdout.flush()
+ cao = ca.caop(ca)
+ test(cao == ca)
+ cao = ca.caop(cb)
+ test(cao == cb)
+ cao = ca.caop(cc)
+ test(cao == cc)
+ cao = cb.caop(ca)
+ test(cao == ca)
+ cao = cb.caop(cb)
+ test(cao == cb)
+ cao = cb.caop(cc)
+ test(cao == cc)
+ cao = cc.caop(ca)
+ test(cao == ca)
+ cao = cc.caop(cb)
+ test(cao == cb)
+ cao = cc.caop(cc)
+ test(cao == cc)
+
+ cao = cb.cbop(cb)
+ test(cao == cb)
+ cbo = cb.cbop(cb)
+ test(cbo == cb)
+ cao = cb.cbop(cc)
+ test(cao == cc)
+ cbo = cb.cbop(cc)
+ test(cbo == cc)
+ cao = cc.cbop(cb)
+ test(cao == cb)
+ cbo = cc.cbop(cb)
+ test(cbo == cb)
+ cao = cc.cbop(cc)
+ test(cao == cc)
+ cbo = cc.cbop(cc)
+ test(cbo == cc)
+
+ cao = cc.ccop(cc)
+ test(cao == cc)
+ cbo = cc.ccop(cc)
+ test(cbo == cc)
+ cco = cc.ccop(cc)
+ test(cco == cc)
+ print("ok")
+
+ sys.stdout.write("ditto, but for interface hierarchy... ")
+ sys.stdout.flush()
+ iao = ia.iaop(ia)
+ test(iao == ia)
+ iao = ia.iaop(ib1)
+ test(iao == ib1)
+ iao = ia.iaop(ib2)
+ test(iao == ib2)
+ iao = ia.iaop(ic)
+ test(iao == ic)
+ iao = ib1.iaop(ia)
+ test(iao == ia)
+ iao = ib1.iaop(ib1)
+ test(iao == ib1)
+ iao = ib1.iaop(ib2)
+ test(iao == ib2)
+ iao = ib1.iaop(ic)
+ test(iao == ic)
+ iao = ib2.iaop(ia)
+ test(iao == ia)
+ iao = ib2.iaop(ib1)
+ test(iao == ib1)
+ iao = ib2.iaop(ib2)
+ test(iao == ib2)
+ iao = ib2.iaop(ic)
+ test(iao == ic)
+ iao = ic.iaop(ia)
+ test(iao == ia)
+ iao = ic.iaop(ib1)
+ test(iao == ib1)
+ iao = ic.iaop(ib2)
+ test(iao == ib2)
+ iao = ic.iaop(ic)
+ test(iao == ic)
+
+ iao = ib1.ib1op(ib1)
+ test(iao == ib1)
+ ib1o = ib1.ib1op(ib1)
+ test(ib1o == ib1)
+ iao = ib1.ib1op(ic)
+ test(iao == ic)
+ ib1o = ib1.ib1op(ic)
+ test(ib1o == ic)
+ iao = ic.ib1op(ib1)
+ test(iao == ib1)
+ ib1o = ic.ib1op(ib1)
+ test(ib1o == ib1)
+ iao = ic.ib1op(ic)
+ test(iao == ic)
+ ib1o = ic.ib1op(ic)
+ test(ib1o == ic)
+
+ iao = ib2.ib2op(ib2)
+ test(iao == ib2)
+ ib2o = ib2.ib2op(ib2)
+ test(ib2o == ib2)
+ iao = ib2.ib2op(ic)
+ test(iao == ic)
+ ib2o = ib2.ib2op(ic)
+ test(ib2o == ic)
+ iao = ic.ib2op(ib2)
+ test(iao == ib2)
+ ib2o = ic.ib2op(ib2)
+ test(ib2o == ib2)
+ iao = ic.ib2op(ic)
+ test(iao == ic)
+ ib2o = ic.ib2op(ic)
+ test(ib2o == ic)
+
+ iao = ic.icop(ic)
+ test(iao == ic)
+ ib1o = ic.icop(ic)
+ test(ib1o == ic)
+ ib2o = ic.icop(ic)
+ test(ib2o == ic)
+ ico = ic.icop(ic)
+ test(ico == ic)
+
+ print("ok")
+
+ sys.stdout.write("ditto, but for class implementing interfaces... ")
+ sys.stdout.flush()
+ cao = cd.caop(cd)
+ test(cao == cd)
+ cbo = cd.cbop(cd)
+ test(cbo == cd)
+ cco = cd.ccop(cd)
+ test(cco == cd)
+
+ iao = cd.iaop(cd)
+ test(iao == cd)
+ ib1o = cd.ib1op(cd)
+ test(ib1o == cd)
+ ib2o = cd.ib2op(cd)
+ test(ib2o == cd)
+
+ cao = cd.cdop(cd)
+ test(cao == cd)
+ cbo = cd.cdop(cd)
+ test(cbo == cd)
+ cco = cd.cdop(cd)
+ test(cco == cd)
+
+ iao = cd.cdop(cd)
+ test(iao == cd)
+ ib1o = cd.cdop(cd)
+ test(ib1o == cd)
+ ib2o = cd.cdop(cd)
+ test(ib2o == cd)
+
+ print("ok")
+
+ return initial