summaryrefslogtreecommitdiffstats
path: root/test/iconv/test_basic.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-06-05 04:58:41 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-06-05 04:58:41 +0000
commita340474a8050d2b9c46f2cb9352b86e75bcd0843 (patch)
treec79154a9ac43b992b96f33ddffdaac21274d3be2 /test/iconv/test_basic.rb
parentf3791d5209dd49c2951b9a9d28f94c44c9517386 (diff)
downloadruby-a340474a8050d2b9c46f2cb9352b86e75bcd0843.tar.gz
ruby-a340474a8050d2b9c46f2cb9352b86e75bcd0843.tar.xz
ruby-a340474a8050d2b9c46f2cb9352b86e75bcd0843.zip
* test/iconv/test_{basic,option}.rb, test/iconv/utils.rb: added.
* test/iconv/test_partial.rb: renamed from test_simple.rb. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/iconv/test_basic.rb')
-rw-r--r--test/iconv/test_basic.rb49
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 000000000..79a6bad95
--- /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