From c12af76763a1bff53ed77bc4d236f441d8679880 Mon Sep 17 00:00:00 2001 From: duerst Date: Sat, 16 Jan 2016 08:24:58 +0000 Subject: * enc/unicode.c: Artificial mapping to test buffer expansion code. * string.c: Fixed buffer expansion logic. * test/ruby/enc/test_case_mapping.rb: Tests for above. (with Kimihito Matsui) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/enc/test_case_mapping.rb | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'test/ruby/enc') diff --git a/test/ruby/enc/test_case_mapping.rb b/test/ruby/enc/test_case_mapping.rb index 529e86fbaa..d42b6b1cb6 100644 --- a/test/ruby/enc/test_case_mapping.rb +++ b/test/ruby/enc/test_case_mapping.rb @@ -6,6 +6,18 @@ require "test/unit" # to test new implementation strategy class TestCaseMappingPreliminary < Test::Unit::TestCase def test_case_mapping_preliminary - assert_equal "yukihiro matsumoto (matz)", "Yukihiro MATSUMOTO (MATZ)".downcase(:lithuanian) + assert_equal 'yukihiro matsumoto (matz)', + 'Yukihiro MATSUMOTO (MATZ)'.downcase(:lithuanian) + assert_equal 'matsumoto yukTURKISH*ıhTURKISH*ıro (matz)', + 'MATSUMOTO YUKIHIRO (MATZ)'.downcase(:turkic, :lithuanian) + end + + def test_buffer_allocations + assert_equal 'TURKISH*ı'*10, ('I'*10).downcase(:turkic, :lithuanian) + assert_equal 'TURKISH*ı'*100, ('I'*100).downcase(:turkic, :lithuanian) + assert_equal 'TURKISH*ı'*1_000, ('I'*1_000).downcase(:turkic, :lithuanian) + assert_equal 'TURKISH*ı'*10_000, ('I'*10_000).downcase(:turkic, :lithuanian) + assert_equal 'TURKISH*ı'*100_000, ('I'*100_000).downcase(:turkic, :lithuanian) + assert_equal 'TURKISH*ı'*1_000_000, ('I'*1_000_000).downcase(:turkic, :lithuanian) end end -- cgit v1.2.3