Miniunit 1.2.0 Released

miniunit version 1.2.0 has been released!

mini/test is a completely minimial drop-in replacement for ruby’s
test/unit. This is meant to be clean and easy to use both as a regular
test writer and for language implementors that need a minimal set of
methods to bootstrap a working unit test suite.

mini/spec is a functionally complete spec engine.

mini/mock, by Steven B., is a beautifully tiny mock object framework.


1.2.0 / 2008-06-09

  • 2 major enhancements:

    • Added Mini::Spec.
    • Added Mini::Mock. Thanks Steven B.!!
  • 23 minor enhancements:

    • Added bin/use_miniunit to make it easy to test out miniunit.
    • Added -n filtering, thanks to Phil H.!
    • Added args argument to #run, takes ARGV from at_exit.
    • Added test name output if $DEBUG.
    • Added a refute (was deny) for every assert.
    • Added capture_io and a bunch of nice assertions from zentest.
    • Added deprecation mechanism for assert_no/not methods to test/
    • Added pp output when available.
    • Added tests for all assertions. Pretty much maxed out coverage.
    • Added tests to verify consistency and good naming.
    • Aliased and deprecated all ugly assertions.
    • Cleaned out test/unit. Moved autorun there.
    • Code cleanup to make extensions easier. Thanks Chad!
    • Got spec args reversed in all but a couple assertions. Much more
    • Improved error messages across the board. Adds your message to
      the default.
    • Moved into Mini namespace, renamed to Mini::Test and Mini::Spec.
    • Pulled the assertions into their own module…
    • Removed as much code as I could while still maintaining full
      • Moved filter_backtrace into MiniTest.
      • Removed MiniTest::Unit::run. Unnecessary.
      • Removed location_of_failure. Unnecessary.
      • Rewrote test/unit’s filter_backtrace. Flog from 37.0 to 18.1
    • Removed assert_send. Google says it is never used.
    • Renamed MiniTest::Unit.autotest to #run.
    • Renamed deny to refute.
    • Rewrote some ugly/confusing default assertion messages.
    • assert_in_delta now defaults to 0.001 precision. Makes specs
  • 9 bug fixes:

    • Fixed assert_raises to raise outside of the inner-begin/rescue.
    • Fixed for ruby 1.9 and rubinius.
    • No longer exits 0 if exception in code PRE-test run causes early
    • Removed implementors method list from mini/test.rb - too stale.
    • assert_nothing_raised takes a class as an arg. wtf? STUPID
    • “.EF” output is now unbuffered.
    • Bunch of changes to get working with rails… UGH.
      • Added stupid hacks to deal with rails not requiring their
      • Now bitch loudly if someone defines one of my classes instead
        of requiring.
    • Fixed infect method to work better on 1.9.
    • Fixed all shadowed variable warnings in 1.9.