1 from python_overload_simple_cast import *
29 raise RuntimeError, "fint(int)"
32 if fint(ad) != "fint:int":
33 raise RuntimeError, "fint(int)"
35 if fdouble(ad) != "fdouble:double":
36 raise RuntimeError, "fdouble(double)"
38 if fint(ai) != "fint:int":
39 raise RuntimeError, "fint(int)"
41 if fint(5.0) != "fint:int":
42 raise RuntimeError, "fint(int)"
44 if fint(3) != "fint:int":
45 raise RuntimeError, "fint(int)"
46 if fint(3.0) != "fint:int":
47 raise RuntimeError, "fint(int)"
49 if fdouble(ad) != "fdouble:double":
50 raise RuntimeError, "fdouble(double)"
51 if fdouble(3) != "fdouble:double":
52 raise RuntimeError, "fdouble(double)"
53 if fdouble(3.0) != "fdouble:double":
54 raise RuntimeError, "fdouble(double)"
56 if fid(3,3.0) != "fid:intdouble":
57 raise RuntimeError, "fid:intdouble"
59 if fid(3.0,3) != "fid:doubleint":
60 raise RuntimeError, "fid:doubleint"
62 if fid(ad,ai) != "fid:doubleint":
63 raise RuntimeError, "fid:doubleint"
65 if fid(ai,ad) != "fid:intdouble":
66 raise RuntimeError, "fid:intdouble"
70 if foo(3) != "foo:int":
71 raise RuntimeError, "foo(int)"
73 if foo(3.0) != "foo:double":
74 raise RuntimeError, "foo(double)"
76 if foo("hello") != "foo:char *":
77 raise RuntimeError, "foo(char *)"
82 if foo(f) != "foo:Foo *":
83 raise RuntimeError, "foo(Foo *)"
85 if foo(b) != "foo:Bar *":
86 raise RuntimeError, "foo(Bar *)"
90 if foo(v) != "foo:void *":
91 raise RuntimeError, "foo(void *)"
95 if s.foo(3) != "foo:int":
96 raise RuntimeError, "Spam::foo(int)"
98 if s.foo(3.0) != "foo:double":
99 raise RuntimeError, "Spam::foo(double)"
101 if s.foo("hello") != "foo:char *":
102 raise RuntimeError, "Spam::foo(char *)"
104 if s.foo(f) != "foo:Foo *":
105 raise RuntimeError, "Spam::foo(Foo *)"
107 if s.foo(b) != "foo:Bar *":
108 raise RuntimeError, "Spam::foo(Bar *)"
110 if s.foo(v) != "foo:void *":
111 raise RuntimeError, "Spam::foo(void *)"
113 if Spam_bar(3) != "bar:int":
114 raise RuntimeError, "Spam::bar(int)"
116 if Spam_bar(3.0) != "bar:double":
117 raise RuntimeError, "Spam::bar(double)"
119 if Spam_bar("hello") != "bar:char *":
120 raise RuntimeError, "Spam::bar(char *)"
122 if Spam_bar(f) != "bar:Foo *":
123 raise RuntimeError, "Spam::bar(Foo *)"
125 if Spam_bar(b) != "bar:Bar *":
126 raise RuntimeError, "Spam::bar(Bar *)"
128 if Spam_bar(v) != "bar:void *":
129 raise RuntimeError, "Spam::bar(void *)"
135 raise RuntimeError, "Spam()"
139 raise RuntimeError, "Spam(int)"
142 if s.type != "double":
143 raise RuntimeError, "Spam(double)"
146 if s.type != "char *":
147 raise RuntimeError, "Spam(char *)"
150 if s.type != "Foo *":
151 raise RuntimeError, "Spam(Foo *)"
154 if s.type != "Bar *":
155 raise RuntimeError, "Spam(Bar *)"
158 if s.type != "void *":
159 raise RuntimeError, "Spam(void *)"
163 ullmax = 9223372036854775807 #0xffffffffffffffff
164 ullmaxd = 9007199254740992.0
167 if ull(ullmin) != ullmin:
168 raise runtimeerror, "ull(ullmin)"
169 if ull(ullmax) != ullmax:
170 raise runtimeerror, "ull(ullmax)"
171 if ull(ullmind) != ullmind:
172 raise RuntimeError, "ull(ullmind)"
173 if ull(ullmaxd) != ullmaxd:
174 raise RuntimeError, "ull(ullmaxd)"
177 llmax = 9223372036854775807 #0x7fffffffffffffff
178 llmin = -9223372036854775808
179 # these are near the largest floats we can still convert into long long
180 llmaxd = 9007199254740992.0
181 llmind = -9007199254740992.0
182 if ll(llmin) != llmin:
183 raise runtimeerror, "ll(llmin)"
184 if ll(llmax) != llmax:
185 raise runtimeerror, "ll(llmax)"
186 if ll(llmind) != llmind:
187 raise RuntimeError, "ll(llmind)"
188 if ll(llmaxd) != llmaxd:
189 raise RuntimeError, "ll(llmaxd)"