summaryrefslogtreecommitdiff
path: root/Examples/test-suite/python/director_multiple_inheritance_runme.py
blob: 8c8ea0bf6f7553329738ba954e17836c816bef89 (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
import director_multiple_inheritance as st

class TestBCD(st.B, st.C, st.D):
    def __init__(self):
        st.B.__init__(self)
        st.C.__init__(self)
        st.D.__init__(self)

class TestBDC(st.B, st.C, st.D):
    def __init__(self):
        st.B.__init__(self)
        st.D.__init__(self)
        st.C.__init__(self)

class TestCBD(st.B, st.C, st.D):
    def __init__(self):
        st.C.__init__(self)
        st.B.__init__(self)
        st.D.__init__(self)

def dotest(test):
    e = st.E()
    if e.testE(test) != 5:
        raise RuntimeError(e.testE(test))

    f = st.F()
    if f.testF(test) != 6:
        raise RuntimeError(f.testF(test))

    t = st.T()
    if t.testT(test) != 20:
        raise RuntimeError(t.testT(test))

dotest(TestBCD())
dotest(TestCBD())
dotest(TestBDC())