diff options
Diffstat (limited to 'spec/ruby/optional/capi/string_spec.rb')
-rw-r--r-- | spec/ruby/optional/capi/string_spec.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/ruby/optional/capi/string_spec.rb b/spec/ruby/optional/capi/string_spec.rb index 469a190abd..1cfd590ca4 100644 --- a/spec/ruby/optional/capi/string_spec.rb +++ b/spec/ruby/optional/capi/string_spec.rb @@ -977,4 +977,24 @@ end end end + + describe "rb_str_drop_bytes" do + it "drops N characters for an ASCII string" do + str = "12345678".encode("US-ASCII") + @s.rb_str_drop_bytes(str, 4) + str.should == "5678".encode("US-ASCII") + end + + it "drop N/2 characters for a UTF-16 string" do + str = "12345678".encode("UTF-16LE") + @s.rb_str_drop_bytes(str, 4) + str.should == "345678".encode("UTF-16LE") + end + + it "drop N/4 characters for a UTF-32 string" do + str = "12345678".encode("UTF-32LE") + @s.rb_str_drop_bytes(str, 4) + str.should == "2345678".encode("UTF-32LE") + end + end end |