Skip to content

3.0.0.beta1

Pre-release
Pre-release
Compare
Choose a tag to compare
@myronmarston myronmarston released this 08 Nov 04:55
· 1611 commits to main since this release

3.0.0.beta1 / 2013-11-07

full changelog

Breaking Changes for 3.0.0:

  • Remove explicit support for 1.8.6. (Jon Rowe)
  • Remove the deprecated be_close matcher, preferring be_within instead.
    (Sam Phippen)
  • Rename be_true and be_false to be_truthy and be_falsey. (Sam Phippen)
  • Make expect { }.to_not raise_error(SomeSpecificClass, message),
    expect { }.to_not raise_error(SomeSpecificClass) and
    expect { }.to_not raise_error(message) invalid, since they are prone
    to hiding failures. Instead, use expect { }.to_not raise_error (with no
    args). (Sam Phippen)
  • Within RSpec::Matchers.define blocks, helper methods made available
    either via def self.helper or extend HelperModule are no longer
    available to the match block (or any of the others). Instead
    include your helper module and define the helper method as an
    instance method. (Myron Marston)

Enhancements:

  • Support do..end style block with raise_error matcher. (Yuji Nakayama)
  • Rewrote custom matcher DSL to simplify its implementation and solve a
    few issues. (Myron Marston)
  • Allow early return from within custom matcher DSL blocks. (Myron
    Marston)
  • The custom matcher DSL's chain can now accept a block. (Myron
    Marston)
  • Support setting an expectation on a raise_error matcher via a chained
    with_message method call. (Sam Phippen)

Bug Fixes:

  • Allow include and match matchers to be used from within a
    DSL-defined custom matcher's match block. (Myron Marston)

Deprecations:

  • Using the old :should syntax without explicitly configuring it is deprecated.
    It will continue to work but will emit a deprecation warning in RSpec 3 if
    you do not explicitly enable it. (Sam Phippen)