diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/logger/test_logdevice.rb | 3 | ||||
-rw-r--r-- | test/logger/test_logger.rb | 23 |
2 files changed, 26 insertions, 0 deletions
diff --git a/test/logger/test_logdevice.rb b/test/logger/test_logdevice.rb index 72802f690d..40f646d855 100644 --- a/test/logger/test_logdevice.rb +++ b/test/logger/test_logdevice.rb @@ -45,6 +45,7 @@ class TestLogDevice < Test::Unit::TestCase begin assert_file.exist?(@filename) assert_predicate(logdev.dev, :sync) + refute_predicate(logdev.dev, :binmode?) assert_equal(@filename, logdev.filename) logdev.write('hello') ensure @@ -53,6 +54,8 @@ class TestLogDevice < Test::Unit::TestCase # create logfile whitch is already exist. logdev = d(@filename) begin + assert_predicate(logdev.dev, :sync) + refute_predicate(logdev.dev, :binmode?) logdev.write('world') logfile = File.read(@filename) assert_equal(2, logfile.split(/\n/).size) diff --git a/test/logger/test_logger.rb b/test/logger/test_logger.rb index 5806e0c685..029203877a 100644 --- a/test/logger/test_logger.rb +++ b/test/logger/test_logger.rb @@ -240,6 +240,29 @@ class TestLogger < Test::Unit::TestCase assert_equal("false\n", log.msg) end + def test_add_binary_data_with_binmode_logdev + EnvUtil.with_default_internal(Encoding::UTF_8) do + begin + tempfile = Tempfile.new("logger") + tempfile.close + filename = tempfile.path + File.unlink(filename) + + logger = Logger.new filename, binmode: true + logger.level = Logger::DEBUG + + str = +"\x80" + str.force_encoding("ASCII-8BIT") + + logger.add Logger::DEBUG, str + assert_equal(2, File.binread(filename).split(/\n/).size) + ensure + logger.close + tempfile.unlink + end + end + end + def test_level_log logger = Logger.new(nil) logger.progname = "my_progname" |