Skip to content


Subversion checkout URL

You can clone with
Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: rspec/rspec-rails
head fork: rspec/rspec-rails
This comparison is big! We're only showing the most recent 250 commits
Commits on Feb 10, 2014
@alindeman alindeman Changelog [ci skip] ee29d93
@alindeman alindeman Merge pull request #924 from rspec/dont_assume_root_controller_is_app…

Don't assume presence of ApplicationController for anonymous controllers.
@alindeman alindeman Includes call to check version and raise error if not satisfied 607e2c1
@alindeman alindeman Attempts to resolve circular dependency loading issue in Rails 4.0.x 75d0421
@alindeman alindeman Merge branch 'capybara_version_required' 3fc1edc
@alindeman alindeman Changelog [ci skip] a552789
Commits on Feb 17, 2014
@yujinakayama yujinakayama Require `rspec/collection_matchers` by default bad9492
@JonRowe JonRowe Merge pull request #935 from yujinakayama/require-collection_matchers
Require `rspec/collection_matchers` by default
Commits on Feb 18, 2014
@myronmarston myronmarston Add release notes for 2.99.0.beta2.
[ci skip]
@myronmarston myronmarston Ignore bundle dirs.
[ci skip]
@myronmarston myronmarston Update changelog for 3.0.0.beta2 release. [ci skip] bbed599
@myronmarston myronmarston Release 3.0.0.beta2 378d981
@myronmarston myronmarston Prepare changelog for 3.0.0.rc1 development. e03743f
Commits on Feb 19, 2014
@myronmarston myronmarston Improve changelog.
- Forward port 2.14.1 release notes.
- "full changelog" => "Full Changelog"
- Rearrange sections in order of importance for
  consistency with other rspec libs.
Commits on Feb 23, 2014
@JonRowe JonRowe load rspec support helpers ef0c647
@JonRowe JonRowe remove redefined method errors e601588
@JonRowe JonRowe active model lint can override methods when testing, we can safely ig…
…nore this warning
@JonRowe JonRowe involve a warning by nesting contexts... 126de54
@JonRowe JonRowe remove a warning by defined? check 145ec80
@JonRowe JonRowe silence a warning caused by rails 8e2bafd
@JonRowe JonRowe avoid warning internally in rails 1bb9755
@JonRowe JonRowe convert stub_chain to expect 9dc3796
@JonRowe JonRowe supress I18 warning 9eb7063
@JonRowe JonRowe remove 1.8.7 regexp warnings a643243
@JonRowe JonRowe Merge pull request #892 from rspec/remove_warnings
Remove warnings from spec run
Commits on Feb 25, 2014
@JonRowe JonRowe remove test files from gemspec to speed up dl/s 174912c
@soulcutter soulcutter Merge pull request #942 from rspec/smaller-built-gem-size
Don't include any test files in the gem.
Commits on Feb 26, 2014
@JonRowe JonRowe refactor rake task 1e58eff
@JonRowe JonRowe update generator for 4.1 aa5c5f7
@JonRowe JonRowe update rake task to skip task on 4.1 b8680f9
Commits on Feb 27, 2014
@JonRowe JonRowe Merge pull request #946 from rspec/deal_with_rails_41_rake_task
Update test requirements for 4.1
@JonRowe JonRowe refactor our task to set rails env 3fae486
Commits on Mar 03, 2014
@JonRowe JonRowe Merge pull request #945 from rspec/set_rails_env_to_test_for_consistency
Set RAILS_ENV to test for consistency.
@thomas-holmes thomas-holmes Remove mock_model and stub_model from rspec-rails
Some tests still fail without them as I have not yet figured out
a good way to fix them yet. View scaffold generators are also
currently broken.

