| #!/usr/bin/env ruby | |
| # | |
| # Put description here | |
| # | |
| require 'swig_assert' | |
| require 'char_binary' | |
| include Char_binary | |
| t = Test.new | |
| str = 'hile' | |
| swig_assert(t.strlen(str) == 4, binding, 'bad multi-arg typemap') | |
| swig_assert(t.ustrlen(str) == 4, binding, 'bad multi-arg typemap') | |
| swig_assert(t.strlen("hil\000") == 4, binding, 'bad multi-arg typemap') | |
| swig_assert(t.ustrlen("hil\000") == 4, binding, 'bad multi-arg typemap') | |
| swig_assert(t.strlen(nil) == 0, binding, 'bad multi-arg typemap') | |
| swig_assert(t.ustrlen(nil) == 0, binding, 'bad multi-arg typemap') | |
| # creating a raw char* | |
| pc = new_pchar(5) | |
| pchar_setitem(pc, 0, 'h') | |
| pchar_setitem(pc, 1, 'o') | |
| pchar_setitem(pc, 2, 'l') | |
| pchar_setitem(pc, 3, 'a') | |
| pchar_setitem(pc, 4, 0) | |
| swig_assert(t.strlen(pc) == 4, binding, 'bad multi-arg typemap') | |
| swig_assert(t.ustrlen(pc) == 4, binding, 'bad multi-arg typemap') | |
| Char_binary.var_pchar = pc | |
| swig_assert(Char_binary.var_pchar == 'hola', binding, 'bad pointer case') | |
| Char_binary.var_namet = pc | |
| swig_assert(Char_binary.var_namet == 'hola', binding, 'bad pointer case') | |
| delete_pchar(pc) |