[前][次][番号順一覧][スレッド一覧]

ruby-changes:7120

From: akr <ko1@a...>
Date: Fri, 15 Aug 2008 11:32:59 +0900 (JST)
Subject: [ruby-changes:7120] Ruby:r18638 (trunk): add tests.

akr	2008-08-15 11:32:47 +0900 (Fri, 15 Aug 2008)

  New Revision: 18638

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18638

  Log:
    add tests.

  Modified files:
    trunk/test/ruby/test_econv.rb

Index: test/ruby/test_econv.rb
===================================================================
--- test/ruby/test_econv.rb	(revision 18637)
+++ test/ruby/test_econv.rb	(revision 18638)
@@ -110,7 +110,7 @@
     assert_econv("", :finished, 100, ["Shift_JIS", "ISO-2022-JP"], "", "")
   end
 
-  def test_iso2022jp_outstream
+  def test_iso2022jp_encode
     ec = Encoding::Converter.new("EUC-JP", "ISO-2022-JP")
     a = ["", src="", ec, nil, 50, Encoding::Converter::PARTIAL_INPUT]
     src << "a";        check_ec("a",                           "", :source_buffer_empty, *a)
@@ -123,6 +123,25 @@
     a[-1] = 0;         check_ec("a\e$B\"$!\"\e(Bb\e$B\"&\e(B", "", :finished, *a)
   end
 
+  def test_iso2022jp_decode
+    ec = Encoding::Converter.new("ISO-2022-JP", "EUC-JP")
+    a = ["", src="", ec, nil, 50, Encoding::Converter::PARTIAL_INPUT]
+    src << "a";         check_ec("a",                   "", :source_buffer_empty, *a)
+    src << "\e";        check_ec("a",                   "", :source_buffer_empty, *a)
+    src << "$";         check_ec("a",                   "", :source_buffer_empty, *a)
+    src << "B";         check_ec("a",                   "", :source_buffer_empty, *a)
+    src << "\x21";      check_ec("a",                   "", :source_buffer_empty, *a)
+    src << "\x22";      check_ec("a\xA1\xA2",           "", :source_buffer_empty, *a)
+    src << "\n";        check_ec("a\xA1\xA2",           "", :invalid_byte_sequence, *a)
+    src << "\x23";      check_ec("a\xA1\xA2",           "", :source_buffer_empty, *a)
+    src << "\x24";      check_ec("a\xA1\xA2\xA3\xA4",   "", :source_buffer_empty, *a)
+    src << "\e";        check_ec("a\xA1\xA2\xA3\xA4",   "", :source_buffer_empty, *a)
+    src << "(";         check_ec("a\xA1\xA2\xA3\xA4",   "", :source_buffer_empty, *a)
+    src << "B";         check_ec("a\xA1\xA2\xA3\xA4",   "", :source_buffer_empty, *a)
+    src << "c";         check_ec("a\xA1\xA2\xA3\xA4c",  "", :source_buffer_empty, *a)
+    src << "\n";        check_ec("a\xA1\xA2\xA3\xA4c\n","", :source_buffer_empty, *a)
+  end
+
   def test_invalid
     assert_econv("", :invalid_byte_sequence,    100, ["UTF-8", "EUC-JP"], "\x80", "")
     assert_econv("a", :invalid_byte_sequence,   100, ["UTF-8", "EUC-JP"], "a\x80", "")

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]