@thomas-holmes thomas-holmes Update generators and tests to use doubles/actual models 6044ecd
@thomas-holmes thomas-holmes Update changelog 553d47e
@thomas-holmes thomas-holmes Update extracted game name in changelog to rspec-activemodel-mocks 3b9cee8
@alindeman alindeman Small cleanups for #902 af22944
@alindeman alindeman This change will be released with rc1 8e9081a
@alindeman alindeman Merge branch 'thomas-holmes-remove-mocks' a8eee18
Commits on Mar 12, 2014
@JonRowe JonRowe add 4.1.0.rc1 to travis.yml in prep for 4.1.0 942c415
@JonRowe JonRowe update install generator spec to include 4.1 scenario 3b4a78d
Commits on Mar 13, 2014
@JonRowe JonRowe Merge pull request #951 from rspec/add_rc_1
Prep for Rails 4.1.0
Commits on Mar 15, 2014
@myronmarston myronmarston Update to deal with rspec-core :example_group metadata changes. 5dcd503
Commits on Mar 16, 2014
@myronmarston myronmarston Merge pull request #954 from rspec/address-rspec-core-changes
Update to deal with rspec-core :example_group metadata changes.
@cupakromer cupakromer Ruby 2.1 has deprecated File.exists 41c9095
@JonRowe JonRowe Merge pull request #955 from cupakromer/file-exists-deprecated
Ruby 2.1 has deprecated File.exists
Commits on Mar 19, 2014
@rrrene rrrene Add docs badge to README c6ba725
@soulcutter soulcutter Merge pull request #959 from rrrene/patch-1
Add docs badge to README
@nextmat nextmat Improve render note to be more obvious, provide alternatives. 0d8113b
Commits on Mar 21, 2014
@JonRowe JonRowe Merge pull request #960 from nextmat/emphasize_render_note
Improve render note to be more obvious, provide alternatives.
@JonRowe JonRowe cleanup after #960
[skip ci]
Commits on Mar 22, 2014
@alindeman alindeman Bumps Rails versions e9591b1
@alindeman alindeman Also bumps the default version of Rails to 4.0.4 f309720
@alindeman alindeman Explicitly declare the types of specs 539c3d9
@alindeman alindeman Bumps ammeter to RSpec 3-compatible version
Fixes #961
Commits on Mar 23, 2014
@alindeman alindeman Merge pull request #966 from rspec/ammeter
Bumps ammeter to RSpec 3-compatible version
@xaviershay xaviershay Extract infer file type code into own file. d2d99f4
@xaviershay xaviershay Enable rspec/rails to be loaded via rspec/rails/without_filetype_infe…
…r to allow opt-out of that behaviour.
@xaviershay xaviershay Merge pull request #969 from rspec/issue-662-2
Internal refactoring to enable opt-out of infer filetype behaviour
@alindeman alindeman Switches back to mainline rails/rails repository 02b4aaa
@alindeman alindeman Merge branch 'rails_4_1' 4cf42bf
@alindeman alindeman Switches back to mainline ammeter 6850f0c
Commits on Mar 27, 2014
@olleolleolle olleolleolle Doc: "infers controller action" heading
Copypasta nitpick.
@JonRowe JonRowe Merge pull request #974 from olleolleolle/master
Doc: "infers controller action" heading
Commits on Mar 28, 2014
@rosenfeld rosenfeld Fix specs
RSpec.configuration= is no longer defined.
@rosenfeld rosenfeld Ensure the original configuration is restored in with_isolated_config 60b5040
Commits on Mar 29, 2014
@myronmarston myronmarston Merge pull request #975 from rosenfeld/fix-specs
Fix specs
Commits on Mar 30, 2014
@myronmarston myronmarston Make Gemfile default the rails version more intelligently. c7a75d4
@JonRowe JonRowe Merge pull request #977 from rspec/fix-gemfile
Make Gemfile default the rails version more intelligently.
Commits on Apr 07, 2014
@alexrothenberg alexrothenberg use ammeter 1.0.0 gem as it is now compatible with rspec 3 & 2 bbab706
@JonRowe JonRowe Merge pull request #986 from alexrothenberg/use-ammeter-1.0
use ammeter 1.0.0 gem as it is now compatible with rspec 3 & 2
Commits on Apr 14, 2014
@tiwatson tiwatson Switched Rack::Utils::parse_query to Rack::Utils::parse_nested_query 7861795
Commits on Apr 20, 2014
@xaviershay xaviershay Switch inferring file type by location to opt-in rather than always on. 0223ebd
Commits on Apr 21, 2014
@andyw8 andyw8 POST with invalid params should stub :update instead of :save
I noticed a inconsistency in the generated controller scaffold.

The spec for valid params expects a call to `update`, but the spec for invalid params expects a call to `save`. Only 'update' is used with the controller action.

I assume this only worked because the Rails implementation of `update` calls `save` within the implementation at some point?
@myronmarston myronmarston Merge pull request #970 from rspec/issue-662
Make filetype infer opt-in
@JonRowe JonRowe Merge pull request #1000 from andyw8/patch-1
POST with invalid params should stub :update instead of :save
@JonRowe JonRowe changelog for #1000 98398d5
Commits on Apr 22, 2014
@myronmarston myronmarston Centralized config API extensions into a method.
This lets us re-use that method when we isolate
config in our specs.
@myronmarston myronmarston Improve example group mixin testing.
- Use a shared example group instead of a
  matcher. There are many more aspects to test
  than just one matchers worth.
- Rather than stubbing the metadata, actually
  write out spec files in an appropriate directory.
