ruby-changes:22945
From: nobu <ko1@a...>
Date: Tue, 13 Mar 2012 12:34:25 +0900 (JST)
Subject: [ruby-changes:22945] nobu:r34994 (trunk): assert_warn, assert_warning
nobu 2012-03-13 12:34:11 +0900 (Tue, 13 Mar 2012) New Revision: 34994 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=34994 Log: assert_warn, assert_warning * test/ruby/envutil.rb (assert_warn): add optional message argument. * test/ruby/envutil.rb (assert_warning): moved from test_io_m17n.rb Modified files: trunk/test/ruby/envutil.rb trunk/test/ruby/test_io_m17n.rb Index: test/ruby/test_io_m17n.rb =================================================================== --- test/ruby/test_io_m17n.rb (revision 34993) +++ test/ruby/test_io_m17n.rb (revision 34994) @@ -1,7 +1,6 @@ require 'test/unit' require 'tmpdir' require 'timeout' -require 'stringio' require_relative 'envutil' class TestIO_M17N < Test::Unit::TestCase @@ -12,17 +11,6 @@ Encoding::UTF_8 ] - def assert_warning(pat, mesg=nil) - begin - org_stderr = $stderr - $stderr = StringIO.new(warn = '') - yield - ensure - $stderr = org_stderr - end - assert_match(pat, warn, mesg) - end - def with_tmpdir Dir.mktmpdir {|dir| Dir.chdir(dir) { Index: test/ruby/envutil.rb =================================================================== --- test/ruby/envutil.rb (revision 34993) +++ test/ruby/envutil.rb (revision 34994) @@ -179,11 +179,16 @@ assert(status.success?, m) end - def assert_warn(msg) + def assert_warn(pat, message = nil) + message ||= proc {"warning message #{stderr.inspect} is expected to match #{pat.inspect}"} stderr = EnvUtil.verbose_warning { yield } - assert(msg === stderr, "warning message #{stderr.inspect} is expected to match #{msg.inspect}") + assert(pat === stderr, message) end + def assert_warning(*args) + assert_warn(*args) {$VERBOSE = false; yield} + end + def assert_no_memory_leak(args, prepare, code, message=nil, limit: 1.5) token = "\e[7;1m#{$$.to_s}:#{Time.now.strftime('%s.%L')}:#{rand(0x10000).to_s(16)}:\e[m" token_dump = token.dump -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/