From 92df7d98b62f48cf21cdec522f2e7b34380fd718 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Sat, 12 Oct 2019 14:03:21 +0900 Subject: Import CSV 3.1.2 (#2547) --- test/csv/write/test_general.rb | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'test/csv/write') diff --git a/test/csv/write/test_general.rb b/test/csv/write/test_general.rb index c879f54e74..d157b74ba1 100644 --- a/test/csv/write/test_general.rb +++ b/test/csv/write/test_general.rb @@ -205,6 +205,32 @@ module TestCSVWriteGeneral assert_equal(%Q[あ,い,う#{$INPUT_RECORD_SEPARATOR}].encode("EUC-JP"), generate_line(row)) end + + def test_encoding_with_default_internal + with_default_internal(Encoding::UTF_8) do + row = ["あ", "い", "う"].collect {|field| field.encode("EUC-JP")} + assert_equal(%Q[あ,い,う#{$INPUT_RECORD_SEPARATOR}].encode("EUC-JP"), + generate_line(row, encoding: Encoding::EUC_JP)) + end + end + + def test_with_default_internal + with_default_internal(Encoding::UTF_8) do + row = ["あ", "い", "う"].collect {|field| field.encode("EUC-JP")} + assert_equal(%Q[あ,い,う#{$INPUT_RECORD_SEPARATOR}].encode("EUC-JP"), + generate_line(row)) + end + end + + def with_default_internal(encoding) + original = Encoding.default_internal + begin + Encoding.default_internal = encoding + yield + ensure + Encoding.default_internal = original + end + end end class TestCSVWriteGeneralGenerateLine < Test::Unit::TestCase -- cgit v1.2.3