Development
6.1.5 / 2024-09-02
Bug Fixes:
- Restore old order of requiring support files. (Franz Liedke, #2785)
 - Prevent running 
rake spec:statsetupon Rails main / 8.0.0. (Petrik de Heus, #2781) 
6.1.4 / 2024-08-15
Bug Fixes:
- Prevent 
have_http_statusmatcher raising an error when encountering a rawRack::MockResponse. (Christophe Bliard, #2771) - Move Rails version conditional from index scaffold generated file to template. (Matt Jankowski, #2777)
 
6.1.3 / 2024-06-19
Bug Fixes:
- Reset 
ActiveSupport::CurrentAttributesbetween examples. (Javier Julio, #2752) - Fix a broken link in generated mailer previews. (Chiara Núñez, #2764)
 - Fix 
have_status_codebehaviour with deprecated status names by delegating toRack::Utils.status_code/1to set the expected status code. (Darren Boyd, #2765) 
6.1.2 / 2024-03-19
Bug Fixes:
- Fix generated mailer paths to match Rails convention. (Patrício dos Santos, #2735)
 - Fix class in template for generator specs. (Nicolas Buduroi, #2744)
 
6.1.1 / 2024-01-25
Bug Fixes:
- Improved deprecation message for 
RSpec::Rails::Configuration.fixture_paths(Benoit Tigeot, #2720) - Fix support for namespaced fixtures in Rails 7.1. (Benedikt Deicke, #2716)
 
6.1.0 / 2023-11-21
Enhancements:
- Support for Rails 7.1
 - Minor tweak to generated 
rails_helper.rbto useRails.root.join. (@masato-bkn, Ryo Nakamura, #2640, #2678) - Add 
RSpec::Rails::Configuration.fixture_pathsconfiguration to support the matching change toActiveRecord::TestFixtures, previous singular form is deprecated and will be removed in Rails 7.2. (Juan Gueçaimburu, #2673) - Add 
send_emailmatcher to match emails rather than specific jobs. (Andrei Kaleshka, #2670) - When using 
renderin view specs,:localswill now be merged into the default implicit template, allowingrender locals: {...}style calls. (Jon Rowe, #2686) - Add support for 
Rails.config.action_mailer.preview_pathson Rails 7.1/ (Jon Rowe, #2706) 
6.0.4 / 2023-11-21
Bug Fixes:
- Fuzzy match 
have_broadcasted_toso that argument matchers can be used. (Timothy Peraza, #2684) - Fix fixture warning during 
:contexthooks on Railsmain. (Jon Rowe, #2685) - Fix 
stub_templateon Railsmain. (Jon Rowe, #2685) - Fix variable name in scaffolded view specs when namespaced. (Taketo Takashima, #2694)
 - Prevent 
take_failed_screenshotproducing an additional error throughmetadataaccess. (Jon Rowe, #2704) - Use 
ActiveSupport::ExecutionContext::TestHelperon Rails 7+. (Jon Rowe, #2711) - Fix leak of templates stubbed with 
stub_templateon Rails 7.1. (Jon Rowe, #2714) 
6.0.3 / 2023-05-31
Bug Fixes:
- Set 
ActiveStorage::FixtureSet.file_fixture_pathwhen including file fixture support. (Jason Yates, #2671) - Allow 
broadcast_tomatcher to take Symbols. (@Vagab, #2680) 
6.0.2 / 2023-05-04
Bug Fixes:
- Fix ActionView::PathSet when 
render_viewsis off for Rails 7.1. (Eugene Kenny, Iliana, #2631) - Support Rails 7.1's 
#fixtures_pathsin example groups (removes a deprecation warning). (Nicholas Simmons, #2664) - Fix 
have_enqueued_jobto properly detect enqueued jobs when other jobs were performed inside the expectation block. (Slava Kardakov, Phil Pirozhkov, #2573) 
6.0.1 / 2022-10-18
Bug Fixes:
- Prevent tagged logged support in Rails 7 calling 
#name. (Jon Rowe, #2625) 
6.0.0 / 2022-10-10
Enhancements:
- Support Rails 7
 - Template tweaks to remove instance variables from generated specs. (Takuma Ishikawa, #2599)
 - Generators now respects default path configuration option. (@vivekmiyani, #2508)
 
Breaking Changes:
- Drop support for Rails below 6.1
 - Drop support for Ruby below 2.5 (following supported versions of Rails 6.1)
 - Change the order of 
after_teardownfromaftertoaroundin system specs to improve compatibility with extensions and Capybara. (Tim Diggins, #2596) 
Deprecations:
- Deprecates integration spec generator (
rspec:integration) which was an alias of request spec generator (rspec:request) (Luka Lüdicke, #2374) 
5.1.2 / 2022-04-24
Bug Fixes:
- Fix controller scaffold templates parameter name. (Taketo Takashima, #2591)
 - Include generator specs in the inferred list of specs. (Jason Karns, #2597)
 
5.1.1 / 2022-03-07
Bug Fixes:
- Properly handle global id serialised arguments in 
have_enqueued_mail. (Jon Rowe, #2578) 
5.1.0 / 2022-01-26
Enhancements:
- Make the API request scaffold template more consistent and compatible with Rails 6.1. (Naoto Hamada, #2484)
 - Change the scaffold 
rails_helper.rbtemplate to userequire_relative. (Jon Dufresne, #2528) 
5.0.3 / 2022-01-26
Bug Fixes:
- Properly name params in controller and request spec templates when
using the 
--model-nameparameter. (@kenzo-tanaka, #2534) - Fix parameter matching with mail delivery job and ActionMailer::MailDeliveryJob. (Fabio Napoleoni, #2516, #2546)
 - Fix Rails 7 
have_enqueued_mailcompatibility (Mikael Henriksson, #2537, #2546) 
5.0.2 / 2021-08-14
Bug Fixes:
- Prevent generated job specs from duplicating 
_jobin filenames. (Nick Flückiger, #2496) - Fix 
ActiveRecord::TestFixture#uses_transactionby using example description to replace example name rather than example in our monkey patchedrun_in_transaction?method. (Stan Lo, #2495) - Prevent keyword arguments being lost when methods are invoked dynamically in controller specs. (Josh Cheek, #2509, #2514)
 
5.0.1 / 2021-03-18
Bug Fixes:
- Limit multibyte example descriptions when used in system tests for #method_name which ends up as screenshot names etc. (@y-yagi, #2405, #2487)
 
5.0.0 / 2021-03-09
Enhancements:
- Support new #file_fixture_path and new fixture test support code. (Jon Rowe, #2398)
 - Support for Rails 6.1. (Benoit Tigeot, Jon Rowe, Phil Pirozhkov, and more #2398)
 
Breaking Changes:
- Drop support for Rails below 5.2.
 
4.1.1 / 2021-03-09
Bug Fixes:
- Remove generated specs when destroying a generated controller. (@Naokimi, #2475)
 
4.1.0 / 2021-03-06
Enhancements:
- Issue a warning when using job matchers with 
#atmismatch onusecprecision. (Jon Rowe, #2350) - Generated request specs now have a bare 
_specsuffix instead ofrequest_spec. (Eloy Espinaco, Luka Lüdicke, #2355, #2356, #2378) - Generated scaffold now includes engine route helpers when inside a mountable engine. (Andrew W. Lee, #2372)
 - Improve request spec "controller" scaffold when no action is specified. (Thomas Hareau, #2399)
 - Introduce testing snippets concept (Phil Pirozhkov, Benoit Tigeot, #2423)
 - Prevent collisions with 
let(:name)for Rails 6.1 andlet(:method_name)on older Rails. (Benoit Tigeot, #2461) 
4.0.2 / 2020-12-26
Bug Fixes:
- Indent all extra failure lines output from system specs. (Alex Robbin, #2321)
 - Generated request spec for update now uses the correct let. (Paul Hanyzewski, #2344)
 - Return 
true/falsefrom predicate methods in config rather than raw values. (Phil Pirozhkov, Jon Rowe, #2353, #2354) - Remove old #fixture_path feature detection code which broke under newer Rails. (Koen Punt, Jon Rowe, #2370)
 - Fix an error when 
use_active_recordisfalse(Phil Pirozhkov, #2423) 
4.0.1 / 2020-05-16
Bug Fixes:
- Remove warning when calling 
driven_byin system specs. (Aubin Lorieux, #2302) - Fix comparison of times for 
#atin job matchers. (Jon Rowe, Markus Doits, #2304) - Allow 
have_enqueued_mailto match when a sub class ofActionMailer::DeliveryJobis set using<Class>.delivery_job=. (Atsushi Yoshida #2305) - Restore Ruby 2.2.x compatibility. (Jon Rowe, #2332)
 - Add 
required_ruby_versionto gem spec. (Marc-André Lafortune, #2319, #2338) 
4.0.0 / 2020-03-24
Enhancements:
- Adds support for Rails 6. (Penelope Phippen, Benoit Tigeot, Jon Rowe, #2071)
 - Adds support for JRuby on Rails 5.2 and 6
 - Add support for parameterised mailers (Ignatius Reza, #2125)
 - Add ActionMailbox spec helpers and test type (James Dabbs, #2119)
 - Add ActionCable spec helpers and test type (Vladimir Dementyev, #2113)
 - Add support for partial args when using 
have_enqueued_mail(Ignatius Reza, #2118, #2125) - Add support for time arguments for 
have_enqueued_job(@alpaca-tc, #2157) - Improve path parsing in view specs render options. (John Hawthorn, #2115)
 - Add routing spec template as an option for generating controller specs. (David Revelo, #2134)
 - Add argument matcher support to 
have_enqueued_*matchers. (Phil Pirozhkov, #2206) - Switch generated templates to use ruby 1.9 hash keys. (Tanbir Hasan, #2224)
 - Add 
have_been_performed/have_performed_job/perform_jobActiveJob matchers (Isaac Seymour, #1785) - Default to generating request specs rather than controller specs when generating a controller (Luka Lüdicke, #2222)
 - Allow 
ActiveJobmatchers#on_queuemodifier to take symbolic queue names. (Nils Sommer, #2283) - The scaffold generator now generates request specs in preference to controller specs. (Luka Lüdicke, #2288)
 - Add configuration option to disable ActiveRecord. (Jon Rowe, Phil Pirozhkov, Hermann Mayer, #2266)
 -  Set 
ActionDispatch::SystemTesting::Server.silence_puma = truewhen running system specs. (ta1kt0me, Benoit Tigeot, #2289) 
Bug Fixes:
EmptyTemplateHandler.callnow needs to support an additional argument in Rails 6. (Pavel Rosický, #2089)- Suppress warning from 
SQLite3Adapter.represent_boolean_as_integerwhich is deprecated. (Pavel Rosický, #2092) ActionView::Template#formatshas been deprecated and replaced byActionView::Template#format(Seb Jacobs, #2100)- Replace 
before_teardownas well asafter_teardownto ensure screenshots are generated correctly. (Jon Rowe, #2164) ActionView::FixtureResolver#hashhas been renamed toActionView::FixtureResolver#data. (Penelope Phippen, #2076)- Prevent 
driven_by(:selenium)being called due to hook precedence. (Takumi Shotoku, #2188) - Prevent a 
WrongScopeErrorbeing thrown during loading fixtures on Rails 6.1 development version. (Edouard Chin, #2215) - Fix Mocha mocking support with 
should. (Phil Pirozhkov, #2256) - Restore previous conditional check for setting 
default_url_optionsin feature specs, prevents aNoMethodErrorin some scenarios. (Eugene Kenny, #2277) - Allow changing 
ActiveJob::Base.queue_adapterinside a system spec. (Jonathan Rochkind, #2242) rails generate generatorcommand now creates related spec file (Joel Azemar, #2217)- Relax upper 
capybaraversion constraint to allow for Capybara 3.x (Phil Pirozhkov, #2281) - Clear ActionMailer test mailbox after each example (Benoit Tigeot, #2293)
 
Breaking Changes:
- Drops support for Rails below 5.0
 - Drops support for Ruby below 2.3
 
3.9.1 / 2020-03-10
Bug Fixes:
- Add missing require for have_enqueued_mail matcher. (Ignatius Reza, #2117)
 
3.9.0 / 2019-10-08
Enhancements
- Use 
__dir__instead of__FILE__in generatedrails_helper.rbwhere supported. (OKURA Masafumi, #2048) - Add 
have_enqueued_mailmatcher as a "super" matcher to theActiveJobmatchers making it easier to match onActiveJobdelivered emails. (Joel Lubrano, #2047) - Add generator for system specs on Rails 5.1 and above. (Andrzej Sliwa, #1933)
 - Add generator for generator specs. (@ConSou, #2085)
 - Add option to generate routes when generating controller specs. (David Revelo, #2134)
 
Bug Fixes:
- Make the 
ActiveJobmatchers fail when multiple jobs are queued for negated matches. e.g.expect { job; job; }.to_not have_enqueued_job. (Emric Istanful, #2069) 
3.8.3 / 2019-10-03
Bug Fixes:
- Namespaced fixtures now generate a 
/separated path rather than an_. (@nxlith, #2077) - Check the arity of 
errorsbefore attempting to use it to generate thebe_validerror message. (Kevin Kuchta, #2096) 
3.8.2 / 2019-01-13
Bug Fixes:
- Fix issue with generator for preview specs where 
Mailerwould be duplicated in the name. (Kohei Sugi, #2037) - Fix the request spec generator to handle namespaced files. (Kohei Sugi, #2057)
 - Further truncate system test filenames to handle cases when extra words are prepended. (Takumi Kaji, #2058)
 - Backport: Make the 
ActiveJobmatchers fail when multiple jobs are queued for negated matches. e.g. `expect { job; job; }.to_not have_enqueued_job (Emric Istanful, #2069) 
3.8.1 / 2018-10-23
Bug Fixes:
- Fix 
NoMethodError: undefined method 'strip'when using aPathnameobject as the fixture file path. (Aaron Kromer, #2026) - When generating feature specs, do not duplicate namespace in the path name. (Laura Paakkinen, #2034)
 - Prevent 
ActiveJob::DeserializationErrorfrom being issued whenActiveJobmatchers de-serialize arguments. (@aymeric-ledorze, #2036) 
3.8.0 / 2018-08-04
Enhancements:
- Improved message when migrations are pending in the default 
rails_helper.rb(Koichi ITO, #1924) have_http_statusmatcher now supports Rails 5.2 style response symbols (Douglas Lovell, #1951)- Change generated Rails helper to match Rails standards for Rails.root (Alessandro Rodi, #1960)
 - At support for asserting enqueued jobs have no wait period attached. (Brad Charna, #1977)
 - Cache instances of 
ActionView::Templateused instub_templateresulting in increased performance due to less allocations and setup. (Simon Coffey, #1979) - Rails scaffold generator now respects longer namespaces (e.g. api/v1/<thing>). (Laura Paakkinen, #1958)
 
Bug Fixes:
- Escape quotation characters when producing method names for system spec screenshots. (Shane Cavanaugh, #1955)
 - Use relative path for resolving fixtures when 
fixture_pathis not set. (Laurent Cobos, #1943) - Allow custom template resolvers in view specs. (@ahorek, #1941)
 
3.7.2 / 2017-11-20
Bug Fixes:
- Delay loading system test integration until used. (Jon Rowe, #1903)
 - Ensure specs using the aggregate failures feature take screenshots on failure. (Matt Brictson, #1907)
 
3.7.1 / 2017-10-18
Bug Fixes:
- Prevent system test integration loading when puma or capybara are missing (Sam Phippen, #1884)
 
3.7.0 / 2017-10-17
Bug Fixes:
- Prevent "template not rendered" log message from erroring in threaded environments. (Samuel Cochran, #1831)
 - Correctly generate job name in error message. (Wojciech Wnętrzak, #1814)
 
Enhancements:
- Allow 
be_a_new(...).with(...)matcher to accept matchers for attribute values. (Britni Alexander, #1811) - Only configure RSpec Mocks if it is fully loaded. (James Adam, #1856)
 - Integrate with 
ActionDispatch::SystemTestCase. (Sam Phippen, #1813) 
3.6.0 / 2017-05-04
Enhancements:
- Add compatibility for Rails 5.1. (Sam Phippen, Yuichiro Kaneko, #1790)
 
Bug Fixes:
- Fix scaffold generator so that it does not generate broken controller specs on Rails 3.x and 4.x. (Yuji Nakayama, #1710)
 
3.6.0.beta2 / 2016-12-12
Enhancements:
- Improve failure output of ActiveJob matchers by listing queued jobs. (Wojciech Wnętrzak, #1722)
 - Load 
spec_helper.rbearlier inrails_helper.rbby default. (Kevin Glowacz, #1795) 
3.6.0.beta1 / 2016-10-09
Enhancements:
- Add support for 
rake notesin Rails>= 5.1. (John Meehan, #1661) - Remove 
assignsandassert_templatefrom scaffold spec generators (Josh Justice, #1689) - Add support for generating scaffolds for api app specs. (Krzysztof Zych, #1685)
 
3.5.2 / 2016-08-26
Bug Fixes:
- Stop unnecessarily loading 
rspec/corefromrspec/railsto avoid IRB context warning. (Myron Marston, #1678) - Deserialize arguments within ActiveJob matchers correctly. (Wojciech Wnętrzak, #1684)
 
3.5.1 / 2016-07-08
Bug Fixes:
- Only attempt to load 
ActionDispatch::IntegrationTest::Behavioron Rails 5, and above; Prevents possibleTypeErrorwhen an existingBehaviourclass is defined. (#1660, Betesh). 
3.5.0 / 2016-07-01
No user facing changes since beta4
3.5.0.beta4 / 2016-06-05
Enhancements:
- Add support for block when using 
withonhave_enqueued_job. (John Schroeder, #1578) - Add support for 
file_fixture(...). (Wojciech Wnętrzak, #1587) - Add support for 
setupandteardownwith blocks (Miklós Fazekas, #1598) - Add 
enqueue_jobalias forhave_enqueued_job, supportonce/twice/thrice, addhave_been_enqueuedmatcher to support use without blocks. (Sergey Alexandrovich, #1613) 
Bug fixes:
- Prevent asset helpers from taking precedence over route helpers. (Prem Sichanugrist, #1496)
 - Prevent 
NoMethodErrorduring failedhave_renderedassertions on weird templates. (Jon Rowe, #1623). 
3.5.0.beta3 / 2016-04-02
Enhancements:
- Add support for Rails 5 Beta 3 (Sam Phippen, Benjamin Quorning, Koen Punt, #1589, #1573)
 
Bug fixes:
- Support custom resolvers when preventing views from rendering. (Jon Rowe, Benjamin Quorning, #1580)
 
3.5.0.beta2 / 2016-03-10
Enhancements:
- Include 
ActionDispatch::IntegrationTest::Behaviorin request spec example groups when on Rails 5, allowing integration test helpers to be used in request specs. (Scott Bronson, #1560) 
Bug fixes:
- Make it possible to use floats in auto generated (scaffold) tests. (Alwahsh, #1550)
 
3.5.0.beta1 / 2016-02-06
Enhancements:
- Add a 
--singularizeoption for the feature spec generator (Felicity McCabe, #1503) - Prevent leaking TestUnit methods in Rails 4+ (Fernando Seror Garcia, #1512)
 - Add support for Rails 5 (Sam Phippen, #1492)
 
Bug fixes:
- Make it possible to write nested specs within helper specs on classes that are internal to helper classes. (Sam Phippen, Peter Swan, #1499).
 - Warn if a fixture method is called from a 
before(:context)block, instead of crashing with aundefined method for nil:NilClass. (Sam Phippen, #1501) - Expose path to view specs (Ryan Clark, Sarah Mei, Sam Phippen, #1402)
 - Prevent installing Rails 3.2.22.1 on Ruby 1.8.7. (Jon Rowe, #1540)
 - Raise a clear error when 
have_enqueued_jobis used with non-test adapter. (Wojciech Wnętrzak, #1489) 
3.4.2 / 2016-02-02
Bug Fixes:
- Cache template resolvers during path lookup to prevent performance regression from #1535. (Andrew White, #1544)
 
3.4.1 / 2016-01-25
Bug Fixes:
- Fix no method error when rendering templates with explicit 
:fileparameters for Rails version4.2.5.1. (Andrew White, Sam Phippen, #1535) 
3.4.0 / 2015-11-11
Enhancements:
- Improved the failure message for 
have_renderedmatcher on a redirect response. (Alex Egan, #1440) - Add configuration option to filter out Rails gems from backtraces. (Bradley Schaefer, #1458)
 - Enable resolver cache for view specs for a large speed improvement (Chris Zetter, #1452)
 - Add 
have_enqueued_jobmatcher for checking if a block has queued jobs. (Wojciech Wnętrzak, #1464) 
Bug Fixes:
- Fix another load order issued which causes an undefined method 
fixture_patherror when loading rspec-rails after a spec has been created. (Nikki Murray, #1430) - Removed incorrect surrounding whitespace in the rspec-rails backtrace
exclusion pattern for its own 
libcode. (Jam Black, #1439) 
3.3.3 / 2015-07-15
Bug Fixes:
- Fix issue with generators caused by 
Rails.configuration.hidden_namespacesincluding symbols. (Dan Kohn, #1414) 
3.3.2 / 2015-06-18
Bug Fixes:
- Fix regression that caused stubbing abstract ActiveRecord model
classes to trigger internal errors in rails due the the verifying
double lifecycle wrongly calling 
define_attribute_methodson the abstract AR class. (Jon Rowe, #1396) 
3.3.1 / 2015-06-14
Bug Fixes:
- Fix regression that caused stubbing ActiveRecord model classes to trigger internal errors in rails. (Myron Marston, Aaron Kromer, #1395)
 
3.3.0 / 2015-06-12
Enhancements:
- Add support for PATCH to route specs created via scaffold. (Igor Zubkov, #1336)
 - Improve controller and routing spec calls to 
routesby usingyieldinstead ofcall. (Anton Davydov, #1308) - Add support for 
ActiveJobspecs as standardRSpec::Rails::RailsExampleGroups via bothtype: :joband inferring type from spec directoryspec/jobs. (Gabe Martin-Dempesy, #1361) - Include 
RSpec::Rails::FixtureSupportinto example groups using metadatause_fixtures: true. (Aaron Kromer, #1372) - Include 
rspec:requestgenerator for generating request specs; this is an alias ofrspec:integration(Aaron Kromer, #1378) - Update 
rails_helpergenerator with a default check to abort the spec run when the Rails environment is production. (Aaron Kromer, #1383) 
3.2.3 / 2015-06-06
Bug Fixes:
- Fix regression with the railtie resulting in undefined method 
preview_path=on Rails 3.x and 4.0 (Aaron Kromer, #1388) 
3.2.2 / 2015-06-03
Bug Fixes:
- Fix auto-including of generic 
Helperobject for view specs sitting in theapp/viewsroot (David Daniell, #1289) - Remove pre-loading of ActionMailer in the Railtie (Aaron Kromer, #1327)
 - Fix undefined method 
need_auto_run=error when using Ruby 2.1 and Rails 3.2 without the test-unit gem (Orien Madgwick, #1350) - Fix load order issued which causes an undefined method 
fixture_patherror when loading rspec-rails after a spec has been created. (Aaron Kromer, #1372) 
3.2.1 / 2015-02-23
Bug Fixes:
- Add missing 
requireto RSpec generator root fixing an issue where Rail's autoload does not find it in some environments. (Aaron Kromer, #1305) be_routablematcher now has the correct description. (Tony Ta, #1310)- Fix dependency to allow Rails 4.2.x patches / pre-releases (Lucas Mazza, #1318)
 - Disable the 
test-unitgem's autorunner on projects running Rails < 4.1 and Ruby < 2.2 (Aaron Kromer, #1320) 
3.2.0 / 2015-02-03
Enhancements:
- Include generator for 
ActionMailermailer previews (Takashi Nakagawa, #1185) - Configure the 
ActionMailerpreview path via a Railtie (Aaron Kromer, #1236) - Show all RSpec generators when running 
rails generate(Eliot Sykes, #1248) - Support Ruby 2.2 with Rails 3.2 and 4.x (Aaron Kromer, #1264, #1277)
 - Improve 
instance_doubleto support verifying dynamic column methods defined byActiveRecord(Jon Rowe, #1238) - Mirror the use of Ruby 1.9 hash syntax for the 
typetags in the spec generators on Rails 4. (Michael Stock, #1292) 
Bug Fixes:
- Fix 
rspec:featuregenerator to useRSpecnamespace preventing errors when monkey-patching is disabled. (Rebecca Skinner, #1231) - Fix 
NoMethodErrorcaused by callingRSpec.featurewhen Capybara is not available or the Capybara version is < 2.4.0. (Aaron Kromer, #1261) - Fix 
ArgumentErrorwhen using an anonymous controller which inherits an outer group's anonymous controller. (Yuji Nakayama, #1260) - Fix "Test is not a class (TypeError)" error when using a custom 
Testclass in Rails 4.1 and 4.2. (Aaron Kromer, #1295) 
3.1.0 / 2014-09-04
Enhancements:
- Switch to using the 
have_http_statusmatcher in spec generators. (Aaron Kromer, #1086) - Update 
rails_helpergenerator to allow users to opt-in to auto-loadingspec/supportfiles instead of forcing it upon them. (Aaron Kromer, #1137) - Include generator for 
ActiveJob. (Abdelkader Boudih, #1155) - Improve support for non-ActiveRecord apps by not loading ActiveRecord related
settings in the generated 
rails_helper. (Aaron Kromer, #1150) - Remove Ruby warnings as a suggested configuration. (Aaron Kromer, #1163)
 - Improve the semantics of the controller spec for scaffolds. (Griffin Smith, #1204)
 - Use 
#methodsyntax in all generated controller specs. (Griffin Smith, #1206) 
Bug Fixes:
- Fix controller route lookup for Rails 4.2. (Tomohiro Hashidate, #1142)
 
3.0.2 / 2014-07-21
Bug Fixes:
- Suppress warning in 
SetupAndTeardownAdapter. (André Arko, #1085) - Remove dependency on Rubygems. (Andre Arko & Doc Riteze, #1099)
 - Standardize controller spec template style. (Thomas Kriechbaumer, #1122)
 
3.0.1 / 2014-06-02
Bug Fixes:
- Fix missing require in 
rails g rspec:install. (Sam Phippen, #1058) 
3.0.0 / 2014-06-01
Enhancements:
- Separate RSpec configuration in generated 
spec_helperfrom Rails setup and associated configuration options. Moving Rails specific settings and options torails_helper. (Aaron Kromer) 
Bug Fixes:
- Fix an issue with fixture support when 
ActiveRecordisn't loaded. (Jon Rowe) 
3.0.0.rc1 / 2014-05-18
Breaking Changes for 3.0.0:
- Extracts the 
mock_modelandstub_modelmethods to therspec-activemodel-mocksgem. (Thomas Holmes) - Spec types are no longer inferred by location, they instead need to be
explicitly tagged. The old behaviour is enabled by
config.infer_spec_type_from_file_location!, which is still supplied in the default generatedspec_helper.rb. (Xavier Shay, Myron Marston) controllermacro in controller specs no longer mutates:described_classmetadata. It still overrides the subject and sets the controller, though. (Myron Marston)- Stop depending on or requiring 
rspec-collection_matchers. Users who want those matchers should add the gem to their Gemfile and require it themselves. (Myron Marston) - Removes runtime dependency on 
ActiveModel. (Rodrigo Rosenfeld Rosas) 
Enhancements:
- Supports Rails 4.x reference attribute ids in generated scaffold for view specs. (Giovanni Cappellotto)
 - Add 
have_http_statusmatcher. (Aaron Kromer) - Add spec type metadata to generator templates. (Aaron Kromer)
 
Bug Fixes:
- Fix an inconsistency in the generated scaffold specs for a controller. (Andy Waite)
 - Ensure 
config.before(:all, type: <type>)hooks run before groups of the given type, even when the type is inferred by the file location. (Jon Rowe, Myron Marston) - Switch to parsing params with 
Rack::Utils::parse_nested_queryto match Rails. (Tim Watson) - Fix incorrect namespacing of anonymous controller routes. (Aaron Kromer)
 
3.0.0.beta2 / 2014-02-17
Breaking Changes for 3.0.0:
- Removes the 
--webratoption for the request spec generator (Andy Lindeman) - Methods from 
Capybara::DSL(e.g.,visit) are no longer available in controller specs. It is more appropriate to use capybara in feature specs (spec/features) instead. (Andy Lindeman) infer_base_class_for_anonymous_controllersis enabled by default. (Thomas Holmes)- Capybara 2.2.0 or above is required for feature specs. (Andy Lindeman)
 
Enhancements:
- Improve 
be_validmatcher for non-ActiveModel::Errors implementations (Ben Hamill) 
Bug Fixes:
- Use 
__send__rather thansendto prevent naming collisions (Bradley Schaefer) - Supports Rails 4.1. (Andy Lindeman)
 - Routes are drawn correctly for anonymous controllers with abstract parents. (Billy Chan)
 - Loads ActiveSupport properly to support changes in Rails 4.1. (Andy Lindeman)
 - Anonymous controllers inherit from 
ActionController::BaseifApplicationControlleris not present. (Jon Rowe) - Require 
rspec/collection_matcherswhenrspec/railsis required. (Yuji Nakayama) 
3.0.0.beta1 / 2013-11-07
Breaking Changes for 3.0.0:
- Extracts 
autotestandautotest-railssupport torspec-autotestgem. (Andy Lindeman) 
2.99.0 / 2014-06-01
No changes. Just taking it out of pre-release.
2.99.0.rc1 / 2014-05-18
Deprecations
- Deprecates 
stub_modelandmock_modelin favor of therspec-activemodel-mocksgem. (Thomas Holmes) - Issue a deprecation to instruct users to configure
config.infer_spec_type_from_file_location!during the upgrade process since spec type inference is opt-in in 3.0. (Jon Rowe) - Issue a deprecation when 
described_classis accessed in a controller example group that has used thecontroller { }macro to generate an anonymous controller class, since in 2.x,described_classwould return that generated class but in 3.0 it will continue returning the class passed todescribe. (Myron Marston) 
2.99.0.beta2 / 2014-02-17
Deprecations:
- Deprecates the 
--webratoption to the scaffold and request spec generator (Andy Lindeman) - Deprecates the use of 
Capybara::DSL(e.g.,visit) in controller specs. It is more appropriate to use capybara in feature specs (spec/features) instead. (Andy Lindeman) 
Bug Fixes:
- Use 
__send__rather thansendto prevent naming collisions (Bradley Schaefer) - Supports Rails 4.1. (Andy Lindeman)
 - Loads ActiveSupport properly to support changes in Rails 4.1. (Andy Lindeman)
 - Anonymous controllers inherit from 
ActionController::BaseifApplicationControlleris not present. (Jon Rowe) 
2.99.0.beta1 / 2013-11-07
Deprecations:
- Deprecates autotest integration in favor of the 
rspec-autotestgem. (Andy Lindeman) 
Enhancements:
- Supports Rails 4.1 and Minitest 5. (Patrick Van Stee)
 
Bug Fixes:
- Fixes "warning: instance variable @orig_routes not initialized" raised by
controller specs when 
--warningsare enabled. (Andy Lindeman) - Where possible, check against the version of ActiveRecord, rather than Rails. It is possible to use some of rspec-rails without all of Rails. (Darryl Pogue)
 - Explicitly depends on 
activemodel. This allows libraries that do not bring in all ofrailsto userspec-rails. (John Firebaugh) 
2.14.1 / 2013-12-29
Bug Fixes:
- Fixes "warning: instance variable @orig_routes not initialized" raised by
controller specs when 
--warningsare enabled. (Andy Lindeman) - Where possible, check against the version of ActiveRecord, rather than Rails. It is possible to use some of rspec-rails without all of Rails. (Darryl Pogue)
 - Supports Rails 4.1 and Minitest 5. (Patrick Van Stee, Andy Lindeman)
 - Explicitly depends on 
activemodel. This allows libraries that do not bring in all ofrailsto userspec-rails. (John Firebaugh) - Use 
__send__rather thansendto prevent naming collisions (Bradley Schaefer) 
2.14.0 / 2013-07-06
Bug fixes
- Rake tasks do not define methods that might interact with other libraries. (Fujimura Daisuke)
 - Reverts fix for out-of-order 
letdefinitions in controller specs after the issue was fixed upstream in rspec-core. (Andy Lindeman) - Fixes deprecation warning when using 
expect(Model).to have(n).recordswith Rails 4. (Andy Lindeman) 
2.14.0.rc1 / 2013-05-27
Enhancements
- Prelimiarily support Rails 4.1 by updating adapters to support Minitest 5.0. (Andy Lindeman)
 
Bug fixes
rake statsruns correctly when spec files exist at the top level of the spec/ directory. (Benjamin Fleischer)
2.13.2 / 2013-05-18
Bug fixes
letdefinitions may override methods defined in modules brought in viaconfig.includein controller specs. Fixes regression introduced in 2.13. (Andy Lindeman, Jon Rowe)- Code that checks Rails version numbers is more robust in cases where Rails is not fully loaded. (Andy Lindeman)
 
Enhancements
- Document how the spec/support directory works. (Sam Phippen)
 
2.13.1 / 2013-04-27
Bug fixes
- View specs are no longer generated if no template engine is specified (Kevin Glowacz)
 ActionController::Base.allow_forgery_protectionis set to its original value after each example. (Mark Dimas)patchis supported in routing specs. (Chris Your)- Routing assertions are supported in controller specs in Rails 4. (Andy Lindeman)
 - Fix spacing in the install generator template (Taiki ONO)
 
2.13.0 / 2013-02-23
Enhancements
be_validmatcher includes validation error messages. (Tom Scott)- Adds cucumber scenario showing how to invoke an anonymous controller's non-resourceful actions. (Paulo Luis Franchini Casaretto)
 - Null template handler is used when views are stubbed. (Daniel Schierbeck)
 - The generated 
spec_helper.rbin Rails 4 includes a check for pending migrations. (Andy Lindeman) - Adds 
rake spec:featurestask. (itzki) - Rake tasks are automatically generated for each spec/ directory. (Rudolf Schmidt)
 
2.12.2 / 2013-01-12
Bug fixes
- Reverts earlier fix where anonymous controllers defined the 
_routesmethod to support testing of redirection and generation of URLs from other contexts. The implementation ended up breaking the ability to refer to non-anonymous routes in the context of the controller under test. - Uses 
assert_selectcorrectly in view specs generated by scaffolding. (Andy Lindeman) 
2.12.1 / 2013-01-07
Bug fixes
- Operates correctly when ActiveRecord is only partially loaded (e.g., with older versions of Mongoid). (Eric Marden)
 expect(subject).to have(...).errors_onoperates correctly for ActiveResource models wherevalid?does not accept an argument. (Yi Wen)- Rails 4 support for routing specs. (Andy Lindeman)
 - Rails 4 support for 
ActiveRecord::Relationand the=~operator matcher. (Andy Lindeman) - Anonymous controllers define 
_routesto support testing of redirection and generation of URLs from other contexts. (Andy Lindeman) 
2.12.0 / 2012-11-12
Enhancements
- Support validation contexts when using 
#errors_on(Woody Peterson) - Include RequestExampleGroup in groups in spec/api
 
Bug fixes
- Add 
shouldandshould_nottoCollectionProxy(Rails 3.1+) andAssociationProxy(Rails 3.0). (Myron Marston) controller.controller_pathis set correctly for view specs in Rails 3.1+. (Andy Lindeman)- Generated specs support module namespacing (e.g., in a Rails engine). (Andy Lindeman)
 renderproperly infers the view to be rendered in Rails 3.0 and 3.1 (John Firebaugh)- AutoTest mappings involving config/ work correctly (Brent J. Nordquist)
 - Failures message for 
be_new_recordare more useful (Andy Lindeman) 
2.11.4 / 2012-10-14
Capybara-2.0 integration support:
- include RailsExampleGroup in spec/features (necessary when there is no AR)
 - include Capybara::DSL and Capybara::RSpecMatchers in spec/features
 
See https://github.com/jnicklas/capybara/pull/809 and https://rubydoc.info/gems/rspec-rails/file/Capybara.md for background.
2.11.1, .2, .3 were yanked due to errant documentation.
2.11.0 / 2012-07-07
Enhancements
- The generated 
spec/spec_helper.rbsetsconfig.order = "random"so that specs run in random order by default. - rename 
render_templatetohave_rendered(and alias torender_templatefor backward compatibility) - The controller spec generated with 
rails generate scaffold namespaced::modelmatches the spec generated withrails generate scaffold namespaced/model(Kohei Hasegawa) 
Bug fixes
- "uninitialized constant" errors are avoided when using using gems like
rspec-rails-uncommittedthat defineRspec::Railsbeforerspec-railsloads (Andy Lindeman) 
2.10.1 / 2012-05-03
Bug fixes
- fix regression introduced in 2.10.0 that broke integration with Devise (https://github.com/rspec/rspec-rails/issues/534)
 - remove generation of helper specs when running the scaffold generator, as Rails already does this (Jack Dempsey)
 
2.10.0 / 2012-05-03
Bug fixes
render_viewscalled in a spec can now override the config setting. (martinsvalin)- Fix 
render_viewsfor anonymous controllers on 1.8.7. (hudge, mudge) - Eliminate use of deprecated 
process_view_paths - Fix false negatives when using 
route_tomatcher withshould_not controlleris no longer nil inconfig.beforehooks- Change 
request.path_parameterskeys to symbols to match real Rails environment (Nathan Broadbent) - Silence deprecation warnings in pre-2.9 generated view specs (Jonathan del Strother)
 
2.9.0 / 2012-03-17
Enhancements
- add description method to RouteToMatcher (John Wulff)
 - Run "db:test:clone_structure" instead of "db:test:prepare" if Active Record's schema format is ":sql". (Andrey Voronkov)
 
Bug fixes
mock_model(XXX).as_null_object.unknown_methodreturns self again- Generated view specs use different IDs for each attribute.
 
2.8.1 / 2012-01-04
NOTE: there was a change in rails-3.2.0.rc2 which broke compatibility with stub_model in rspec-rails. This release fixes that issue, but it means that you'll have to upgrade to rspec-rails-2.8.1 when you upgrade to rails >= 3.2.0.rc2.
- Bug fixes
- Explicitly stub valid? in stub_model. Fixes stub_model for rails versions >= 3.2.0.rc2.
 
 
2.8.0 / 2012-01-04
- Enhancements
- Eliminate deprecation warnings in generated view specs in Rails 3.2
 - Ensure namespaced helpers are included automatically (Evgeniy Dolzhenko)
 - Added cuke scenario documenting which routes are generated for anonymous controllers (Alan Shields)
 
 
2.8.0.rc2 / 2011-12-19
Enhancements
- Add session hash to generated controller specs (Thiago Almeida)
 - Eliminate deprecation warnings about InstanceMethods modules in Rails 3.2
 
Bug fixes
- Stub attribute accessor after 
respond_to?call on mocked model (Igor Afonov) 
- Stub attribute accessor after 
 
2.8.0.rc1 / 2011-11-06
Enhancements
- Removed unnecessary "config.mock_with :rspec" from spec_helper.rb (Paul Annesley)
 
Changes
- No API changes for rspec-rails in this release, but some internals changed to align with rspec-core-2.8
 
2.7.0 / 2011-10-16
Enhancements
ActiveRecord::Relationcan 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 Marks) route_toaccepts 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_uploadreads fromActiveSupport::TestCase.fixture_pathand misses RSpec's configuration (David Chelimsky) - Support nested resource in view spec generator (David Chelimsky)
 - Define 
primary_keyon class generated bymock_model("WithAString")(David Chelimsky) 
- Fix configuration/integration bug with rails 3.0 (fixed in 3.1) in which
 
2.6.1 / 2011-05-25
This release is compatible with rails-3.1.0.rc1, but not rails-3.1.0.beta1
- Bug fixes
- fix controller specs with anonymous controllers with around filters
 - exclude spec directory from rcov metrics (Rodrigo Navarro)
 - guard against calling prerequisites on nil default rake task (Jack Dempsey)
 
 
2.6.0 / 2011-05-12
Enhancements
- rails 3 shortcuts for routing specs (Joe Fiorini)
 - support nested resources in generators (Tim McEwan)
 - require 'rspec/rails/mocks' to use 
mock_modelwithout requiring the whole rails framework - Update the controller spec generated by the rails scaffold generator:
 - Add documentation to the generated spec
 - Use 
any_instanceto avoid stubbing finders - Use real objects instead of 
mock_model - Update capybara integration to work with capy 0.4 and 1.0.0.beta
 - Decorate paths passed to 
[append|prepend]_view_pathswith empty templates unless rendering views. (Mark Turner) 
Bug fixes
- fix typo in "rake spec:statsetup" (Curtis Schofield)
 - expose named routes in anonymous controller specs (Andy Lindeman)
 - error when generating namespaced scaffold resources (Andy Lindeman)
 - Fix load order issue w/ Capybara (oleg dashevskii)
 - Fix monkey patches that broke due to internal changes in rails-3.1.0.beta1
 
2.5.0 / 2011-02-05
Enhancements
- use index_helper instead of table_name when generating specs (Reza Primardiansyah)
 
Bug fixes
- fixed bug in which 
render_viewsin a nested group set the value in its parent group. - only include MailerExampleGroup when it is defined (Steve Sloan)
 - mock_model.as_null_object.attribute.blank? returns false (Randy Schmidt)
 - fix typo in request specs (Paco Guzman)
 
- fixed bug in which 
 
2.4.1 / 2011-01-03
- Bug fixes
- fixed bug caused by including some Rails modules before RSpec's RailsExampleGroup
 
 
2.4.0 / 2011-01-02
Enhancements
- include ApplicationHelper in helper object in helper specs
 - include request spec extensions in files in spec/integration
 - include controller spec extensions in groups that use type: :controller
 - same for :model, :view, :helper, :mailer, :request, :routing
 
Bug fixes
- restore global config.render_views so you only need to say it once
 - support overriding render_views in nested groups
 - matchers that delegate to Rails' assertions capture ActiveSupport::TestCase::Assertion (so they work properly now with should_not in Ruby 1.8.7 and 1.9.1)
 
Deprecations
- include_self_when_dir_matches
 
2.3.1 / 2010-12-16
- Bug fixes
- respond_to? correctly handles 2 args
 - scaffold generator no longer fails on autotest directory
 
 
2.3.0 / 2010-12-12
- Changes
- Generator no longer generates autotest/autodiscover.rb, as it is no longer needed (as of rspec-core-2.3.0)
 
 
2.2.1 / 2010-12-01
Bug fixes
- Depend on railties, activesupport, and actionpack instead of rails (Piotr Solnica)
 - Got webrat integration working properly across different types of specs
 
Deprecations
- --webrat-matchers flag for generators is deprecated. use --webrat instead.
 
2.2.0 / 2010-11-28
Enhancements
- Added stub_template in view specs
 
Bug fixes
- Properly include helpers in views (Jonathan del Strother)
 - Fix bug in which method missing led to a stack overflow
 - Fix stack overflow in request specs with open_session
 - Fix stack overflow in any spec when method_missing was invoked
 - Add gem dependency on rails ~> 3.0.0 (ensures bundler won't install rspec-rails-2 with rails-2 apps).
 
2.1.0 / 2010-11-07
Enhancements
- Move errors_on to ActiveModel to support other AM-compliant ORMs
 
Bug fixes
- Check for presence of ActiveRecord instead of checking Rails config (gets rspec out of the way of multiple ORMs in the same app)
 
2.0.1 / 2010-10-15
Enhancements
- Add option to not generate request spec (--skip-request-specs)
 
Bug fixes
- Updated the mock_[model] method generated in controller specs so it adds any stubs submitted each time it is called.
 - Fixed bug where view assigns weren't making it to the view in view specs in Rails-3.0.1. (Emanuele Vicentini)
 
2.0.0 / 2010-10-10
Enhancements
- ControllerExampleGroup uses controller as the implicit subject by default (Paul Rosania)
 - autotest mapping improvements (Andreas Neuhaus)
 - more cucumber features (Justin Ko)
 - clean up spec helper (Andre Arko)
 - add assign(name, value) to helper specs (Justin Ko)
 - stub_model supports primary keys other than id (Justin Ko)
 - support choice between Webrat/Capybara (Justin Ko)
 - support specs for 'abstract' subclasses of ActionController::Base (Mike Gehard)
 - be_a_new matcher supports args (Justin Ko)
 
Bug fixes
- support T::U components in mailer and request specs (Brasten Sager)