/tags/rel-1-3-15/SWIG/Examples/test-suite/perl5/overload_simple_runme.pl
Perl | 120 lines | 87 code | 32 blank | 1 comment | 50 complexity | 540800c7bcfe895343a8b797182fe2cf MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
1use overload_simple;
2
3$f = new overload_simple::Foo();
4$b = new overload_simple::Bar();
5$v = overload_simple::malloc_void(32);
6
7if (overload_simple::foo(3) != "foo:int") {
8 die("foo(int)");
9}
10
11if (overload_simple::foo(3.0) != "foo:double") {
12 die("foo(double)");
13}
14
15if (overload_simple::foo("hello") != "foo:char *") {
16 die("foo(char *)");
17}
18
19if (overload_simple::foo($f) != "foo:Foo *") {
20 die("foo(Foo *)");
21}
22
23if (overload_simple::foo($b) != "foo:Bar *") {
24 die("foo(Bar *)");
25}
26
27if (overload_simple::foo($v) != "foo:void *") {
28 die("foo(void *)");
29}
30
31$s = new overload_simple::Spam();
32
33if ($s->foo(3) != "foo:int") {
34 die("Spam::foo(int)");
35}
36
37if ($s->foo(3.0) != "foo:double") {
38 die("Spam::foo(double)");
39}
40
41if ($s->foo("hello") != "foo:char *") {
42 die("Spam::foo(char *)");
43}
44
45if ($s->foo($f) != "foo:Foo *") {
46 die("Spam::foo(Foo *)");
47}
48
49if ($s->foo($b) != "foo:Bar *") {
50 die("Spam::foo(Bar *)");
51}
52
53if ($s->foo($v) != "foo:void *") {
54 die("Spam::foo(void *)");
55}
56
57if (overload_simple::Spam::bar(3) != "bar:int") {
58 die("Spam::bar(int)");
59}
60
61if (overload_simple::Spam::bar(3.0) != "bar:double") {
62 die("Spam::bar(double)");
63}
64
65if (overload_simple::Spam::bar("hello") != "bar:char *") {
66 die("Spam::bar(char *)");
67}
68
69if (overload_simple::Spam::bar($f) != "bar:Foo *") {
70 die("Spam::bar(Foo *)");
71}
72
73if (overload_simple::Spam::bar($b) != "bar:Bar *") {
74 die("Spam::bar(Bar *)");
75}
76
77if (overload_simple::Spam::bar($v) != "bar:void *") {
78 die("Spam::bar(void *)");
79}
80
81# Test constructors
82
83$s = new overload_simple::Spam();
84if ($s->{type} != "none") {
85 die("Spam()");
86}
87
88$s = new overload_simple::Spam(3);
89if ($s->{type} != "int") {
90 die("Spam(int)");
91}
92
93$s = new overload_simple::Spam(3.0);
94if ($s->{type} != "double") {
95 die("Spam(double)");
96}
97
98$s = new overload_simple::Spam("hello");
99if ($s->{type} != "char *") {
100 die("Spam(char *)");
101}
102
103$s = new overload_simple::Spam($f);
104if ($s->{type} != "Foo *") {
105 die("Spam(Foo *)");
106}
107
108$s = new overload_simple::Spam($b);
109if ($s->{type} != "Bar *") {
110 die("Spam(Bar *)");
111}
112
113$s = new overload_simple::Spam($v);
114if ($s->{type} != "void *") {
115 die("Spam(void *)");
116}
117
118
119
120