With the following example:

#---------------------------------------------------------
#!/usr/bin/ruby

require "test/unit"

class TestImplArchFile < Test::Unit::TestCase

  def test_loop

    [0,1,2].each do |i|
      assert_equal(i, 6, "Duh, #{i} is not equal to 6.")
    end
  end

end
#---------------------------------------------------------
I get the following output:
#---------------------------------------------------------

Loaded suite ./t
Started
F
Finished in 0.00527 seconds.

  1) Failure:
test_loop(TestImplArchFile)
    [./t.rb:10:in `test_loop'
     ./t.rb:9:in `each'
     ./t.rb:9:in `test_loop']:
Duh, 0 is not equal to 6.
<0> expected but was
<6>.
#---------------------------------------------------------

Is there any way I can see three errors, ie the exception
would create a failure, but not exit the def? I'd like to see
all errors in the loop. I'm not sure
#---------------------------------------------------------

  1) Failure:
test_loop(TestImplArchFile)
    [./t.rb:10:in `test_loop'
     ./t.rb:9:in `each'
     ./t.rb:9:in `test_loop']:
Duh, 0 is not equal to 6.
<0> expected but was
<6>.

  2) Failure:
test_loop(TestImplArchFile)
    [./t.rb:10:in `test_loop'
     ./t.rb:9:in `each'
     ./t.rb:9:in `test_loop']:
Duh, 1 is not equal to 6.
<1> expected but was
<6>.

  3) Failure:
test_loop(TestImplArchFile)
    [./t.rb:10:in `test_loop'
     ./t.rb:9:in `each'
     ./t.rb:9:in `test_loop']:
Duh, 2 is not equal to 6.
<2> expected but was
<6>.
-- 
Posted via http://www.ruby-forum.com/.