diff options
Diffstat (limited to 'ext/dl/test/test_dl2.rb')
-rw-r--r-- | ext/dl/test/test_dl2.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ext/dl/test/test_dl2.rb b/ext/dl/test/test_dl2.rb index d1b18057cf..e59956cf7b 100644 --- a/ext/dl/test/test_dl2.rb +++ b/ext/dl/test/test_dl2.rb @@ -85,5 +85,27 @@ class TestDL < TestBase ary2 = dlunwrap(addr) assert_equal(ary, ary2) end + + def test_cptr() + check = Proc.new{|str,ptr| + assert_equal(str.size(), ptr.size()) + assert_equal(str, ptr.to_s()) + assert_equal(str[0,2], ptr.to_s(2)) + assert_equal(str[0,2], ptr[0,2]) + assert_equal(str[1,2], ptr[1,2]) + assert_equal(str[1,0], ptr[1,0]) + assert_equal(str[0], ptr[0]) + assert_equal(str[1], ptr[1]) + } + str = 'abc' + ptr = CPtr[str] + check.call(str, ptr) + str[0] = ?c + ptr[0] = ?c + check.call(str, ptr) + str[0,2] = "aa" + ptr[0,2] = "aa" + check.call(str, ptr) + end end end # module DL |