diff options
Diffstat (limited to 'test/rdoc/test_rdoc_encoding.rb')
-rw-r--r-- | test/rdoc/test_rdoc_encoding.rb | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/test/rdoc/test_rdoc_encoding.rb b/test/rdoc/test_rdoc_encoding.rb index b5ffd7714c..d43bc2e244 100644 --- a/test/rdoc/test_rdoc_encoding.rb +++ b/test/rdoc/test_rdoc_encoding.rb @@ -1,15 +1,12 @@ # coding: US-ASCII -require 'rubygems' -require 'minitest/autorun' -require 'rdoc' -require 'rdoc/encoding' +require 'rdoc/test_case' -require 'tempfile' - -class TestRDocEncoding < MiniTest::Unit::TestCase +class TestRDocEncoding < RDoc::TestCase def setup + super + @tempfile = Tempfile.new 'test_rdoc_encoding' end @@ -100,6 +97,22 @@ class TestRDocEncoding < MiniTest::Unit::TestCase assert_equal Encoding::UTF_8, content.encoding end + def test_class_read_file_encoding_invalid + skip "Encoding not implemented" unless Object.const_defined? :Encoding + + @tempfile.write "# coding: ascii\nM\xE4r" + @tempfile.flush + + contents = :junk + _, err = capture_io do + contents = RDoc::Encoding.read_file @tempfile.path, Encoding::UTF_8 + end + + assert_equal "unable to convert \"\\xE4\" on US-ASCII for #{@tempfile.path}, skipping\n", err + + assert_nil contents + end + def test_class_read_file_encoding_with_signature skip "Encoding not implemented" unless defined? ::Encoding |