- Add coverage for `spec/api` mapping to `:request` specs.
@myronmarston myronmarston Fix spec type inference.
- In #970 we added `infer_spec_type_from_file_location!` but forgot
  to remove the code in `lib/rspec/rails/configuration.rb` that
  made it always infer - so the opt-in API was there but it
  was always enabled. Here I've made it truly opt-in.
- The logic of `infer_spec_type_from_file_location!` also setup
  the helper module inclusion via explicit `:type` metadata but
  was only intended to setup the implicit mapping of spec file
  location to type.  Here I've made the module inclusion via
  `:type` always work w/o an explicit config option needed to
  enable it.
- We used to mutate the `:type` metadata on inclusion of the helper
  module, but this caused bugs such as #825. The problem is that
  rspec-core uses a raw hash for the metadata and doesn't re-apply
  filtering/inclusion logic when the metadata hash is mutated.
  Instead, we use a new explicit `define_derived_metadata` API.

Fixes #825 and closes #829.
@myronmarston myronmarston Stop mutating metadata.
There's no need to anymore, and it created some surprising
bugs (such as #825: `before(:all)` hooks would not properly
be applied because they were registered before the modules
were included).
@myronmarston myronmarston No need to mutate metadata for `render_views` state.
Mutating metadata is problematic so using an ivar is better.

Also, remove a deprecated API while we're at it.
@myronmarston myronmarston Don't mutate `described_class` metadata.
Just set the controller class instead. Mutating
metadata has some odd edge case bugs (as rspec-core
doesn't update it's filters/hooks/etc when metadata
is mutated), so it's best to avoid it.
@myronmarston myronmarston No need to infer spec type in our spec_helper. b03ad1e
@myronmarston myronmarston Deal with odd 1.9.2 warning on Travis. 3de5975
@myronmarston myronmarston Update changelog.
[ci skip]
@myronmarston myronmarston Merge pull request #1002 from rspec/without-metadata-mutation
Fix spec type inferrence
Commits on Apr 23, 2014
@myronmarston myronmarston Remove ZenTest -- it's not needed for rspec-rails anymore. 68efba5
@myronmarston myronmarston Remove rspec-collection_matchers code.
rspec-collection_matchers provides all this functionality now.
@JonRowe JonRowe Merge pull request #1005 from rspec/collection-matchers-removals
Collection matchers removals
Commits on Apr 27, 2014
@cupakromer cupakromer Remove remaining vendored `webrat`. b017b81
Commits on Apr 28, 2014
@cupakromer cupakromer Merge pull request #1011 from rspec/remove-webrat
Remove remaining vendored `webrat`.
@potomak potomak Fix scaffold view generator templates for reference attributes
Rails generates field with an _id suffix for reference attributes, see

This commit should fix this case by using attribute.column_name instead of as used by the Rails generator template.
@rosenfeld rosenfeld Remove dependency on activemodel
This dependency has been introduced by John Firebaugh in commit 4549965 because lib/rspec/rails/mocks.rb required it.

But this file was removed in commit 29c1758.

Currently rspec-rails will check for defined?(::ActiveModel) before patching/extending it.

The dependency on activemodel will install unnecessary gems for some applications and will also trigger some bugs in Bundler which would prevent pre releases of railties to be installed with rspec-rails.
@cupakromer cupakromer Merge pull request #973 from rosenfeld/patch-2
Remove dependency on activemodel
Commits on Apr 30, 2014
@potomak potomak Invoke #column_name when available, use #name otherwise
Thanks @cupakromer for the suggestion

Note: include tests only for Rails >= 4.0.0
Commits on May 01, 2014
@potomak potomak Setup local variable for attribute name; simpler check for Rails version 306f8e5
@cupakromer cupakromer Remove workaround from cff0228. 811cdbe
@cupakromer cupakromer Apply temp patch for Travis, RVM, and Ruby 2.1.0 ad84a1a
@cupakromer cupakromer Add Ruby 2.1.x and Rails 4.1.0 proper.
Use 2.1 fuzzy matching.
@cupakromer cupakromer Attempt to force MRI 1.8.7 08a675b
Commits on May 02, 2014
@cupakromer cupakromer Add issue links for recent changes. 5804f12
@cupakromer cupakromer Merge pull request #937 from potomak/fix-scaffold-view-generator-temp…

Fix scaffold view generator templates for reference attributes in Rails 4.x
@cupakromer cupakromer Merge pull request #1015 from rspec/fix-2-1-0-build
Update `.travis.yml` to workaround CI issues.
@cupakromer cupakromer Document the `have_http_status` matcher.
Outline the intended use cases for the `have_http_status` matcher:

- It is designed to work of "response" objects
- It should work with controller, request, and feature specs
- It allows checking against:
  - Specific numeric status codes
  - Any of the Rails provided symbolic names for status codes
  - General status code categories
