thoughtbot/shoulda-matchers — pull request #540 by lunks (2014-06-08 14:41:50+00:00)
Title: Rspec 3 on development

Now that RSpec 3 has been released, I'm trying to move shoulda-matchers spec suite to run on it.

I've put all Rails with exception of 4.1 to run with RSpec 2.99 to keep compatibility with RSpec 2.

Changes to internal helpers `:fail_with_message` and `:fail_with_message_including`:
* [x] Adding `#supports_block_expectations?`;
* [x] Changing `failure_message_with_should` and `failure_message_with_should_not` to new `failure_message` and `failure_message_when_negated`;
* [x] Aliasing `failure_message` and `failure_message_with_negated` to `failure_message_for_should` and `failure_message_for_should_not` to maintain compatibility with RSpec 2;

Smaller changes:
* [x] Replacing `be_true`, `be_false` and `be_nil` with `be true`, `be false` and `be nil`;
* [x] Replacing `pending` with `skip`;
* [x] Using `type` instead of `path` to include `Shoulda::Matchers::ActionController`

There is an extra commit that I'll remove that includes `RSpec::Support.require_rspec_support "method_signature_verifier"` on `spec_helper.rb` due to a [bug on rspec-expectations](https://github.com/rspec/rspec-expectations/compare/350eacb704a9...69ee1b08363c) that will be fixed on `rspec-expectations` 3.0.1. I've kept it so it is easier to run it locally to give this branch a try.

I'd like to go further and make `shoulda-matchers` spec suite run for both RSpec 2 and RSpec 3 to really maintain compatibility, and would love to give any ideas on given approach using Appraisal.