swig/SWIG/Examples/test-suite/tcl/overload_simple_runme.tcl
Dave Beazley 516036631c The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2002-11-30 22:01:28 +00:00

172 lines
2.8 KiB
Tcl

if { [ string match $tcl_platform(platform) "windows" ] == 1 } {
if [ catch { load ./overload_simple.dll overload_simple} err_msg ] {
puts stderr "Could not load dll:\n$err_msg"
}
} else {
if [ catch { load ./overload_simple.so overload_simple} err_msg ] {
puts stderr "Could not load shared object:\n$err_msg"
}
}
set f [new_Foo]
set b [new_Bar]
set v [malloc_void 32]
set x [foo 3]
if {$x != "foo:int"} {
puts stderr "foo(int) test failed"
exit 1
}
set x [foo 3.4]
if {$x != "foo:double"} {
puts stderr "foo(double) test failed"
exit 1
}
set x [foo hello]
if {$x != "foo:char *"} {
puts stderr "foo(char *) test failed"
exit 1
}
set x [foo $f]
if {$x != "foo:Foo *"} {
puts stderr "foo(Foo *) test failed"
exit 1
}
set x [foo $b]
if {$x != "foo:Bar *"} {
puts stderr "foo(Bar *) test failed"
exit 1
}
set x [foo $v]
if {$x != "foo:void *"} {
puts stderr "foo(void *) test failed"
exit 1
}
Spam s
set x [s foo 3]
if {$x != "foo:int"} {
puts stderr "Spam::foo(int) test failed"
exit 1
}
set x [s foo 3.4]
if {$x != "foo:double"} {
puts stderr "Spam::foo(double) test failed"
exit 1
}
set x [s foo hello]
if {$x != "foo:char *"} {
puts stderr "Spam::foo(char *) test failed"
exit 1
}
set x [s foo $f]
if {$x != "foo:Foo *"} {
puts stderr "Spam::foo(Foo *) test failed"
exit 1
}
set x [s foo $b]
if {$x != "foo:Bar *"} {
puts stderr "Spam::foo(Bar *) test failed"
exit 1
}
set x [s foo $v]
if {$x != "foo:void *"} {
puts stderr "Spam::foo(void *) test failed"
exit 1
}
set x [Spam_bar 3]
if {$x != "bar:int"} {
puts stderr "Spam::bar(int) test failed"
exit 1
}
set x [Spam_bar 3.4]
if {$x != "bar:double"} {
puts stderr "Spam::bar(double) test failed"
exit 1
}
set x [Spam_bar hello]
if {$x != "bar:char *"} {
puts stderr "Spam::bar(char *) test failed"
exit 1
}
set x [Spam_bar $f]
if {$x != "bar:Foo *"} {
puts stderr "Spam::bar(Foo *) test failed"
exit 1
}
set x [Spam_bar $b]
if {$x != "bar:Bar *"} {
puts stderr "Spam::bar(Bar *) test failed"
exit 1
}
set x [Spam_bar $v]
if {$x != "bar:void *"} {
puts stderr "Spam::bar(void *) test failed"
exit 1
}
Spam s
set x [s cget -type]
if {$x != "none"} {
puts stderr "Spam() test failed"
}
Spam s 3
set x [s cget -type]
if {$x != "int"} {
puts stderr "Spam(int) test failed"
}
Spam s 3.4
set x [s cget -type]
if {$x != "double"} {
puts stderr "Spam(double) test failed"
}
Spam s hello
set x [s cget -type]
if {$x != "char *"} {
puts stderr "Spam(char *) test failed"
}
Spam s $f
set x [s cget -type]
if {$x != "Foo *"} {
puts stderr "Spam(Foo *) test failed"
}
Spam s $b
set x [s cget -type]
if {$x != "Bar *"} {
puts stderr "Spam(Bar *) test failed"
}
Spam s $v
set x [s cget -type]
if {$x != "void *"} {
puts stderr "Spam(void *) test failed"
}