summaryrefslogtreecommitdiff
path: root/trunk/Examples/test-suite/ruby/minherit_runme.rb
blob: ba41ab6fa5d9d6d0663e8badc08218e0262b7bec (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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/usr/bin/env ruby
#
# Put description here
#
# 
# 
# 
#

require 'swig_assert'

require 'minherit'

a = Minherit::Foo.new
b = Minherit::Bar.new
c = Minherit::FooBar.new
d = Minherit::Spam.new

if a.xget() != 1
  raise RuntimeError, "Bad attribute value"
end

if b.yget() != 2
  raise RuntimeError, "Bad attribute value"
end    

if c.xget() != 1 or c.yget() != 2 or c.zget() != 3
  raise RuntimeError, "Bad attribute value"
end

if d.xget() != 1 or d.yget() != 2 or d.zget() != 3 or d.wget() != 4
  raise RuntimeError, "Bad attribute value"
end

if Minherit.xget(a) != 1
  raise RuntimeError, "Bad attribute value #{Minherit.xget(a)}"
end     

if Minherit.yget(b) != 2
  raise RuntimeError, "Bad attribute value #{Minherit.yget(b)}"
end

if Minherit.xget(c) != 1 or Minherit.yget(c) != 2 or Minherit.zget(c) != 3
  raise RuntimeError, "Bad attribute value #{Minherit.xget(c)} #{Minherit.yget(c)} #{Minherit.zget(c)}"
end    

if Minherit.xget(d) != 1 or Minherit.yget(d) != 2 or Minherit.zget(d) != 3 or Minherit.wget(d) != 4
  raise RuntimeError, "Bad attribute value #{Minherit.xget(d)} #{Minherit.yget(d)} #{Minherit.zget(d)} #{Minherit.wget(d)}"
end

# Cleanse all of the pointers and see what happens

aa = Minherit.toFooPtr(a)
bb = Minherit.toBarPtr(b)
cc = Minherit.toFooBarPtr(c)
dd = Minherit.toSpamPtr(d)

if aa.xget() != 1
  raise RuntimeError, "Bad attribute value"
end

if bb.yget() != 2
  raise RuntimeError, "Bad attribute value"
end

if cc.xget() != 1 or cc.yget() != 2 or cc.zget() != 3
  raise RuntimeError, "Bad attribute value"
end

if dd.xget() != 1 or dd.yget() != 2 or dd.zget() != 3 or dd.wget() != 4
  raise RuntimeError, "Bad attribute value"
end

if Minherit.xget(aa) != 1
  raise RuntimeError, "Bad attribute value #{Minherit.xget(aa)}"
end

if Minherit.yget(bb) != 2
  raise RuntimeError, "Bad attribute value #{Minherit.yget(bb)}"
end

if Minherit.xget(cc) != 1 or Minherit.yget(cc) != 2 or Minherit.zget(cc) != 3
  raise RuntimeError, "Bad attribute value #{Minherit.xget(cc)} #{Minherit.yget(cc)} #{Minherit.zget(cc)}"
end

if Minherit.xget(dd) != 1 or Minherit.yget(dd) != 2 or Minherit.zget(dd) != 3 or Minherit.wget(dd) != 4
  raise RuntimeError, "Bad attribute value #{Minherit.xget(dd)} #{Minherit.yget(dd)} #{Minherit.zget(dd)} #{Minherit.wget(dd)}"
end