diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-12 23:15:34 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-09-12 23:15:34 +0000 |
commit | 3fe69a0da484c277c4bcfc07e72e5843d56e83df (patch) | |
tree | fd04294b1cd3ea8a9c5edfdca5fbda44530956d8 /test/fiddle | |
parent | 4ef5c754f7a920d4bbad512503f61d473d03a4b7 (diff) |
Use mutable strings for mutation tests.
* test/fiddle/test_func.rb (test_string): this test break String buffer
by `strcpy` ("000" -> "123"). However, the string literal "000" with
`frozen_string_literal: true` returns a string object from frozen
string pool. So that after this test "000" from fstring pool becomes
"123" (modified string). 'test/date/' uses "000" (as fstring) and tests
are fails (we could check with `make test-all TESTS='fiddle date'`).
* test/fiddle/test_function.rb: ditto.
* test/fiddle/test_import.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/fiddle')
-rw-r--r-- | test/fiddle/test_func.rb | 2 | ||||
-rw-r--r-- | test/fiddle/test_function.rb | 4 | ||||
-rw-r--r-- | test/fiddle/test_import.rb | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/test/fiddle/test_func.rb b/test/fiddle/test_func.rb index 8f7b0c2874..8517965223 100644 --- a/test/fiddle/test_func.rb +++ b/test/fiddle/test_func.rb @@ -38,7 +38,7 @@ module Fiddle def test_string stress, GC.stress = GC.stress, true f = Function.new(@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP) - buff = "000" + buff = +"000" str = f.call(buff, "123") assert_equal("123", buff) assert_equal("123", str.to_s) diff --git a/test/fiddle/test_function.rb b/test/fiddle/test_function.rb index 477b6a86dc..cbf84eae9d 100644 --- a/test/fiddle/test_function.rb +++ b/test/fiddle/test_function.rb @@ -60,13 +60,13 @@ module Fiddle func = Function.new(@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP) assert_nil Fiddle.last_error - func.call("000", "123") + func.call(+"000", "123") refute_nil Fiddle.last_error end def test_strcpy f = Function.new(@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP) - buff = "000" + buff = +"000" str = f.call(buff, "123") assert_equal("123", buff) assert_equal("123", str.to_s) diff --git a/test/fiddle/test_import.rb b/test/fiddle/test_import.rb index 0cd5e76a80..ff16d17d50 100644 --- a/test/fiddle/test_import.rb +++ b/test/fiddle/test_import.rb @@ -128,7 +128,7 @@ module Fiddle end def test_strcpy() - buff = "000" + buff = +"000" str = LIBC.strcpy(buff, "123") assert_equal("123", buff) assert_equal("123", str.to_s) |