flexmock revival: flexmock 2.0 released !

Last year, Jim Weirich passed away. Never met the man, but I did use his code, and read a lot of his posts / saw presentations he gave. He was a prominent member of the Ruby community.

One of Jim’s gems, I relied and am still relying on. It took me a while, but I finally fixed the problems it had with “modern” ruby (read: 2.0+) and testing libraries (minitest v5 I am looking at you). A few months ago the rubygems.org people gave me rights on the gem itself !

So, here I am. 2.0 is tagged and released. Quite a bit of work on my side — mainly because I had to learn the (very nice) codebase.

Changes:

  • bump to 2.0 to mark the change of maintainership
  • require ‘flexmock’ no longer pulls test_unit_integration. Require the latter explicitely
  • dropped support for pre-2.0 Rubies
  • added explicit minitest support. This makes the minitest integration much nicer to work with (in particular, the flexmock_teardown is now executed “just at the right place”), and fixes issues with minitest 5. Just require flexmock/minitest.
  • partial mocks now supports prepended modules
  • validation errors that happen when a method is called (i.e. unexpected arguments, wrong call count) are reported with the backtrace of the call instead of with the backtrace of the expectation definition.