summaryrefslogtreecommitdiff
path: root/Examples/test-suite/python/overload_bool_runme.py
blob: 8192b37ced9e4c31572b678871daffd88a2781f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import overload_bool

# Overloading bool, int, string
if overload_bool.overloaded(True) != "bool":
    raise RuntimeError("wrong!")
if overload_bool.overloaded(False) != "bool":
    raise RuntimeError("wrong!")

if overload_bool.overloaded(0) != "int":
    raise RuntimeError("wrong!")
if overload_bool.overloaded(1) != "int":
    raise RuntimeError("wrong!")
if overload_bool.overloaded(2) != "int":
    raise RuntimeError("wrong!")

if overload_bool.overloaded("1234") != "string":
    raise RuntimeError("wrong!")

# Test bool masquerading as int
if overload_bool.intfunction(True) != "int":
    raise RuntimeError("wrong!")
if overload_bool.intfunction(False) != "int":
    raise RuntimeError("wrong!")

# Test int masquerading as bool
# Not possible


#############################################

# Overloading bool, int, string
if overload_bool.overloaded_ref(True) != "bool":
    raise RuntimeError("wrong!")
if overload_bool.overloaded_ref(False) != "bool":
    raise RuntimeError("wrong!")

if overload_bool.overloaded_ref(0) != "int":
    raise RuntimeError("wrong!")
if overload_bool.overloaded_ref(1) != "int":
    raise RuntimeError("wrong!")
if overload_bool.overloaded_ref(2) != "int":
    raise RuntimeError("wrong!")

if overload_bool.overloaded_ref("1234") != "string":
    raise RuntimeError("wrong!")

# Test bool masquerading as int
if overload_bool.intfunction_ref(True) != "int":
    raise RuntimeError("wrong!")
if overload_bool.intfunction_ref(False) != "int":
    raise RuntimeError("wrong!")

# Test int masquerading as bool
# Not possible