Also run the multiple inheritance test case (minherit.i) for Ruby, now.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4709 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Logan Johnson 2003-04-25 20:19:40 +00:00
commit 2a0efdc913
2 changed files with 80 additions and 7 deletions

View file

@ -4,9 +4,9 @@
// However, if it works for Python, things should be working for other
// modules.
%module minherit
%module(ruby_minherit="1") minherit
#ifdef SWIGPYTHON
#if defined(SWIGPYTHON) || defined(SWIGRUBY)
%inline %{
@ -73,8 +73,3 @@ int wget(SpamPtr f) {
#endif

View file

@ -0,0 +1,78 @@
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