2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-21 05:02:17 +00:00
Files
python/test/polymorphism.py
Dave Abrahams 0ad3bfd0ab Finally fixed polymorphism issues
[SVN r16435]
2002-11-27 07:04:32 +00:00

39 lines
918 B
Python

import unittest
from polymorphism_ext import *
class PolymorphTest(unittest.TestCase):
def testReturnCpp(self):
# Python Created Object With Same Id As
# Cpp Created B Object
# b = B(872)
# Get Reference To Cpp Created B Object
a = getBCppObj()
# Python Created B Object and Cpp B Object
# Should have same result by calling f()
self.failUnlessEqual ('B::f()', a.f())
self.failUnlessEqual ('B::f()', call_f(a))
self.failUnlessEqual ('A::f()', call_f(A()))
def testReturnPy(self):
class C(A):
def f(self):
return 'C.f'
c = C()
self.failUnlessEqual ('C.f', c.f())
self.failUnlessEqual ('C.f', call_f(c))
if __name__ == "__main__":
# remove the option which upsets unittest
import sys
sys.argv = [ x for x in sys.argv if x != '--broken-auto-ptr' ]
unittest.main()