diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | lib/minitest/README.txt | 7 | ||||
-rw-r--r-- | lib/minitest/unit.rb | 12 | ||||
-rw-r--r-- | test/minitest/test_minitest_unit.rb | 9 |
4 files changed, 29 insertions, 4 deletions
@@ -1,3 +1,8 @@ +Thu Sep 6 08:20:55 2012 Ryan Davis <ryand-ruby@zenspider.com> + + * lib/minitest/*: Imported minitest 3.4.0 (r7762) + * test/minitest/*: ditto + Wed Sep 5 19:20:53 2012 NAKAMURA Usaku <usa@ruby-lang.org> * parse.y (rb_warn4S): renamed from rb_warn4(), because the case in diff --git a/lib/minitest/README.txt b/lib/minitest/README.txt index 9029354921..d0ebaa324d 100644 --- a/lib/minitest/README.txt +++ b/lib/minitest/README.txt @@ -315,6 +315,13 @@ the gem, but you'll need to activate the gem explicitly to use it: # ... usual testing stuffs ... +DO NOTE: There is a serious problem with the way that ruby 1.9/2.0 +packages their own gems. They install a gem specification file, but +don't install the gem contents in the gem path. This messes up +Gem.find_files and many other things (gem which, gem contents, etc). + +Just install minitest as a gem for real and you'll be happier. + == LICENSE: (The MIT License) diff --git a/lib/minitest/unit.rb b/lib/minitest/unit.rb index ed9c4fc721..ab16d1891f 100644 --- a/lib/minitest/unit.rb +++ b/lib/minitest/unit.rb @@ -311,7 +311,8 @@ module MiniTest ## # Fails if stdout or stderr do not output the expected results. # Pass in nil if you don't care about that streams output. Pass in - # "" if you require it to be silent. + # "" if you require it to be silent. Pass in a regexp if you want + # to pattern match. # # See also: #assert_silent @@ -320,8 +321,11 @@ module MiniTest yield end - y = assert_equal stderr, err, "In stderr" if stderr - x = assert_equal stdout, out, "In stdout" if stdout + err_msg = Regexp === stderr ? :assert_match : :assert_equal if stderr + out_msg = Regexp === stdout ? :assert_match : :assert_equal if stdout + + y = send err_msg, stderr, err, "In stderr" if err_msg + x = send out_msg, stdout, out, "In stdout" if out_msg (!stdout || x) && (!stderr || y) end @@ -655,7 +659,7 @@ module MiniTest end class Unit # :nodoc: - VERSION = "3.3.0" # :nodoc: + VERSION = "3.4.0" # :nodoc: attr_accessor :report, :failures, :errors, :skips # :nodoc: attr_accessor :test_count, :assertion_count # :nodoc: diff --git a/test/minitest/test_minitest_unit.rb b/test/minitest/test_minitest_unit.rb index 28c6e93028..eadf59ee70 100644 --- a/test/minitest/test_minitest_unit.rb +++ b/test/minitest/test_minitest_unit.rb @@ -897,6 +897,15 @@ class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase end end + def test_assert_output_both_regexps + @assertion_count = 4 + + @tc.assert_output(/y.y/, /bl.h/) do + print "yay" + $stderr.print "blah" + end + end + def test_assert_output_err @tc.assert_output nil, "blah" do $stderr.print "blah" |