#!/usr/bin/env ruby
require 'swig_assert'
require 'li_std_string'
include Li_std_string
test_value("Fee")
raise RuntimeError unless test_value("Fi") == "Fi"
exceptionRaised = false
begin
test_value(0)
rescue TypeError
exceptionRaised = true
ensure
raise RuntimeError unless exceptionRaised
end
test_const_reference("Fo")
raise RuntimeError unless test_const_reference("Fum") == "Fum"
exceptionRaised = false
begin
test_const_reference(0)
rescue TypeError
exceptionRaised = true
ensure
raise RuntimeError unless exceptionRaised
end
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
myStructure = Structure.new
if (myStructure.MemberString2 != "member string 2")
raise RuntimeError
end
s = "Hello"
myStructure.MemberString2 = s
if (myStructure.MemberString2 != s)
raise RuntimeError
end
if (myStructure.ConstMemberString != "const member string")
raise RuntimeError
end
if (Structure.StaticMemberString2 != "static member string 2")
raise RuntimeError
end
Structure.StaticMemberString2 = s
if (Structure.StaticMemberString2 != s)
raise RuntimeError
end
if (Structure.ConstStaticMemberString != "const static member string")
raise RuntimeError
end
if (test_reference_input("hello") != "hello")
raise RuntimeError
end
s = test_reference_inout("hello")
if (s != "hellohello")
raise RuntimeError
end
if (test_reference_output() != "output")
raise RuntimeError
end
if (stdstring_empty() != "")
raise RuntimeError
end
if (c_empty() != "")
raise RuntimeError
end
if (c_null() != nil)
raise RuntimeError
end
if (get_null(c_null()) != nil)
raise RuntimeError
end
if (get_null(c_empty()) != "non-null")
raise RuntimeError
end
if (get_null(stdstring_empty()) != "non-null")
raise RuntimeError
end