From 400009cac20e271f458ef14cf05565841a994df1 Mon Sep 17 00:00:00 2001 From: akr Date: Tue, 18 Dec 2007 10:17:25 +0000 Subject: [PATCH] fix test. [ruby-dev:32625]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_m17n.rb | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/test/ruby/test_m17n.rb b/test/ruby/test_m17n.rb index dedbaf5ec5..9805fd052a 100644 --- a/test/ruby/test_m17n.rb +++ b/test/ruby/test_m17n.rb @@ -804,16 +804,23 @@ class TestM17N < Test::Unit::TestCase assert_raise(IndexError) { t[i] = s2 } else t[i] = s2 - if i == s1.length && s2.empty? - assert_nil(t[i]) + if !s1.valid_encoding? || !s2.valid_encoding? + assert(a(t).index(a(s2))) else - assert_equal(s2, t[i], "t = #{encinsp(s1)}; t[#{i}] = #{encinsp(s2)}; t[#{i}]") + if i == s1.length && s2.empty? + assert_nil(t[i]) + elsif i < 0 + assert_equal(s2, t[i-s2.length+1,s2.length], + "t = #{encinsp(s1)}; t[#{i}] = #{encinsp(s2)}; t[#{i-s2.length+1},#{s2.length}]") + else + assert_equal(s2, t[i,s2.length], + "t = #{encinsp(s1)}; t[#{i}] = #{encinsp(s2)}; t[#{i},#{s2.length}]") + end end end else assert_raise(ArgumentError) { t[i] = s2 } end - } } }