Permalink
Browse files

Imported minitest 3.4.0 (r7762)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information...
1 parent 8ee2226 commit a3980eb2b6a88d4e95477f1e7cd29e9776a8396a ryan committed Sep 5, 2012
Showing with 29 additions and 4 deletions.
  1. +5 −0 ChangeLog
  2. +7 −0 lib/minitest/README.txt
  3. +8 −4 lib/minitest/unit.rb
  4. +9 −0 test/minitest/test_minitest_unit.rb
View
@@ -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
View
@@ -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)
View
@@ -311,7 +311,8 @@ def assert_operator o1, op, o2 = UNDEFINED, msg = nil
##
# 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 @@ def assert_output stdout = nil, stderr = nil
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 @@ def skip msg = nil, bt = caller
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:
@@ -897,6 +897,15 @@ def test_assert_output_both
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"

0 comments on commit a3980eb

Please sign in to comment.