summaryrefslogtreecommitdiff
path: root/test/ruby/test_econv.rb
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-05 22:27:46 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-05 22:27:46 +0000
commit0be34e2a497ec376e3a96e95a2374abe3ad6a7c6 (patch)
treef1c4b83567fe7acfae9ca537c25dc4881cd8e268 /test/ruby/test_econv.rb
parentd4384f1230af19b065f62a33b27ac21143235304 (diff)
* transcode.c (rb_econv_open): fail for ASCII incompatible with
newline conversion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_econv.rb')
-rw-r--r--test/ruby/test_econv.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/ruby/test_econv.rb b/test/ruby/test_econv.rb
index be4917ddf7..cb902d76f8 100644
--- a/test/ruby/test_econv.rb
+++ b/test/ruby/test_econv.rb
@@ -54,6 +54,28 @@ class TestEncodingConverter < Test::Unit::TestCase
assert(!encoding_list.include?(name2))
end
+ def test_newline_converter_with_ascii_incompatible
+ assert_raise(Encoding::NoConverter) {
+ Encoding::Converter.new("UTF-8", "UTF-16BE", Encoding::Converter::UNIVERSAL_NEWLINE_DECODER)
+ }
+ assert_raise(Encoding::NoConverter) {
+ Encoding::Converter.new("UTF-16BE", "UTF-8", Encoding::Converter::CRLF_NEWLINE_ENCODER)
+ }
+ assert_raise(Encoding::NoConverter) {
+ Encoding::Converter.new("UTF-16BE", "UTF-8", Encoding::Converter::CR_NEWLINE_ENCODER)
+ }
+
+ assert_nothing_raised {
+ Encoding::Converter.new("UTF-16BE", "UTF-8", Encoding::Converter::UNIVERSAL_NEWLINE_DECODER)
+ }
+ assert_nothing_raised {
+ Encoding::Converter.new("UTF-8", "UTF-16BE", Encoding::Converter::CRLF_NEWLINE_ENCODER)
+ }
+ assert_nothing_raised {
+ Encoding::Converter.new("UTF-8", "UTF-16BE", Encoding::Converter::CR_NEWLINE_ENCODER)
+ }
+ end
+
def test_get_encoding
ec = Encoding::Converter.new("UTF-8", "EUC-JP")
assert_equal(Encoding::UTF_8, ec.source_encoding)