From 3fe69a0da484c277c4bcfc07e72e5843d56e83df Mon Sep 17 00:00:00 2001 From: ko1 Date: Tue, 12 Sep 2017 23:15:34 +0000 Subject: 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 --- test/fiddle/test_func.rb | 2 +- test/fiddle/test_function.rb | 4 ++-- test/fiddle/test_import.rb | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'test/fiddle') 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) -- cgit v1.2.3