@cupakromer cupakromer Create `have_http_status` matcher.
The matchers passes if the provided actual `response`, or Capybara
`page`, has a matching HTTP status code. The following symbolic status
codes are allowed:

  - `Rack::Utils::SYMBOL_TO_STATUS_CODE`
  - One of the defined `ActionDispatch::TestResponse` aliases:
    - `:error`
    - `:missing`
    - `:redirect`
    - `:success`

The inspiration for this matcher comes directly from Rails' `assert_response`:

Thank you to all the Rails devs who did the heavy lifting on
@cupakromer cupakromer Add changelog note. 016f438
@cupakromer cupakromer Note `have_http_status` matcher in README. 1f405b3
@cupakromer cupakromer Add missing Changelog entries.
Note the helpful contributions made by Rodrigo Rosenfeld Rosas and
Giovanni Cappellotto.

The removal of the `ActiveModel` dependency was added to the `Breaking
Changes` section as there is a possibility (though it should be very
small) that this could break projects. Projects which implicitly depend
on `ActiveModel` to be loaded due to rspec-rails's dependency have
incorrectly setup their Gemfile.
Commits on May 03, 2014
@JonRowe JonRowe Merge pull request #994 from tiwatson/routing-specs-nested-query
Routing specs: Switched Rack::Utils::parse_query to Rack::Utils::parse_nested_query
@JonRowe JonRowe changelog for #994 63d1422
Commits on May 05, 2014
@cupakromer cupakromer Spec out the different supported response types.
:frowning: per

> We are caught in a weird situation here. rspec-rails supports 1.8.7
> and above, but capybara beyond a certain version only supports 1.9.3
> and above.  On 1.8.7 and 1.9.2, we run most of the rspec-rails test
> suite but leave out parts that require capybara.

