diff options
author | Logan Johnson <ljohnson@users.sourceforge.net> | 2003-03-08 05:13:19 +0000 |
---|---|---|
committer | Logan Johnson <ljohnson@users.sourceforge.net> | 2003-03-08 05:13:19 +0000 |
commit | d39635101eba845f235084d52e07301b90325167 (patch) | |
tree | f9b7b8127a26b12273b944daae1412111920b1cc /Examples/test-suite/ruby | |
parent | 56e34f6d396dd05135d21aaa93fa76bd7f32c21a (diff) | |
download | swig-d39635101eba845f235084d52e07301b90325167.tar.gz |
*** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4478 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'Examples/test-suite/ruby')
-rw-r--r-- | Examples/test-suite/ruby/lib_std_string_runme.rb | 55 |
1 files changed, 50 insertions, 5 deletions
diff --git a/Examples/test-suite/ruby/lib_std_string_runme.rb b/Examples/test-suite/ruby/lib_std_string_runme.rb index c691242d8..dbf96810c 100644 --- a/Examples/test-suite/ruby/lib_std_string_runme.rb +++ b/Examples/test-suite/ruby/lib_std_string_runme.rb @@ -3,15 +3,15 @@ require 'lib_std_string' include Lib_std_string # Checking expected use of %typemap(in) std::string {} -test_value_in("Fee") +test_value("Fee") # Checking expected result of %typemap(out) std::string {} -raise RuntimeError unless test_value_in("Fi") == "Fi" +raise RuntimeError unless test_value("Fi") == "Fi" # Verify type-checking for %typemap(in) std::string {} exceptionRaised = false begin - test_value_in(0) + test_value(0) rescue TypeError exceptionRaised = true ensure @@ -19,15 +19,60 @@ ensure end # Checking expected use of %typemap(in) const std::string & {} -test_const_reference_in("Fo") +test_const_reference("Fo") + +# Checking expected result of %typemap(out) const std::string& {} +raise RuntimeError unless test_const_reference("Fum") == "Fum" # Verify type-checking for %typemap(in) const std::string & {} exceptionRaised = false begin - test_const_reference_in(0) + test_const_reference(0) rescue TypeError exceptionRaised = true ensure raise RuntimeError unless exceptionRaised end +# +# Input and output typemaps for pointers and non-const references to +# std::string are *not* supported; the following tests confirm +# that none of these cases are slipping through. +# + +exceptionRaised = false +begin + test_pointer("foo") +rescue TypeError + exceptionRaised = true +ensure + raise RuntimeError unless exceptionRaised +end + +result = test_pointer_out() +raise RuntimeError if result.is_a? String + +exceptionRaised = false +begin + test_const_pointer("bar") +rescue TypeError + exceptionRaised = true +ensure + raise RuntimeError unless exceptionRaised +end + +result = test_const_pointer_out() +raise RuntimeError if result.is_a? String + +exceptionRaised = false +begin + test_reference("foo") +rescue TypeError + exceptionRaised = true +ensure + raise RuntimeError unless exceptionRaised +end + +result = test_reference_out() +raise RuntimeError if result.is_a? String + |