from smart_pointer_extend import * | |
f = Foo() | |
b = Bar(f) | |
if b.extension() != f.extension(): | |
raise RuntimeError | |
b = CBase() | |
d = CDerived() | |
p = CPtr() | |
if b.bar() != p.bar(): | |
raise RuntimeError | |
if d.foo() != p.foo(): | |
raise RuntimeError | |
if b.hello() != p.hello(): | |
raise RuntimeError | |
d = DFoo() | |
dp = DPtrFoo(d) | |
if d.SExt(1) != dp.SExt(1): | |
raise RuntimeError | |
if d.Ext(1) != dp.Ext(1): | |
raise RuntimeError |