virtualut.py
来自「Boost provides free peer-reviewed portab」· Python 代码 · 共 56 行
PY
56 行
# Copyright Bruno da Silva de Oliveira 2003. Use, modification and # distribution is subject to 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 unittestfrom _virtual import *class VirtualTest(unittest.TestCase): def testIt(self): class E(C): def f_abs(self): return 3 def dummy(self): # override should not work return 100 class F(C): def f(self): return 10 def name(self): return 'F' class G(D): def dummy(self): # override should not work return 100 e = E() f = F() self.assertEqual(e.f(), 3) self.assertEqual(call_f(e), 3) self.assertEqual(f.f(), 10) self.assertEqual(call_f(f), 10) self.assertEqual(e.get_name(), 'C') #self.assertEqual(e.get_name(), 'E') check this later c = C() c.bar(1) # ok c.bar('a') # ok self.assertRaises(TypeError, c.bar, 1.0) # test no_overrides d = G() self.assertEqual(e.dummy(), 100) self.assertEqual(call_dummy(e), 0) self.assertEqual(d.dummy(), 100) self.assertEqual(call_dummy(d), 0) if __name__ == '__main__': unittest.main()
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?