We’re pleased to announce the release of rspec-2.7.0. Release notes for
each
gem are listed below, but here are a couple of highlights:
Just type rspec
With the the 2.7.0 release, if you keep all of your specs in the
conventional
spec
directory, you don’t need to follow the rspec
command with a
path.
Just type rspec
.
If you keep your specs in a different directory, just set the
--default_path
option to that directory on the command line, or in a .rspec
config
file.
The rake task now lets Bundler manage Bundler
The RSpec::Core::RakeTask
invokes the rspec
command in a subshell.
In
recent releases, it assumed that you wanted it prefixed with bundle exec
if
it saw a Gemfile
. We then added gemfile
and skip_bundler
options
to the
task, so you could manage this in different ways.
It turns out that Bundler manages this quite well without any help from
RSpec.
If you activate Bundler in the parent shell, via the command line or
Bundler.setup
, it sets environment variables that activate Bundler in
the
subshell with the correct gemfile.
The gemfile
and skip_bundler
options are therefore deprecated and
have no
effect.
Release Notes
rspec-core-2.7.0
NOTE: RSpec’s release policy dictates that there should not be any
backward
incompatible changes in minor releases, but we’re making an exception to
release a change to how RSpec interacts with other command line tools.
As of 2.7.0, you must explicity require "rspec/autorun"
unless you use
the
rspec
command (which already does this for you).
-
Enhancements
- Add example.exception (David C.)
-
--default_path
command line option (Justin Ko) - support multiple
--line_number
options (David J. Hamilton)- also supports
path/to/file.rb:5:9
(runs examples on lines 5
and 9)
- also supports
- Allow classes/modules to be used as shared example group identifiers
(Arthur G.) - Friendly error message when shared context cannot be found (Sławosz
Sławiński) - Clear formatters when resetting config (John Bintz)
- Add
xspecify
and xexample as temp-pending methods (David
Chelimsky) - Add
--no-drb
option (Iain H.) - Provide more accurate run time by registering start time before code
is loaded (David C.) - Rake task default pattern finds specs in symlinked dirs (Kelly
Felkins) - Rake task no longer does anything to invoke bundler since Bundler
already
handles it for us. Thanks to Andre Arko for the tip. - Add
--failure-exit-code
option (Chris Griego)
-
Bug fixes
- Include
Rake::DSL
to remove deprecation warnings in Rake > 0.8.7
(Pivotal
Casebook) - Only eval
let
block once even if it returnsnil
(Adam Meehan) - Fix
--pattern
option (wasn’t being recognized) (David C.) - Only implicitly
require "rspec/autorun"
with therspec
command
(David
Chelimsky) - Ensure that rspec’s
at_exit
defines the exit code (Daniel
Doubrovkine) - Show the correct snippet in the HTML and TextMate formatters (Brian
Faherty)
- Include
rspec-expectations-2.7.0
-
Enhancements
- HaveMatcher converts argument using
to_i
(Alex Bepple & Pat
Maddox) - Improved failure message for the
have_xxx
matcher (Myron M.) - HaveMatcher supports
count
(Matthew Bellantoni) - Change matcher dups
Enumerable
before the action, supporting
custom
Enumerable
types likeCollectionProxy
in Rails (David C.)
- HaveMatcher converts argument using
-
Bug fixes
- Fix typo in
have(n).xyz
documentation (Jean Boussier) - fix
safe_sort
for ruby 1.9.2 (Kernel
now defines<=>
for
Object)
(Peter van Hardenberg)
- Fix typo in
rspec-mocks-2.7.0
-
Enhancements
- Use
__send__
rather thansend
(alextk) - Add support for
any_instance.stub_chain
(Sidu P.) - Add support for
any_instance
argument matching based onwith
(Sidu
Ponnappa and Andy Lindeman)
- Use
-
Changes
- Check for
failure_message_for_should
orfailure_message
instead
of
description
to detect a matcher (Tibor Claassen)
- Check for
-
Bug fixes
- pass a hash to
any_instance.stub
. (Justin Ko) - allow
to_ary
to be called without raisingNoMethodError
(Mikhail
Dieterle) -
any_instance
properly restores private methods (Sidu P.)
- pass a hash to
rspec-rails-2.7.0
-
Enhancments
-
ActiveRecord::Relation
can use the=~
matcher (Andy Lindeman) - Make generated controller spec more consistent with regard to ids
(Brent J. Nordquist) - Less restrictive autotest mapping between spec and implementation
files
(José Valim) -
require 'rspec/autorun'
from generatedspec_helper.rb
(David
Chelimsky) - add
bypass_rescue
(Lenny M.) -
route_to
accepts query string (Marc Weil)
-
-
Internal
- Added specs for generators using ammeter (Alex Rothenberg)
-
Bug fixes
- Fix configuration/integration bug with rails 3.0 (fixed in 3.1) in
which
fixure_file_upload
reads from
ActiveSupport::TestCase.fixture_path
and
misses RSpec’s configuration (David C.) - Support nested resource in view spec generator (David C.)
- Define
primary_key
on class generated by
mock_model("WithAString")
(David C.)
- Fix configuration/integration bug with rails 3.0 (fixed in 3.1) in