ruby-changes:3694
From: ko1@a...
Date: Wed, 23 Jan 2008 16:58:57 +0900 (JST)
Subject: [ruby-changes:3694] akr - Ruby:r15183 (trunk): split UTF-16 tests.
akr 2008-01-23 16:58:48 +0900 (Wed, 23 Jan 2008) New Revision: 15183 Added files: trunk/test/ruby/test_utf16.rb Modified files: trunk/test/ruby/test_m17n.rb Log: split UTF-16 tests. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/test/ruby/test_utf16.rb?revision=15183&view=markup http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/test/ruby/test_m17n.rb?r1=15183&r2=15182&diff_format=u Index: test/ruby/test_m17n.rb =================================================================== --- test/ruby/test_m17n.rb (revision 15182) +++ test/ruby/test_m17n.rb (revision 15183) @@ -291,42 +291,6 @@ } end - def test_utf16_valid_encoding - s = "\xd8\x00\xd8\x00".force_encoding("utf-16be") - assert_equal(false, s.valid_encoding?, "#{encdump s}.valid_encoding?") - end - - def test_utf16 - s = "aa".force_encoding("utf-16be") - assert_raise(ArgumentError, "Time.now.strftime(#{encdump s})") { Time.now.strftime(s) } - - s = "aaaa".force_encoding("utf-16be") - assert_equal(s.encoding, s.intern.to_s.encoding, "#{encdump s}.intern.to_s.encoding") - - s1 = "aa".force_encoding("utf-16be") - s2 = "z".force_encoding("us-ascii") - assert_nil(Encoding.compatible?(s1, s2), "Encoding.compatible?(#{encdump s1}, #{encdump s2})") - - s1 = "ab".force_encoding("utf-16be") - s2 = "b".force_encoding("utf-16be") - assert_equal(false, s1.end_with?(s2), "#{encdump s1}.end_with?(#{encdump s2})") - - s1 = "f\0f\0".force_encoding("utf-16le") - assert_equal(255, s1.hex, "#{encdump s1}.hex") - - s1 = "aa".force_encoding("utf-16be") - s2 = "aa" - assert_raise(ArgumentError, "#{encdump s1}.count(#{encdump s2})") { - s1.count(s2) - } - - s1 = "a".force_encoding("us-ascii") - s2 = "aa".force_encoding("utf-16be") - assert_raise(ArgumentError, "#{encdump s1} + #{encdump s2}") { - s1 + s2 - } - end - def test_regexp_too_short_multibyte_character assert_raise(SyntaxError) { eval('/\xfe/e') } assert_raise(SyntaxError) { eval('/\x8e/e') } @@ -998,10 +962,4 @@ assert_equal(Encoding::ASCII_8BIT, v.encoding) } end - - def test_encoding_find - assert_raise(ArgumentError) { - Encoding.find("utf-8".force_encoding("utf-16be")) - } - end end Index: test/ruby/test_utf16.rb =================================================================== --- test/ruby/test_utf16.rb (revision 0) +++ test/ruby/test_utf16.rb (revision 15183) @@ -0,0 +1,68 @@ +require 'test/unit' + +class TestM17N < Test::Unit::TestCase + def encdump(str) + d = str.dump + if /\.force_encoding\("[A-Za-z0-9.:_+-]*"\)\z/ =~ d + d + else + "#{d}.force_encoding(#{str.encoding.name.dump})" + end + end + + # tests start + + def test_utf16be_valid_encoding + s = "\xd8\x00\xd8\x00".force_encoding("utf-16be") + assert_equal(false, s.valid_encoding?, "#{encdump s}.valid_encoding?") + end + + def test_strftime + s = "aa".force_encoding("utf-16be") + assert_raise(ArgumentError, "Time.now.strftime(#{encdump s})") { Time.now.strftime(s) } + end + + def test_intern + s = "aaaa".force_encoding("utf-16be") + assert_equal(s.encoding, s.intern.to_s.encoding, "#{encdump s}.intern.to_s.encoding") + end + + def test_compatible + s1 = "aa".force_encoding("utf-16be") + s2 = "z".force_encoding("us-ascii") + assert_nil(Encoding.compatible?(s1, s2), "Encoding.compatible?(#{encdump s1}, #{encdump s2})") + end + + def test_end_with + s1 = "ab".force_encoding("utf-16be") + s2 = "b".force_encoding("utf-16be") + assert_equal(false, s1.end_with?(s2), "#{encdump s1}.end_with?(#{encdump s2})") + end + + def test_hex + s1 = "f\0f\0".force_encoding("utf-16le") + assert_equal(255, s1.hex, "#{encdump s1}.hex") + end + + def test_count + s1 = "aa".force_encoding("utf-16be") + s2 = "aa" + assert_raise(ArgumentError, "#{encdump s1}.count(#{encdump s2})") { + s1.count(s2) + } + end + + def test_plus + s1 = "a".force_encoding("us-ascii") + s2 = "aa".force_encoding("utf-16be") + assert_raise(ArgumentError, "#{encdump s1} + #{encdump s2}") { + s1 + s2 + } + end + + def test_encoding_find + assert_raise(ArgumentError) { + Encoding.find("utf-8".force_encoding("utf-16be")) + } + end +end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/