diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-06-05 04:58:41 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-06-05 04:58:41 +0000 |
commit | b35b33c7516d398e9e93e3e8309b9e5bb29a5267 (patch) | |
tree | c79154a9ac43b992b96f33ddffdaac21274d3be2 /test/iconv/test_basic.rb | |
parent | 28c5fe3c6cc1a55507916bcc0f777dc83e208b30 (diff) | |
download | ruby-b35b33c7516d398e9e93e3e8309b9e5bb29a5267.tar.gz |
* test/iconv/test_{basic,option}.rb, test/iconv/utils.rb: added.
* test/iconv/test_partial.rb: renamed from test_simple.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/iconv/test_basic.rb')
-rw-r--r-- | test/iconv/test_basic.rb | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/test/iconv/test_basic.rb b/test/iconv/test_basic.rb new file mode 100644 index 0000000000..79a6bad95b --- /dev/null +++ b/test/iconv/test_basic.rb @@ -0,0 +1,49 @@ +require File.join(File.dirname(__FILE__), "utils.rb") + +class TestIconv + def test_euc2sjis + iconv = Iconv.open('SHIFT_JIS', 'EUC-JP') + str = iconv.iconv(EUCJ_STR) + str << iconv.iconv(nil) + assert_equal(SJIS_STR, str) + iconv.close + end + + def test_close + iconv = Iconv.new('Shift_JIS', 'EUC-JP') + output = "" + begin + output += iconv.iconv(EUCJ_STR) + output += iconv.iconv(nil) + ensure + assert_respond_to(iconv, :close) + assert_equal("", iconv.close) + assert_equal(SJIS_STR, output) + end + end + + def test_open_without_block + assert_respond_to(Iconv, :open) + iconv = Iconv.open('SHIFT_JIS', 'EUC-JP') + str = iconv.iconv(EUCJ_STR) + str << iconv.iconv(nil) + assert_equal(SJIS_STR, str ) + iconv.close + end + + def test_open_with_block + input = "#{EUCJ_STR}\n"*2 + output = "" + Iconv.open("Shift_JIS", "EUC-JP") do |cd| + input.each_line do |s| + output << cd.iconv(s) + end + output << cd.iconv(nil) + end + assert_equal("#{SJIS_STR}\n"*2, output) + end + + def test_unknown_encoding + assert_raise(Iconv::InvalidEncoding) { Iconv.iconv("utf-8", "X-UKNOWN", "heh") } + end +end |