1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
# Copyright David Abrahams 2004. Distributed under the Boost
# Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
import unittest
from register_ptr import *
class RegisterPtrTest(unittest.TestCase):
def testIt(self):
class B(A):
def f(self):
return 10
a = New() # this must work
b = B()
self.assertEqual(Call(a), 0)
self.assertEqual(Call(b), 10)
def fails():
Fail(A())
self.assertRaises(TypeError, fails)
self.assertEqual(Fail(a), 0) # ok, since a is held by shared_ptr
if __name__ == '__main__':
unittest.main()
|