From a8f8b617c0c609557c80f85de59a4472cc5d45d5 Mon Sep 17 00:00:00 2001 From: usa Date: Wed, 19 May 2010 03:05:05 +0000 Subject: * test/logger/test_logger.rb: close logger (or logdevice) if it's related to a file because some platforms such as Windows cannot remove opened files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/logger/test_logger.rb | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) (limited to 'test/logger') diff --git a/test/logger/test_logger.rb b/test/logger/test_logger.rb index f83070c7f4..576bec519f 100644 --- a/test/logger/test_logger.rb +++ b/test/logger/test_logger.rb @@ -311,10 +311,14 @@ class TestLogDevice < Test::Unit::TestCase end # create logfile whitch is already exist. logdev = d(@filename) - logdev.write('world') - logfile = File.read(@filename) - assert_equal(2, logfile.split(/\n/).size) - assert_match(/^helloworld$/, logfile) + begin + logdev.write('world') + logfile = File.read(@filename) + assert_equal(2, logfile.split(/\n/).size) + assert_match(/^helloworld$/, logfile) + ensure + logdev.close + end end def test_write @@ -464,6 +468,7 @@ class TestLogDevice < Test::Unit::TestCase assert(File.exist?(filename2)) assert(File.exist?(filename3)) ensure + logger.close if logger [filename1, filename2, filename3].each do |filename| File.unlink(filename) if File.exist?(filename) end @@ -491,20 +496,32 @@ class TestLoggerApplication < Test::Unit::TestCase def test_start @app.set_log(@filename) - @app.level = Logger::UNKNOWN - @app.start # logs FATAL log - assert_equal(1, File.read(@filename).split(/\n/).size) + begin + @app.level = Logger::UNKNOWN + @app.start # logs FATAL log + assert_equal(1, File.read(@filename).split(/\n/).size) + ensure + @app.logger.close + end end def test_logger @app.level = Logger::WARN @app.set_log(@filename) - assert_equal(Logger::WARN, @app.logger.level) + begin + assert_equal(Logger::WARN, @app.logger.level) + ensure + @app.logger.close + end @app.logger = logger = Logger.new(STDOUT) assert_equal(logger, @app.logger) assert_equal(Logger::WARN, @app.logger.level) @app.log = @filename - assert(logger != @app.logger) - assert_equal(Logger::WARN, @app.logger.level) + begin + assert(logger != @app.logger) + assert_equal(Logger::WARN, @app.logger.level) + ensure + @app.logger.close + end end end -- cgit v1.2.3