diff options
Diffstat (limited to 'Examples/test-suite/ruby/access_change_runme.rb')
| -rwxr-xr-x | Examples/test-suite/ruby/access_change_runme.rb | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Examples/test-suite/ruby/access_change_runme.rb b/Examples/test-suite/ruby/access_change_runme.rb new file mode 100755 index 0000000..5b3e99c --- /dev/null +++ b/Examples/test-suite/ruby/access_change_runme.rb @@ -0,0 +1,46 @@ +#!/usr/bin/env ruby +# +# Put script description here. +# +# +# +# +# + +require 'swig_assert' +require 'access_change' + + +# +# this test will currently fail, as it exposes functions that were +# made protected from public. swig limitation for now. +# +exit(0) + +include Access_change + +klass = BaseInt.new +public = ['PublicProtectedPublic1', 'PublicProtectedPublic2', + 'PublicProtectedPublic3', 'PublicProtectedPublic4'] +methods = (klass.public_methods - Object.methods).sort +pmethods = (klass.protected_methods - Object.methods).sort +swig_assert( methods == public, + " incorrect public methods for BaseInt\n" + + "#{methods.inspect} !=\n#{public.inspect}" ) + +klass = DerivedInt.new +public = ['PublicProtectedPublic3', 'PublicProtectedPublic4', + 'WasProtected1', 'WasProtected2', 'WasProtected3', 'WasProtected4'] +methods = (klass.public_methods - Object.methods).sort +swig_assert( methods == public, + " incorrect public methods for DerivedInt\n" + + "#{methods.inspect} !=\n#{public.inspect}" ) + +klass = BottomInt.new +public = ['PublicProtectedPublic1', 'PublicProtectedPublic2', + 'PublicProtectedPublic3', 'PublicProtectedPublic4', + 'WasProtected1', 'WasProtected2'] +methods = (klass.public_methods - Object.methods).sort +swig_assert( methods == public, + " incorrect public methods for BottomInt\n" + + "#{methods.inspect} !=\n#{public.inspect}" ) |
