2 # Test various properties of classes defined in separate modules
4 print "Testing the %import directive"
12 print "Creating some objects"
19 # Try calling some methods
20 print "Testing some methods"
22 print "Should see 'Base::A' ---> ",
24 print "Should see 'Base::B' ---> ",
27 print "Should see 'Foo::A' ---> ",
29 print "Should see 'Foo::B' ---> ",
32 print "Should see 'Bar::A' ---> ",
34 print "Should see 'Bar::B' ---> ",
37 print "Should see 'Spam::A' ---> ",
39 print "Should see 'Spam::B' ---> ",
44 print "\nTesting some casts\n"
48 print "Should see 'Base::A' ---> ",
50 print "Should see 'Base::B' ---> ",
54 print "Should see 'Foo::A' ---> ",
57 print "Should see 'Base::B' ---> ",
61 print "Should see 'Bar::A' ---> ",
64 print "Should see 'Base::B' ---> ",
68 print "Should see 'Spam::A' ---> ",
71 print "Should see 'Base::B' ---> ",
75 print "Should see 'Bar::B' ---> ",
78 print "\nTesting some dynamic casts\n"
81 print " Spam -> Base -> Foo : ",
82 y = foo.Foo_fromBase(x)
88 print " Spam -> Base -> Bar : ",
89 y = bar.Bar_fromBase(x)
95 print " Spam -> Base -> Spam : ",
96 y = spam.Spam_fromBase(x)
102 print " Foo -> Spam : ",
103 y = spam.Spam_fromBase(b)