Digging into this it seems that after Capybara 2.0.3 [support for Ruby
1.9.2 was dropped](jnicklas/capybara#1049).
Thus, the feature spec covering this never ran.

From what I understand, rspec-rails 2.12+ moved to Capybara 2.0 for
feature specs; and no longer uses is for request specs.

This means for 1.8.7, this will only apply to the case where request
specs are using Capybara < 2.0. This version still defines the same
public API, so I guess we still need to support this edge condition.
Commits on May 09, 2014
@johnvoloski johnvoloski remove additional whitespace 5724921
@myronmarston myronmarston Merge pull request #1019 from johnvoloski/master
Fix unnecessary whitespace
Commits on May 12, 2014
@cupakromer cupakromer Matchers should return true / false from matches?
To properly implement the matcher protocol, only `true` and `false`
should be valid values to return from `matches?`.
@cupakromer cupakromer Use a helpful failure message on bad response type 7ebec0d
@cupakromer cupakromer Use api private tag. 98f8369
@cupakromer cupakromer Shadow variable intent in the name. f29e552
@cupakromer cupakromer Add custom matcher descriptions. 38df370
@cupakromer cupakromer Memoize intermediate computations. 902cb39
@cupakromer cupakromer Switch to pessimistic operator for Rails versions. a9360d2
@cupakromer cupakromer Handle matrix configs which don't have Capybara. 27de58f
@cupakromer cupakromer Update feature to be valid Ruby. fa347de
@cupakromer cupakromer Print the rails version before running suite. ed47ac9
Commits on May 13, 2014
@cupakromer cupakromer Merge pull request #1020 from rspec/generalize-travis
Switch to pessimistic operator for Rails versions.
@cupakromer cupakromer Merge pull request #987 from rspec/response-status-matcher
Add response status matcher
@cupakromer cupakromer Explicitly set type code in spec generators. e30e083
@cupakromer cupakromer Use pessimistic matcher for default rails versions
Prevent needing to update the default rails versions for each minor
@cupakromer cupakromer Only run `test:prepare` task if available. a50c388
@cupakromer cupakromer Add note to Changelog. 2b7bc13
@cupakromer cupakromer Merge pull request #1021 from rspec/default-type-metadata
Update generator template to add `:type` metadata by default
@cupakromer cupakromer Merge pull request #1022 from rspec/check-test-prepare-task
Only run `test:prepare` task if available.
Commits on May 16, 2014
@cupakromer cupakromer Update cuke feature with style changes.
- Capitalize scenarios
- Use backtick code blocks inline, even in scenario descriptions, and in
  feature details
- Wrap whitespace to 80 columns
- Use `RSpec.` top level
@cupakromer cupakromer Cuke scenario describing failing behavior.
The namespace does not appear to be preserved when using an anonymous
@cupakromer cupakromer Fix anonymous controllers namespaced routes.
- Using `resources` directly does not support `namespace`. The
  equivalent behavior can still be derived by manually adding in all of
  the options: `:as`, `:module`, `:path`.


  > The `namespace` scope will automatically add `:as` as well as
  > `:module` and `:path` prefixes.

- Named routes are prefixed with an additional 'anonymous_' to prevent
  the rare edge cases where someone has manually defined a conflicting
  named route with the base namespace controller.

- Setup new spec context to test this state case
@cupakromer cupakromer Update Changelog entries. 30298ea
@cupakromer cupakromer Merge pull request #1024 from rspec/fix-namespaced-anonymous-controll…

Fix namespaced anonymous controller routes
Commits on May 18, 2014
@myronmarston myronmarston Forwardport release notes from 2.99.0.rc1 [ci skip] 69d1776
@myronmarston myronmarston Prep changelog for 3.0.0.rc1 [ci skip] d276154
@myronmarston myronmarston Release 3.0.0.rc1 4d31bdd
Commits on May 19, 2014
@JonRowe JonRowe move conditional inside module definition to make including a no-op w…
…hen theres no active_record
Commits on May 20, 2014
@JonRowe JonRowe Merge pull request #1028 from rspec/fix_1027
Fix issue when ActiveRecord isn't present.
@JonRowe JonRowe changelog entry for #1028
[skip ci]
Commits on May 24, 2014
@cupakromer cupakromer Fix formatting for feature description.
RelishApp and Cucumber are very picky about syntax. **ANY** line which
starts with an octothorpe is treated as a comment. This makes the lexer
very unhappy.

In order to trick it I had to add a unicode space (specifically the zero
width space <200b>). This alone didn't fix things. For some reason,
using a semi-colon fixed things. I tried several additional variations,
all of which worked; but they each still required the semi-colon:

- `controller { ; }`
- `controller do; end`

I settled on this various as I felt it read a bit better with the
comment being in the `controller` definition.
Commits on May 25, 2014
@myronmarston myronmarston Merge pull request #1040 from rspec/controller-doc-fixes
Fix formatting for feature description.
@cupakromer cupakromer Include RSpec 3 changes for inferred metadata.
- Explain the move away from inferred metadata types
- State that default configurations will add the new setting to include
  inferred metadata by default due to all of the online tutorials
- List common Rails metadata `:type` values
- Add tip about mirroring `app/` and `lib/` filesystem structure in
@xaviershay xaviershay Doc coverage.
* Many things are private.
* Added docs tend to be terrible, I don't have enough context to flesh
  them out.
* Still some warnings in here I don't know what to do about.
* What do we do about CI? Can rspec-dev add it for us?
@xaviershay xaviershay Documentation for configuration. fbd8019
@xaviershay xaviershay Unbreak MailerExampleGroup loading. f85be56
@xaviershay xaviershay Better documentation for #with a980d81
@xaviershay xaviershay Backticks e4caea1
@xaviershay xaviershay Documentation for routes=
@cupakromer not really sure if this is what you were asking for in
#1034 (comment)
@xaviershay xaviershay Better wording for RSpec::Rails::ViewAssigns. 627a14c
@xaviershay xaviershay Check doc coverage in travis build.
This is similar but different (see the --exclude) to the function
provided in rspec-dev, so not providing a way to sync them. It's a
simple enough function anyways.
@JonRowe JonRowe Merge pull request #1041 from rspec/fix-directory-structure-doc
Include RSpec 3 changes for inferred metadata.
Commits on May 26, 2014
@xaviershay xaviershay Need to include documentation in travis bundle for YARD checks. 4cd5139
@xaviershay xaviershay Fix broken .yardopts file 73a5529
Commits on May 27, 2014
@xaviershay xaviershay Merge pull request #1034 from rspec/doc-coverage
Doc coverage
@xaviershay xaviershay Replace mocking in generated controller specs with integration tests.
This was a terrible example and should never have been here. This
replacement isn't great, but at least is not obviously bad.

Unfortunately we cannot provide default implementations of these because
we don't have sufficient information about the data model. Specs that
require this are marked pending.

I gave up on the default approach: it doesn't work at all for models
with no attributes, and is a crapshoot if they do.
Commits on May 28, 2014
@xaviershay xaviershay Merge pull request #1046 from rspec/issue-1008
Replace mocking in generated controller specs with integration tests.
Commits on May 29, 2014
@universal universal Update
Set the correct name and link for have_http_status matcher, it was still referencing the "old" name have_status.
@cupakromer cupakromer Merge pull request #1047 from universal/patch-1
Commits on May 30, 2014
@cupakromer cupakromer Move spec_helper to rails_helper.
The first step to providing the ability to only include the necessary
parts of Rails to keep specs happy. By separating general RSpec
configuration from the Rails specific configuration, any specs which
don't need rails, can load a standard helper.

- Update Rails generators to reference the new helper file
- Fix specs for the generators
- Let cukes know about `rails_helper`
Commits on May 31, 2014
@inglesp inglesp Update controller_example_group.rb
fix typo in comment
@cupakromer cupakromer Merge pull request #1050 from inglesp/patch-1
Fix typo in controller_example_group.rb
@cupakromer cupakromer Incorporate rspec-core's project initialization.
The Rails centric helper is now `rails_helper`. Leverage the standard
RSpec configuration for creating basic configurations for `.rspec` and
`spec_helper`. This also keeps us in-sync with any future changes.

- Fix #1029
@cupakromer cupakromer Remove duplicate settings between the helpers.
The `rails_helper` only needs to be concerned with rspec-rails specific
configurations. Any general configuration is handled by `spec_helper`.
@cupakromer cupakromer Note change of `spec_helper` and `rails_helper`. b820aea
Commits on Jun 01, 2014
@cupakromer cupakromer Merge pull request #1049 from rspec/rails-helper
Separate RSpec and Rails specific configurations
@cupakromer cupakromer Use non-monkey patch describe in generators.
In a concerted effort to keep monkey patching to a minimum. The default
Rails spec generators should not use the monkey patched version of

Always using only the non-monkey patched `RSpec.describe`, instead of
inspecting the configuration, has the benefits of:

- not requiring RSpec to be loaded when the generators are run by Rails
- not introducing extra logic and state to handle the different states
- Resolve #1048
@cupakromer cupakromer Prefer _exec over _eval alternatives.
Eval'ing Ruby code is in general a risky practice. Starting in Ruby
1.8.7+, an alternative form of these methods has been provided which
only accepts a Ruby block. These tend to be safer as they do not
directly allow string interpolation as the `_eval` equivalents do.
@cupakromer cupakromer Remove unused steps. ea745e2
@cupakromer cupakromer Merge pull request #1052 from rspec/no-monkey-patch-generators
Use non-monkey patch describe in generators.
@cupakromer cupakromer Replace superfluous `eval` with simple method.
The only purpose the `eval` served was to "undo" the previous `inspect`
of the value. This is a technique which is listed here:

Separate generating the raw value for an attribute and it's display
value. Keep the original `value_for` name for the display message.
@myronmarston myronmarston Merge pull request #1051 from rspec/prefer-exec-over-eval
Prefer _exec over _eval alternatives.
@myronmarston myronmarston Forwardport 2.99.0 release notes. [ci skip] 77d651c
Commits on Jun 02, 2014
@myronmarston myronmarston Update changelog for v3.0.0. [ci skip] f21e39a
@myronmarston myronmarston Release 3.0.0 8482811
@samphippen samphippen Make instruct users to install 3.0.0 dbca454
@JonRowe JonRowe Merge pull request #1056 from rspec/30-readme
Make instruct users to install 3.0.0
@samphippen samphippen Add necessary requires to run the project initializer ec18105
@myronmarston myronmarston Merge pull request #1058 from rspec/fix-rails-for-3.0.0
Add necessary requires to run the project initializer
@myronmarston myronmarston Release 3.0.1. 2fd0780
@cupakromer cupakromer Properly reference `rails_helper` in README.
Include upgrade notes.
@cupakromer cupakromer Update relish upgrade guide. 1ff006e
@cupakromer cupakromer Merge pull request #1060 from rspec/fix-readme-for-rails-helper
Properly reference `rails_helper` in README.
Commits on Jun 04, 2014
@JonRowe JonRowe Remove Inch badge
[skip ci]
Commits on Jun 06, 2014
@opsidao opsidao Remove duplicated word in rails_helper's comment b432e21
@cupakromer cupakromer Merge pull request #1069 from opsidao/patch-1
Remove duplicated word in rails_helper's comment
Commits on Jun 09, 2014
@myronmarston myronmarston Add maintenance-branch for 3.0. b84ed7c
Commits on Jun 10, 2014
@myronmarston myronmarston Merge pull request #1074 from rspec/add-maintenance-branch-3-0
Add maintenance-branch for 3.0.
Commits on Jun 13, 2014
@JonRowe JonRowe Merge pull request #1085 from indirect/patch-1
fix 'uninitialized instance variable' warning
@JonRowe JonRowe Update changelog for #1085 8ee31f3
@JonRowe JonRowe Merge pull request #1082 from rspec/update_readme
Add note about `infer_spec_type_from_file_location!`
Commits on Jun 15, 2014
@plentz plentz updating feature docs to reflect 3.0 final release
(cherry picked from commit 7c48b71)

Merge pull request #1092 from plentz/patch-2
@cupakromer cupakromer Fix remaining Ruby warnings.
- spec/rspec/rails/minitest_lifecycle_adapter_spec.rb:
  > warning: assigned but unused variable - example

- spec/support/shared_examples.rb
  > warning: assigned but unused variable - spec_file

Ruby 1.9.3 seems to erroneously report the following warning:

- lib/rspec/rails/matchers/have_http_status.rb:
  > warning: assigned but unused variable - _ignored

This is logged on ruby-trunk:
@cupakromer cupakromer Update Capybara to remove matcher deprecations. 4df9883
@cupakromer cupakromer Upgrade Aruba gem dependency.
The new version requires an additional, optional, `timeout` argument.
Include this argument in the world shim.
@cupakromer cupakromer Fix Ruby 1.8.7 warning about regex syntax.
Noticed this when running against Ruby 1.8.7, there were two repeated
warnings based on improper escaped brackets:

- spec/rspec/rails/matchers/route_to_spec.rb:114:
  > warning: regexp has invalid interval

- spec/rspec/rails/matchers/route_to_spec.rb:114:
  > warning: regexp has `}' without escape
@cupakromer cupakromer Backport pull request #1089 from rspec/fix-ruby-warnings
Fix warnings and deprecations notices
Commits on Jun 21, 2014
@soulcutter soulcutter Backport pull request #1102 from rspec/upgrade-documentation-tweak
'git move' should be 'git mv'
@cupakromer cupakromer Document Rails 4.x improvements to schema changes. 0f7cd83
@cupakromer cupakromer Move upgrade details into feature docs.
Duplicating the documentation in two places was causing some information
to be dropped. Additionally, the file was starting to be
consumed by the upgrade notes.

- Use the feature documentation as the primary location for the upgrade
- List the important topics users need to be aware of in the README and
  link them to the section of the upgrade guide
@cupakromer cupakromer Move upgrade docs into a directory structure.
Extract out the upgrade notes from 1.x to 2.x so they are still easy to
find. Make the primary upgrade docs the main page.
@cupakromer cupakromer Order the changes by importance.
Put the more important changes at the top of the page so that they are
read first. Placing the helper file changes first as the other changes
reference `rails_helper`. The next most important change is the
disabling of inferred metadata; as it has been a common source of
upgrade questions.
@cupakromer cupakromer Backport pull request #1093 from rspec/rails-4-schema-changes-docs
A few more grammar changes based on feedback.

- Remove the reference to "magical" to clear up it's meaning
- Make statements more declarative by removing personal "you"
Andre Arko & Doc Ritezel Allow RSpec::Rails to load without rubygems 36f7c6e
@cupakromer cupakromer Backport pull request #1099 from rspec/wanelo-pair:without-ruby-gems
Update Changelog per #1099.
@cupakromer cupakromer Merge pull request #1105 from rspec/backports
Backport doc updates and remove RubyGem dependency
Commits on Jul 06, 2014
@cupakromer cupakromer Move common rspec dependencies into custom Gemfile
When the example app is created for running cukes we need to setup a
Gemfile. It needs to share the same dependencies as this repo. To
facilitate this, move the common dependencies into a custom Gemfile.

Switch to using the proper bundler `eval_gemfile`, which properly
handles path location differences, instead of reading a file then using
raw `eval`.
@cupakromer cupakromer Use custom Gemfile with example app.
Without using a custom Gemfile, the main `rspec-rails` repo bundle is
used. Due to how various Rails autoload issues work with bundler, this
caused `RSpec::Support` to be automatically loaded by the rails
generator. The root cause of this is because `rspec-support` and
`rspec-core` are explicitly included in the Gemfile.

This differs in behavior from when a normal Rail's app only specifies
`rspec-rails` in the Gemfile. Setup an explicit Gemfile to resolve the
load difference issues.
@cupakromer cupakromer Include Gemfile sanity check.
Part of the reason for this not being caught earlier is due to the
gemfile being setup to not require the supporting gems by default. This
creates a few specs to help manage that.
@cupakromer cupakromer Ensure that we actually create a spec_helper file. 9f783b7
@cupakromer cupakromer Share the bundler install path. 011f510
@cupakromer cupakromer Extract rails gem loading into shared Gemfile.
When the example app is generated it puts a Rails version that is
defined by currently installed version. This works great in most
situtations, except `master` or other edge branches. The version listed
is the current version of Rails, so they diverge.

Move how we load rails into a custom Gemfile, which we eval ourselves.
We then remove the rails version put into the gemfile and share our
custom version. Due to when `rake` and other shell processes fork, the
RAILS_VERSION environment variable is properly passed through.
@cupakromer cupakromer Merge pull request #1116 from rspec/backport-smoke-test
Backport smoke task from pull request #1087
@cupakromer cupakromer Fix binstub typo to generate rails command. a263e62
@cupakromer cupakromer Update travis builds now that issues are fixed. c612702
Commits on Jul 08, 2014
@cupakromer cupakromer Add reminder that _spec files are run by default.
Closes #1115
@cupakromer cupakromer Remove app upgrade notes in favor of linked docs.
The feature notes have all of the details of how to properly upgrade.
These are hosted online and were already linked in the above section.
Remove the duplication as it detracts from the remainder of the README.
@cupakromer cupakromer Use top-level namespace for `describe`.
Add consistent whitespace between `require` and the first
@cupakromer cupakromer State spec type metadata and default directories.
The directories where specs reside now essentially defaults with RSpec
3. Update make this clear and state what equivalent metadata is required
to mirror the functionality in other specs.
@cupakromer cupakromer Use the new `have_http_status` matcher. 32cb669
@cupakromer cupakromer Remove explicit anchor tags.
Github READMEs now automatically add anchor links to the headers.
@cupakromer cupakromer Various formatting updates.
- Be consistent on how lists are defined by using a dash
- Add missing backticks around code words
- Update some descriptions with clearer information
- Add some missing hyper links
@cupakromer cupakromer Fix header nesting to resided under the project. 5a174be
@cupakromer cupakromer Whitespace only update. 8f64fb9
@cupakromer cupakromer Note extract of `stub_model` and `mock_model`. 3c80719
@cupakromer cupakromer Merge pull request #1119 from rspec/backport-pull-request-1117
Backport pull request #1117
Commits on Jul 21, 2014
Thomas Kriechbaumer Standardize controller spec templates.
Make single `controller_spec` template conform with scaffolded
@cupakromer cupakromer Update Changelog per pull request #1122. 9c5385f
@cupakromer cupakromer Backport pull request #1122 from Kriechi/adapt_template
Standardize controller spec templates.
@cupakromer cupakromer Release 3.0.2. 1700a8b
Commits on Jul 22, 2014
@JonRowe JonRowe Merge pull request #1118 from rspec/add-rubocop
Use Rubocop
Commits on Jul 23, 2014
@JonRowe JonRowe Merge pull request #1128 from rspec/cherry-pick-rubocop-to-3-0-mainte…

Cherry pick rubocop to 3-0-maintenance
Commits on Aug 02, 2014
@cupakromer cupakromer Update note that this is exclusion is for bundler.
Close #1133
Commits on Aug 03, 2014
@cupakromer cupakromer Use RSpec module to hook into the DSL.
Recent changes to rspec-core have added `disable_monkey_patching!` to
the default `spec/spec_helper.rb` file. This caused the cukes to fail
which were not updated yet to use the non-patching method of using the
@cupakromer cupakromer Indent cuke ruby file definitions consistently.
Standardize on indenting the Ruby code file definitions to one level
inside the `Given` block.
@cupakromer cupakromer Backport pull request #1135 from rspec/no-monkey-patch-cukes
Use RSpec module to hook into the DSL
Commits on Aug 04, 2014
@cupakromer cupakromer Satisfy Rubocop's guard clause expectations.
Big thanks (づ。◕‿‿◕。)づ to @mikegee for the suggestion in
That provided the vast majority of the refactor.

At the end of the day, this changes makes a lot more sense, separating
concerns in a more logical location.
@cupakromer cupakromer Note where to add requires so Rails is loaded.
There are no clear directions where additional library requires should
be included. This let's users know where to add the requires so that
Rails is loaded and availble for them.
@cupakromer cupakromer Backport pull request #1136 and #1139 into 3-0-maintenance a41cd0c
Commits on Aug 21, 2014
@joker1007 joker1007 Fix controller route lookup for Rails 4.2
Rails-4.2 splits named_routes.helpers to path_helpers and url_helpers.
And add route_defined? method to NamedRouteCollection.
@cupakromer cupakromer Backport pull request #1142 from joker1007/adapt_named_route_helpers_…

Fix controller spec fails on edge Rails
Commits on Aug 25, 2014
@JonRowe JonRowe Merge pull request #1158 from seuros/patch-1
Update feature_generator_spec.rb
Commits on Aug 29, 2014
@cupakromer cupakromer Backport pull request #1145 from joshk/patch-1
This branch does not use the updated build scripts.
@cupakromer cupakromer Drop support for Rails `master`.
Current Rails `master` branch is targeting Rails 4.2+. There are several
changes necessary for supporting Rails 4.2. These will not be included
with rspec-rails 3.0.x.
Commits on Oct 14, 2014
@JonRowe JonRowe update gemspec limiting 4.2 on rspec 3.0 ec7af6b
Commits on Oct 17, 2014
@JonRowe JonRowe Merge pull request #1192 from rspec/limit_rails_versions
Update gemspec preventing 4.2 on rspec 3.0