summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2022-07-25 10:21:38 +0200
committerJean Boussier <jean.boussier@gmail.com>2022-08-18 10:09:08 +0200
commitb0b9f7201acab05c2a3ad92c3043a1f01df3e17f (patch)
treefe3445ca10f4254baab7e5c182eaccb1943e3b3b /test
parentfe61cad7490da8a879597f851f4a89856d44838e (diff)
rb_str_resize: Only clear coderange on truncation
If we are expanding the string or only stripping extra capacity then coderange won't change, so clearing it is wasteful.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6178
Diffstat (limited to 'test')
-rw-r--r--test/ruby/test_sprintf.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ruby/test_sprintf.rb b/test/ruby/test_sprintf.rb
index f2e73eb58d..b05f4f3e44 100644
--- a/test/ruby/test_sprintf.rb
+++ b/test/ruby/test_sprintf.rb
@@ -507,6 +507,16 @@ class TestSprintf < Test::Unit::TestCase
end
end
+ def test_coderange
+ format_str = "wrong constant name %s"
+ interpolated_str = "\u3042"
+ assert_predicate format_str, :ascii_only?
+ refute_predicate interpolated_str, :ascii_only?
+
+ str = format_str % interpolated_str
+ refute_predicate str, :ascii_only?
+ end
+
def test_named_default
h = Hash.new('world')
assert_equal("hello world", "hello %{location}" % h)