def test_BaseDerived(self): mb = MyBase() d = Tf._TestDerived() md = MyDerived() self.assertEqual('unwrapped virtual', mb.TestCallVirtual()) self.assertEqual('cpp base', mb.Virtual4()) self.assertEqual('python derived v4', md.Virtual4()) self.assertEqual((False, 'python base'), Tf._TakesBase(mb)) self.assertEqual((True, 'cpp derived'), Tf._TakesBase(d)) self.assertEqual((True, 'python derived'), Tf._TakesBase(md)) self.assertEqual('python base', Tf._TakesConstBase(mb)) self.assertEqual('cpp derived', Tf._TakesConstBase(d)) self.assertEqual('python derived', Tf._TakesConstBase(md)) self.assertEqual('cpp derived', Tf._TakesDerived(d)) self.assertEqual('python derived', Tf._TakesDerived(md)) self.assertIs(Tf._ReturnsConstBase(md), md) self.assertIs(Tf._ReturnsBase(md), md) self.assertIs(Tf._ReturnsBaseRefPtr(md), md) try: Tf._TestBase().Virtual() assert False, 'calling pure virtual' except: pass
def test_BaseDerived(self): mb = MyBase() d = Tf._TestDerived() md = MyDerived() self.assertEqual('unwrapped virtual', mb.TestCallVirtual()) self.assertEqual('cpp base', mb.Virtual4()) self.assertEqual('python derived v4', md.Virtual4()) self.assertEqual((False, 'python base'), Tf._TakesBase(mb)) self.assertEqual((True, 'cpp derived'), Tf._TakesBase(d)) self.assertEqual((True, 'python derived'), Tf._TakesBase(md)) self.assertEqual('python base', Tf._TakesConstBase(mb)) self.assertEqual('cpp derived', Tf._TakesConstBase(d)) self.assertEqual('python derived', Tf._TakesConstBase(md)) self.assertEqual('cpp derived', Tf._TakesDerived(d)) self.assertEqual('python derived', Tf._TakesDerived(md)) self.assertIs(Tf._ReturnsConstBase(md), md) self.assertIs(Tf._ReturnsBase(md), md) self.assertIs(Tf._ReturnsBaseRefPtr(md), md) try: Tf._TestBase().Virtual() assert False, 'calling pure virtual' except: pass
def test_Listening(self): for pkg in args: self.assertEqual(pkg[0], testListening(*pkg[1:])) lc = listenerClass() testSender = Tf._TestDerived() listener = Tf.Notice.Register(Tf.Notice, lc.cb, testSender) Tf._sendTfNoticeWithSender(testSender) self.assertEqual(1, lc.received)
def test_Listening(self): for pkg in args: self.assertEqual(pkg[0], testListening(*pkg[1:])) lc = listenerClass() testSender = Tf._TestDerived() listener = Tf.Notice.Register(Tf.Notice, lc.cb, testSender) Tf._sendTfNoticeWithSender(testSender) self.assertEqual(1, lc.received)