From d6c86e631d030202f23b096a1659a495c0263c5a Mon Sep 17 00:00:00 2001 From: ryan Date: Thu, 17 Nov 2011 23:02:16 +0000 Subject: Imported minitest 2.8.1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/minitest/test_minitest_mock.rb | 15 +++++++++++ test/minitest/test_minitest_unit.rb | 50 ++++++++++++++++++++++++++++++++++--- 2 files changed, 61 insertions(+), 4 deletions(-) (limited to 'test/minitest') diff --git a/test/minitest/test_minitest_mock.rb b/test/minitest/test_minitest_mock.rb index 8ba29840d4..e8954621ec 100644 --- a/test/minitest/test_minitest_mock.rb +++ b/test/minitest/test_minitest_mock.rb @@ -147,6 +147,21 @@ class TestMiniTestMock < MiniTest::Unit::TestCase util_verify_bad end + def test_verify_shows_the_actual_arguments_in_the_message + mock = MiniTest::Mock.new + mock.expect :capitalized, true, ["a"] + mock.capitalized "b" + e = assert_raises MockExpectationError do + mock.verify + end + + a = {:retval=>true, :args=>["a"]} + b = {:retval=>true, :args=>["b"]} + + expected = "expected capitalized, #{a.inspect}, got [#{b.inspect}]" + assert_equal expected, e.message + end + def util_verify_bad assert_raises MockExpectationError do @mock.verify diff --git a/test/minitest/test_minitest_unit.rb b/test/minitest/test_minitest_unit.rb index 39e44a33d8..7db7b3ce30 100644 --- a/test/minitest/test_minitest_unit.rb +++ b/test/minitest/test_minitest_unit.rb @@ -6,9 +6,7 @@ require 'stringio' require 'pathname' -require 'minitest/unit' - -MiniTest::Unit.autorun +require 'minitest/autorun' module MyModule; end class AnError < StandardError; include MyModule; end @@ -16,7 +14,7 @@ class ImmutableString < String; def inspect; super.freeze; end; end class TestMiniTestUnit < MiniTest::Unit::TestCase pwd = Pathname.new(File.expand_path(Dir.pwd)) - basedir = Pathname.new(File.expand_path(MiniTest::MINI_DIR)) + 'mini' + basedir = Pathname.new(File.expand_path("lib/minitest")) + 'mini' basedir = basedir.relative_path_from(pwd).to_s MINITEST_BASE_DIR = basedir[/\A\./] ? basedir : "./#{basedir}" BT_MIDDLE = ["#{MINITEST_BASE_DIR}/test.rb:161:in `each'", @@ -190,6 +188,38 @@ Finished tests in 0.00 assert_equal ex, fu end + def test_run_test + tc = Class.new(MiniTest::Unit::TestCase) do + attr_reader :foo + + def run_test name + @foo = "hi mom!" + super + @foo = "okay" + end + + def test_something + assert_equal "hi mom!", foo + end + end + + Object.const_set(:ATestCase, tc) + + @tu.run %w[--seed 42] + + expected = "Run options: --seed 42 + +# Running tests: + +. + +Finished tests in 0.00 + +1 tests, 1 assertions, 0 failures, 0 errors, 0 skips +" + assert_report expected + end + def test_run_error tc = Class.new(MiniTest::Unit::TestCase) do def test_something @@ -1210,6 +1240,18 @@ FILE:LINE:in `test_assert_raises_triggered_subclass' assert_equal [ATestCase], MiniTest::Unit::TestCase.test_suites end + def test_expectation + @assertion_count = 2 + + @tc.assert_equal true, 1.must_equal(1) + end + + def test_expectation_triggered + util_assert_triggered "Expected: 2\n Actual: 1" do + 1.must_equal 2 + end + end + def test_flunk util_assert_triggered 'Epic Fail!' do @tc.flunk -- cgit v1.2.3